예제 #1
0
def GammaG2SGexact(n, M5, k):
    total = 0
    kR = k * Basic.R(M5, k)
    for a in range(1, n):
        for b in range(1, n):
            total += GammaG2SGInt(n, a, b, M5, k, kR)
    return total
예제 #2
0
def AT2(a, b, n, M5, k):
    return 1 / 5 * IMMC(
        a, b, n, M5, k)**2 / (M5 * math.pi * Basic.R(M5, k))**3 * (
            m4A2(a, b, n, M5, k) + m4A2(b, n, a, M5, k) + m4A2(n, a, b, M5, k))
예제 #3
0
def IMMC(a, b, n, M5, k):
    return (32 / Basic.R(M5, k)**3) * k * n * Basic.m(n, M5, k) * a * Basic.m(
        a, M5, k) * b * Basic.m(b, M5, k) / (mm(a + b - n, M5, k) * mm(
            a - b + n, M5, k) * mm(b + n - a, M5, k) * mm(a + b + n, M5, k))
예제 #4
0
def mm(z, M5, k):
    return k**2 + z**2 / Basic.R(M5, k)**2
예제 #5
0
def GammaG2SGapproxNLO(n, M5, k):
    return (1 + k / Basic.m(n, M5, k))**3 * (
        1 - 5 / 2 *
        (k / Basic.m(n, M5, k))**0.5) / (2**5 * math.pi**2) * k**2 * Basic.m(
            n, M5, k)**2 / (k * Basic.R(M5, k) * M5**3)
예제 #6
0
def GammaG2SGapprox(n, M5, k):
    return (1 -
            k / Basic.m(n, M5, k))**16 / (2**5 * math.pi**2) * k**2 * Basic.m(
                n, M5, k)**2 / (k * Basic.R(M5, k) * M5**3)
예제 #7
0
def GammaG2S0S0(n, M5, k):
    return GammaG2S0S0Int(n, M5, k, k * Basic.R(M5, k))
예제 #8
0
def GammaG2SSapprox(n, M5, k):
    return (1 - k / Basic.m(n, M5, k))**16 / (
        2**13 * math.pi**2) * (k * Basic.m(n, M5, k))**0.5 * k**2 * Basic.m(
            n, M5, k) / (k * Basic.R(M5, k) * M5**3)
예제 #9
0
def GammaG2GGapprox(n, M5, k):
    return (1 - k / Basic.m(n, M5, k))**9 * (5 * 7 * 17) / (
        3 * 2**14 * math.pi**2) * (k * Basic.m(n, M5, k))**0.5 * Basic.m(
            n, M5, k)**3 / (k * Basic.R(M5, k) * M5**3)