def get_subleading(q2, wc_obj, par_dict, B, P, lep, cp_conjugate): if q2 <= 9: sub_name = B+'->'+P + 'll subleading effects at low q2' return AuxiliaryQuantity.get_instance(sub_name).prediction(par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) elif q2 > 14: sub_name = B+'->'+P + 'll subleading effects at high q2' return AuxiliaryQuantity.get_instance(sub_name).prediction(par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) else: return {}
def get_subleading(q2, wc_obj, par_dict, B, V, cp_conjugate): if q2 <= 9: sub_name = B + '->' + V + 'll subleading effects at low q2' return AuxiliaryQuantity.get_instance(sub_name).prediction( par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) elif q2 > 14: sub_name = B + '->' + V + 'll subleading effects at high q2' return AuxiliaryQuantity.get_instance(sub_name).prediction( par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) else: return {}
def get_subleading_high(q2, wc_obj, par_dict, B, V, cp_conjugate): if q2 < 14: return { ('0', 'V'): 0, ('pl', 'V'): 0, ('mi', 'V'): 0, } sub_name = B + '->' + V + 'll subleading effects at high q2' return AuxiliaryQuantity.get_instance(sub_name).prediction( par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate)
def amps_subleading(wc_obj, par, B, V, cp_conjugate): scale = config['renormalization scale']['bvgamma'] sub_name = B+'->'+V+ 'll subleading effects at low q2' q2=0.001 # away from zero to avoid pole amps = AuxiliaryQuantity.get_instance(sub_name).prediction(par_dict=par, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) N = prefactor_helicityamps(q2, par, B, V) a = {} a['L'] = -N * amps[('mi' ,'V')] a['R'] = +N * amps[('pl' ,'V')] return a
def get_ss(q2, wc_obj, par_dict, B, V, cp_conjugate): # this only needs to be done for low q2 - which doesn't exist for taus! if q2 >= 8.9: return { ('0', 'V'): 0, ('pl', 'V'): 0, ('mi', 'V'): 0, } ss_name = B + '->' + V + 'll spectator scattering' return AuxiliaryQuantity.get_instance(ss_name).prediction( par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate)
def amps_subleading(wc_obj, par, B, V, cp_conjugate): scale = config['renormalization scale']['bvgamma'] sub_name = B + '->' + V + 'll subleading effects at low q2' q2 = 0.001 # away from zero to avoid pole amps = AuxiliaryQuantity.get_instance(sub_name).prediction( par_dict=par, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate) N = prefactor_helicityamps(q2, par, B, V) a = {} a['L'] = -N * amps[('mi', 'V')] a['R'] = +N * amps[('pl', 'V')] return a
def amps_subleading(wc_obj, par, B, V, cp_conjugate): scale = config["renormalization scale"]["bvgamma"] sub_name = B + "->" + V + "ll subleading effects at low q2" q2 = 0.001 # away from zero to avoid pole amps = AuxiliaryQuantity.get_instance(sub_name).prediction( par_dict=par, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate ) N = prefactor_helicityamps(q2, par, B, V) a = {} a["L"] = -N * amps[("mi", "V")] a["R"] = +N * amps[("pl", "V")] return a
def amps_ff(wc_obj, par_dict, B, V, cp_conjugate): par = par_dict.copy() if cp_conjugate: par = conjugate_par(par) N = prefactor(par, B, V) bq = meson_quark[(B, V)] ff_name = meson_ff[(B, V)] + " form factor" ff = AuxiliaryQuantity.get_instance(ff_name).prediction(par_dict=par, wc_obj=None, q2=0.0) scale = config["renormalization scale"]["bvgamma"] # these are the b->qee Wilson coefficients - they contain the b->qgamma ones as a subset wc = wctot_dict(wc_obj, bq + "ee", scale, par) if cp_conjugate: wc = conjugate_wc(wc) delta_C7 = flavio.physics.bdecays.matrixelements.delta_C7(par=par, wc=wc, q2=0, scale=scale, qiqj=bq) a = {} a["L"] = N * (wc["C7eff_" + bq] + delta_C7) * ff["T1"] a["R"] = N * wc["C7effp_" + bq] * ff["T1"] return a
def amps_ff(wc_obj, par_dict, B, V, cp_conjugate): par = par_dict.copy() if cp_conjugate: par = conjugate_par(par) N = prefactor(par, B, V) bq = meson_quark[(B,V)] ff_name = meson_ff[(B,V)] + ' form factor' ff = AuxiliaryQuantity.get_instance(ff_name).prediction(par_dict=par, wc_obj=None, q2=0.) scale = config['renormalization scale']['bvgamma'] # these are the b->qee Wilson coefficients - they contain the b->qgamma ones as a subset wc = wctot_dict(wc_obj, bq+'ee', scale, par) if cp_conjugate: wc = conjugate_wc(wc) delta_C7 = flavio.physics.bdecays.matrixelements.delta_C7(par=par, wc=wc, q2=0, scale=scale, qiqj=bq) a = {} a['L'] = N * (wc['C7eff_'+bq] + delta_C7) * ff['T1'] a['R'] = N * wc['C7effp_'+bq] * ff['T1'] return a
def amps_ff(wc_obj, par_dict, B, V, cp_conjugate): par = par_dict.copy() if cp_conjugate: par = conjugate_par(par) N = prefactor(par, B, V) bq = meson_quark[(B, V)] ff_name = meson_ff[(B, V)] + ' form factor' ff = AuxiliaryQuantity.get_instance(ff_name).prediction(par_dict=par, wc_obj=None, q2=0.) scale = config['renormalization scale']['bvgamma'] # these are the b->qee Wilson coefficients - they contain the b->qgamma ones as a subset wc = wctot_dict(wc_obj, bq + 'ee', scale, par) if cp_conjugate: wc = conjugate_wc(wc) delta_C7 = flavio.physics.bdecays.matrixelements.delta_C7(par=par, wc=wc, q2=0, scale=scale, qiqj=bq) a = {} a['L'] = N * (wc['C7eff_' + bq] + delta_C7) * ff['T1'] a['R'] = N * wc['C7effp_' + bq] * ff['T1'] return a
def get_ff(q2, par, B, V): ff_name = meson_ff[(B, V)] + ' form factor' return AuxiliaryQuantity.get_instance(ff_name).prediction(par_dict=par, wc_obj=None, q2=q2)
def get_ff(q2, par, B, P): ff_name = meson_ff[(B,P)] + ' form factor' return AuxiliaryQuantity.get_instance(ff_name).prediction(par_dict=par, wc_obj=None, q2=q2)
def get_ckm(par_dict): return AuxiliaryQuantity.get_instance('CKM matrix').prediction(par_dict=par_dict, wc_obj=None)
def get_subleading_high(q2, wc_obj, par_dict, B, V, cp_conjugate): if q2 < 14: return {('0' ,'V'): 0, ('pl' ,'V'): 0, ('mi' ,'V'): 0, } sub_name = B+'->'+V + 'll subleading effects at high q2' return AuxiliaryQuantity.get_instance(sub_name).prediction(par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate)
def get_ss(q2, wc_obj, par_dict, B, V, cp_conjugate): # this only needs to be done for low q2 - which doesn't exist for taus! if q2 >= 8.9: return {('0' ,'V'): 0, ('pl' ,'V'): 0, ('mi' ,'V'): 0, } ss_name = B+'->'+V+'ll spectator scattering' return AuxiliaryQuantity.get_instance(ss_name).prediction(par_dict=par_dict, wc_obj=wc_obj, q2=q2, cp_conjugate=cp_conjugate)
def get_ff(q2, par): ff_aux = AuxiliaryQuantity.get_instance('Lambdab->Lambda form factor') return ff_aux.prediction(par_dict=par, wc_obj=None, q2=q2)