Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def prefactor(q2, par, B, V, l1, l2):
GF = par['GF']
ml1 = par['m_'+l1]
ml2 = par['m_'+l2]
scale = flavio.config['renormalization scale']['bvll']
alphaem = flavio.physics.running.running.get_alpha(par, scale)['alpha_e']
di_dj = flavio.physics.bdecays.common.meson_quark[(B,V)]
xi_t = flavio.physics.ckm.xi('t',di_dj)(par)
if q2 <= (ml1+ml2)**2:
return 0
return 4*GF/sqrt(2)*xi_t*alphaem/(4*pi)
def get_input(par, B, V, scale):
mB = par['m_'+B]
mb = running.get_mb_pole(par)
mc = running.get_mc_pole(par)
alpha_s = running.get_alpha(par, scale)['alpha_s']
q = meson_spectator[(B,V)] # spectator quark flavour
qiqj = meson_quark[(B,V)]
eq = quark_charge[q] # charge of the spectator quark
ed = -1/3.
eu = 2/3.
xi_t = ckm.xi('t', qiqj)(par)
xi_u = ckm.xi('u', qiqj)(par)
eps_u = xi_u/xi_t
return mB, mb, mc, alpha_s, q, eq, ed, eu, eps_u, qiqj
def get_wceff(q2, wc_obj, par, B, V, lep):
scale = config['bdecays']['scale_bvll']
wc = wctot_dict(wc_obj, meson_quark[(B,V)]+lep+lep, scale, par)
xi_u = ckm.xi('u',meson_quark[(B,V)])(par)
xi_t = ckm.xi('t',meson_quark[(B,V)])(par)
qiqj=meson_quark[(B,V)]
Yq2 = matrixelements.Y(q2, wc, par, scale, qiqj) + (xi_u/xi_t)*matrixelements.Yu(q2, wc, par, scale, qiqj)
# b) NNLO Q1,2
delta_C7 = matrixelements.delta_C7(par=par, wc=wc, q2=q2, scale=scale, qiqj=qiqj)
delta_C9 = matrixelements.delta_C9(par=par, wc=wc, q2=q2, scale=scale, qiqj=qiqj)
mb = running.get_mb(par, scale)
ll = lep + lep
c = {}
c['7'] = wc['C7eff_'+qiqj] + delta_C7
c['7p'] = wc['C7effp_'+qiqj]
c['v'] = wc['C9_'+qiqj+ll] + delta_C9 + Yq2
c['vp'] = wc['C9p_'+qiqj+ll]
c['a'] = wc['C10_'+qiqj+ll]
c['ap'] = wc['C10p_'+qiqj+ll]
c['s'] = 1/2 * mb * wc['CS_'+qiqj+ll]
c['sp'] = 1/2 * mb * wc['CSp_'+qiqj+ll]
def inclusive_wc(q2, wc_obj, par, q, lep, mb):
r"""Returns a dictionary of "inclusive" Wilson coefficients (including
SM contributions) where universal bremsstrahlung and virtual corrections
have been absorbed, as well as the dictionary with the Wilson
coefficients without these corrections."""
scale = flavio.config['renormalization scale']['bxll']
alphas = flavio.physics.running.running.get_alpha(par, scale)['alpha_s']
# the "usual" WCs
wc = flavio.physics.bdecays.wilsoncoefficients.wctot_dict(wc_obj, 'b' + q + lep + lep, scale, par, nf_out=5)
xi_u = flavio.physics.ckm.xi('u','b'+q)(par)
xi_t = flavio.physics.ckm.xi('t','b'+q)(par)
# virtual corrections
Yq2 =flavio.physics.bdecays. matrixelements.Y(q2, wc, par, scale, 'b'+q) + (xi_u/xi_t)*flavio.physics.bdecays.matrixelements.Yu(q2, wc, par, scale, 'b'+q)
delta_C7 = flavio.physics.bdecays.matrixelements.delta_C7(par=par, wc=wc, q2=q2, scale=scale, qiqj='b'+q)
delta_C9 = flavio.physics.bdecays.matrixelements.delta_C9(par=par, wc=wc, q2=q2, scale=scale, qiqj='b'+q)
mb_MSbar = flavio.physics.running.running.get_mb(par, scale)
ll = lep + lep
wc_eff = {}
# add the universal bremsstrahlung corrections to the effective WCs
brems_7 = 1 + alphas/pi * sigma7(q2/mb**2, scale, mb)
brems_9 = 1 + alphas/pi * sigma9(q2/mb**2)
wc_eff['7'] = wc['C7eff_b'+q] * brems_7 + delta_C7
wc_eff['7p'] = wc['C7effp_b'+q] * brems_7
wc_eff['v'] = wc['C9_b'+q+ll] * brems_9 + delta_C9 + Yq2
wc_eff['vp'] = wc['C9p_b'+q+ll] * brems_9
wc_eff['a'] = wc['C10_b'+q+ll] * brems_9
wc_eff['ap'] = wc['C10p_b'+q+ll]* brems_9
def prefactor(q2, par, B, V):
GF = par['GF']
scale = config['renormalization scale']['bvll']
alphaem = running.get_alpha(par, scale)['alpha_e']
di_dj = meson_quark[(B,V)]
xi_t = ckm.xi('t',di_dj)(par)
return 4*GF/sqrt(2)*xi_t*alphaem/(4*pi)
def prefactor_new(q2, par, B, V, lep):
GF = par['Gmu']
scale = config['bdecays']['scale_bvll']
alphaem = running.get_alpha(par, scale)['alpha_e']
ml = par[('mass',lep)]
mB = par[('mass',B)]
mV = par[('mass',V)]
tauB = par[('lifetime',B)]
laB= lambda_K(mB**2, mV**2, q2)
laGa = lambda_K(q2, ml**2, ml**2)
di_dj = meson_quark[(B,V)]
xi_t = ckm.xi('t',di_dj)(par)
if q2 <= 4*ml**2:
return 0
return ( sqrt(
sqrt(laB)*sqrt(laGa)/(2**9 * pi**3 * mB**3 * q2)
) * 4*GF/sqrt(2)*xi_t*alphaem/(4*pi) )