def omega(w, z): if w == 1: return -1 + (z + 1) / (z - 1) * log(z) return (1 + (w * (2 * li2(1 - z * omega_minus(w)) - li2(1 - omega_minus(w)**2) - 2 * li2(1 - z * omega_plus(w)) + li2(1 - omega_plus(w)**2)) ) / (2. * sqrt(-1 + w**2)) - w * log(z) * r(w))
def SeidelB(q2, mb, mu): """Function $A(s\equiv q^2)$ defined in eq. (30) of hep-ph/0403185v2. """ sh = q2/mb**2 z = (4 * mb**2)/q2 x1 = 1/2 + 1j/2 * sqrt(z - 1) x2 = 1/2 - 1j/2 * sqrt(z - 1) x3 = 1/2 + 1j/(2 * sqrt(z - 1)) x4 = 1/2 - 1j/(2 * sqrt(z - 1)) return ((8)/(243 * sh) * ((4 - 34 * sh - 17 * pi * 1j * sh) * log((mb**2)/(mu**2)) + 8 * sh * log((mb**2)/(mu**2))**2 + 17 * sh * log(sh) * log((mb**2)/(mu**2))) + ((2 + sh) * sqrt( z - 1))/(729 * sh) * (-48 * log((mb**2)/(mu**2)) * acot( sqrt(z - 1)) - 18 * pi * log(z - 1) + 3 * 1j * log(z - 1)**2 - 24 * 1j * li2(-x2/x1) - 5 * pi**2 * 1j + 6 * 1j * (-9 * log(x1)**2 + log(x2)**2 - 2 * log(x4)**2 + 6 * log(x1) * log(x2) - 4 * log(x1) * log(x3) + 8 * log(x1) * log(x4)) - 12 * pi * (2 * log(x1) + log(x3) + log(x4))) - (2)/(243 * sh * (1 - sh)) * (4 * sh * (-8 + 17 * sh) * (li2(sh) + log(sh) * log(1 - sh)) + 3 * (2 + sh) * (3 - sh) * log(x2/x1)**2 + 12 * pi * (-6 - sh + sh**2) * acot( sqrt(z - 1))) + (2)/(2187 * sh * (1 - sh)**2) * (-18 * sh * (120 - 211 * sh + 73 * sh**2) * log(sh) - 288 - 8 * sh + 934 * sh**2 - 692 * sh**3 + 18 * pi * 1j * sh * (82 - 173 * sh + 73 * sh**2)) - (4)/(243 * sh * (1 - sh)**3) * (-2 * sqrt( z - 1) * (4 - 3 * sh - 18 * sh**2 + 16 * sh**3 - 5 * sh**4) * acot( sqrt(z - 1)) - 9 * sh**3 * log(sh)**2 + 2 * pi * 1j * sh * (8 - 33 * sh + 51 * sh**2 - 17 * sh**3) * log( sh)) + (2)/(729 * sh * (1 - sh)**4) * (72 * (3 - 8 * sh + 2 * sh**2) * acot( sqrt(z - 1))**2 - pi**2 * (54 - 53 * sh - 286 * sh**2 + 612 * sh**3 - 446 * sh**4 + 113 * sh**5)) )
def f9(s): return -1 / (6 * (s - 1)**2) * ( 48 * s * (-5 + 2 * s) * li2(sqrt(s)) + 24 * (-1 + 7 * s - 3 * s**2) * li2(s) + 6 * s * (-6 + 7 * s) * log(s) - 24 * (1 - s)**2 * log(s) * log(1 - s) + 24 * (5 - 7 * s + 2 * s**2) * (log(1 - sqrt(s)) - log(1 - s)) - 21 - 156 * s + 20 * pi**2 * s + 9 * s**2 - 8 * pi**2 * s**2 + 120 * sqrt(s) + 48 * s * sqrt(s))
def f7(s): return 1 / (6 * (s - 1)**2) * ( 24 * (1 + 13 * s - 4 * s**2) * li2(sqrt(s)) + 12 * (1 - 17 * s + 6 * s**2) * li2(s) + 6 * s * (6 - 7 * s) * log(s) + 24 * (1 - s)**2 * log(s) * log(1 - s) + 12 * (-13 + 16 * s - 3 * s**2) * (log(1 - sqrt(s)) - log(1 - s)) + 39 - 2 * pi**2 + 252 * s - 26 * pi**2 * s + 21 * s**2 + 8 * pi**2 * s**2 - 180 * sqrt(s) - 132 * s * sqrt(s))
def omega(w, z): if w == 1: return -1 + (z + 1) / (z - 1) * log(z) return (1 + (w * (2 * li2(1 - z * omega_minus(w)) - li2(1 - omega_minus(w)**2) - 2 * li2(1 - z * omega_plus(w)) + li2(1 - omega_plus(w)**2))) / (2. * sqrt(-1 + w**2)) - w * log(z) * r(w))
def L1(x): flavio.citations.register("Beneke:2001at") if x == 0.: return -(pi**2 / 6.) elif x == 1.: return 0 return log((x - 1) / x) * log(1 - x) - pi**2 / 6. + li2(x / (x - 1))
def SeidelA(q2, mb, mu): """Function $A(s\equiv q^2)$ defined in eq. (29) of hep-ph/0403185v2. """ if q2==0: return 1/729. * (833 + 120j*pi - 312 * log(mb**2/mu**2)) sh = q2/mb**2 z = (4 * mb**2)/q2 return (-(104)/(243) * log((mb**2)/(mu**2)) + (4 * sh)/(27 * (1 - sh)) * (li2(sh) + log(sh) * log( 1 - sh)) + (1)/(729 * (1 - sh)**2) * (6 * sh * (29 - 47 * sh) * log(sh) + 785 - 1600 * sh + 833 * sh**2 + 6 * pi * 1j * (20 - 49 * sh + 47 * sh**2)) - (2)/(243 * (1 - sh)**3) * (2 * sqrt( z - 1) * (-4 + 9 * sh - 15 * sh**2 + 4 * sh**3) * acot(sqrt(z - 1)) + 9 * sh**3 * log(sh)**2 + 18 * pi * 1j * sh * (1 - 2 * sh) * log(sh)) + (2 * sh)/(243 * (1 - sh)**4) * (36 * acot( sqrt(z - 1))**2 + pi**2 * (-4 + 9 * sh - 9 * sh**2 + 3 * sh**3)))
def wem_99_low(sh, mb, ml, scale, mc): return (-0.5 + (log(mb**2 / ml**2) * (-1 - 3 * sh + 12 * sh**2 - 8 * sh**3 + 6 * (-1 + sh)**2 * (1 + 2 * sh) * log(1 - sh) - 3 * (1 - 6 * sh**2 + 4 * sh**3) * log(sh))) / (6. * (-1 + sh)**2 * (1 + 2 * sh)) + (-1 + 2 * pi**2 + 6 * sh - 15 * sh**2 - 6 * pi**2 * sh**2 + 10 * sh**3 + 4 * pi**2 * sh**3 + 12 * (-1 + sh)**2 * (1 + 2 * sh) * log(1 - sh) * (-1 + log(sh)) + 4 * log(sh) - 6 * sh * log(sh) - 12 * sh**2 * log(sh) + 8 * sh**3 * log(sh) - 6 * log(sh)**2 + 36 * sh**2 * log(sh)**2 - 24 * sh**3 * log(sh)**2) / (12. * (-1 + sh)**2 * (1 + 2 * sh)) + (15 - 4 * pi**2 + 12 * sh - 45 * sh**2 + 12 * pi**2 * sh**2 + 18 * sh**3 - 8 * pi**2 * sh**3 - 12 * sh * log(sh) + 12 * sh**2 * log(sh) + 24 * sh**3 * log(sh) - 6 * (-1 + sh)**2 * log(1 - sh) * (5 + 4 * sh + (2 + 4 * sh) * log(sh)) - 24 * (-1 + sh)**2 * (1 + 2 * sh) * li2(sh)) / (216. * (-1 + sh)**2 * (1 + 2 * sh)))
def L1(x): if x == 0.: return -(pi**2 / 6.) elif x == 1.: return 0 return log((x - 1) / x) * log(1 - x) - pi**2 / 6. + li2(x / (x - 1))
def sigma(s): return - 4/3 * li2(s) - 2/3 * log(s) * log(1-s) -2/9 * pi**2 -log(1-s)-2/9 * (1-s) * log(1-s)
def wem_99_low(sh, mb, ml, scale, mc): return (-0.5 + (log(mb**2/ml**2)*(-1 - 3*sh + 12*sh**2 - 8*sh**3 + 6*(-1 + sh)**2*(1 + 2*sh)*log(1 - sh) - 3*(1 - 6*sh**2 + 4*sh**3)*log(sh)))/(6.*(-1 + sh)**2*(1 + 2*sh)) + (-1 + 2*pi**2 + 6*sh - 15*sh**2 - 6*pi**2*sh**2 + 10*sh**3 + 4*pi**2*sh**3 + 12*(-1 + sh)**2*(1 + 2*sh)*log(1 - sh)*(-1 + log(sh)) + 4*log(sh) - 6*sh*log(sh) - 12*sh**2*log(sh) + 8*sh**3*log(sh) - 6*log(sh)**2 + 36*sh**2*log(sh)**2 - 24*sh**3*log(sh)**2)/(12.*(-1 + sh)**2*(1 + 2*sh)) + (15 - 4*pi**2 + 12*sh - 45*sh**2 + 12*pi**2*sh**2 + 18*sh**3 - 8*pi**2*sh**3 - 12*sh*log(sh) + 12*sh**2*log(sh) + 24*sh**3*log(sh) - 6*(-1 + sh)**2*log(1 - sh)*(5 + 4*sh + (2 + 4*sh)*log(sh)) - 24*(-1 + sh)**2*(1 + 2*sh)*li2(sh))/(216.*(-1 + sh)**2*(1 + 2*sh)))
def F(z): return ( 3/2.*log(z) + (13-19*z)/(8*(1-z)) - (8-5*z)/(4*(1-z)**2)*z*log(z) - ((1+z)/(1-z)*log(z)+2)*log(1-z) -2*(1+z)/(1-z)*li2(1-z) )
def f9(s): return -1/(6 * (s-1)**2 ) * ( 48 * s * (-5+ 2*s) * li2( sqrt(s)) + 24 * (-1+7*s-3*s**2) * li2(s) + 6*s * (-6+7*s) * log(s) -24 * (1-s)**2 * log(s) * log(1-s) +24 * (5-7*s+2*s**2) * (log(1- sqrt(s))-log(1-s)) -21-156*s+20*pi**2*s +9*s**2-8*pi**2*s**2+120 * sqrt(s)+48*s * sqrt(s) )
def sigma(s): return -4 / 3 * li2(s) - 2 / 3 * log(s) * log(1 - s) - 2 / 9 * pi**2 - log( 1 - s) - 2 / 9 * (1 - s) * log(1 - s)
def L1(x): if x == 0.: return -(pi**2/6.) elif x == 1.: return 0 return log((x - 1)/x) * log(1 - x) - pi**2/6. + li2(x/(x - 1))
def F(z): return (3 / 2. * log(z) + (13 - 19 * z) / (8 * (1 - z)) - (8 - 5 * z) / (4 * (1 - z)**2) * z * log(z) - ((1 + z) / (1 - z) * log(z) + 2) * log(1 - z) - 2 * (1 + z) / (1 - z) * li2(1 - z))
def f7(s): return 1/(6 * (s-1)**2 ) * ( 24 * (1+13*s -4*s**2) * li2( sqrt(s)) + 12 * (1-17*s+6*s**2) * li2(s) +6*s * (6-7*s) * log(s) +24 * (1-s)**2*log(s) * log(1-s) + 12 * (-13+16*s-3*s**2) * (log(1- sqrt(s))-log(1-s)) +39 -2*pi**2 +252*s -26*pi**2*s +21*s**2+8*pi**2*s**2 -180 * sqrt(s) -132*s * sqrt(s) )