def wc_eff(par, wc_obj, scale, nu): r"""Lee-Yang effective couplings. See eqS. (2), (9) of arXiv:1803.08732.""" # wilson coefficients wc = get_wceff_fccc_std(wc_obj, par, 'du', 'e', nu, None, scale, nf=3) # proton charges g = proton_charges(par, scale) gV = g['gV_u-d'] gA = g['gA_u-d'] gS = g['gS_u-d'] gP = g['gP_u-d'] gT = g['gT_u-d'] # radiative corrections # Note: CVLSM is the universal Marciano-Sirlin result that needs to be # divided out since it's already contained in the Deltas CVLSM = get_CVLSM(par, scale, nf=3) DeltaRV = par['DeltaRV'] DeltaRA = DeltaRV # not needed for superallowed, for neutron difference absorbed in lambda rV = sqrt(1 + DeltaRV) / CVLSM rA = sqrt(1 + DeltaRA) / CVLSM # effective couplings # note that C_i' = C_i C = {} C['V'] = gV * (wc['VL'] * rV + wc['VR']) C['A'] = -gA * (wc['VL'] * rA - wc['VR']) C['S'] = gS * (wc['SL'] + wc['SR']) C['P'] = gP * (wc['SL'] - wc['SR']) C['T'] = 4 * gT * (wc['T']) return C
def CS(wc, par, scale, Z, N): """Scalar electron-nucleon coupling.""" me = proton_charges(par, scale) CSu = -(wc['CSRR_eeuu'].imag + wc['CSRL_eeuu'].imag) CSd = -(wc['CSRR_eedd'].imag + wc['CSRL_eedd'].imag) CS0 = me['gS_u+d'] * (CSu + CSd) CS1 = me['gS_u-d'] * (CSu - CSd) return CS0 + (Z - N) / (Z + N) * CS1
def CR_mue(wc_obj, par, nucl): r"""Conversion rate independent of the target nucleus""" mm = par['m_mu'] scale = flavio.config['renormalization scale']['mudecays'] #####overlap integrals and other parameters##### pc = proton_charges(par, scale) GuSp = (pc['gS_u+d'] + pc['gS_u-d']) / 2 GdSp = (pc['gS_u+d'] - pc['gS_u-d']) / 2 GsSp = pc['gS_s'] GuSn = GdSp GdSn = GuSp GsSn = GsSp D = par['D ' + nucl] * mm**(5 / 2) Sp = par['Sp ' + nucl] * mm**(5 / 2) Vp = par['Vp ' + nucl] * mm**(5 / 2) Sn = par['Sn ' + nucl] * mm**(5 / 2) Vn = par['Vn ' + nucl] * mm**(5 / 2) omega_capt = par['GammaCapture ' + nucl] #####Wilson Coefficients###### #####Conversion Rate obtained from hep-ph/0203110##### flavio.citations.register("Kitano:2002mt") wc = wc_obj.get_wc('mue', scale, par, nf_out=3) prefac = -np.sqrt(2) / par['GF'] AL = prefac / (4 * mm) * wc['Cgamma_emu'] AR = prefac / (4 * mm) * wc['Cgamma_mue'].conjugate() gRV = { 'u': prefac * (wc['CVRR_mueuu'] + wc['CVLR_uumue']) / 2, 'd': prefac * (wc['CVRR_muedd'] + wc['CVLR_ddmue']) / 2, 's': prefac * (wc['CVRR_muess'] + wc['CVLR_ssmue']) / 2, } gLV = { 'u': prefac * (wc['CVLR_mueuu'] + wc['CVLL_mueuu']) / 2, 'd': prefac * (wc['CVLR_muedd'] + wc['CVLL_muedd']) / 2, 's': prefac * (wc['CVLR_muess'] + wc['CVLL_muess']) / 2, } gRS = { 'u': prefac * (wc['CSRR_emuuu'] + wc['CSRL_emuuu']).conjugate() / 2, 'd': prefac * (wc['CSRR_emudd'] + wc['CSRL_emudd']).conjugate() / 2, 's': prefac * (wc['CSRR_emuss'] + wc['CSRL_emuss']).conjugate() / 2, } gLS = { 'u': prefac * (wc['CSRR_mueuu'] + wc['CSRL_mueuu']) / 2, 'd': prefac * (wc['CSRR_muedd'] + wc['CSRL_muedd']) / 2, 's': prefac * (wc['CSRR_muess'] + wc['CSRL_muess']) / 2, } lhc = (AR.conjugate() * D + (2 * gLV['u'] + gLV['d']) * Vp + (gLV['u'] + 2 * gLV['d']) * Vn + (GuSp * gLS['u'] + GdSp * gLS['d'] + GsSp * gLS['s']) * Sp + (GuSn * gLS['u'] + GdSn * gLS['d'] + GsSn * gLS['s']) * Sn) rhc = (AL.conjugate() * D + (2 * gRV['u'] + gRV['d']) * Vp + (gRV['u'] + 2 * gRV['d']) * Vn + (GuSp * gRS['u'] + GdSp * gRS['d'] + GsSp * gRS['s']) * Sp + (GuSn * gRS['u'] + GdSn * gRS['d'] + GsSn * gRS['s']) * Sn) omega_conv = 2 * par['GF']**2 * (abs(lhc)**2 + abs(rhc)**2) return omega_conv / omega_capt
def CR_mue(wc_obj, par, nucl): r"""Conversion rate independent of the target nucleus""" mm = par['m_mu'] scale = flavio.config['renormalization scale']['mudecays'] #####overlap integrals and other parameters##### # GuV = par['GuV'] # GdV = par['GdV'] # GsV = par['GsV'] pc = proton_charges(par, scale) GuS = (pc['gS_u+d'] + pc['gS_u-d']) / 2 GdS = (pc['gS_u+d'] - pc['gS_u-d']) / 2 GsS = pc['gS_s'] D = par['D ' +nucl]*mm**(5/2) Sp = par['Sp '+nucl]*mm**(5/2) Vp = par['Vp '+nucl]*mm**(5/2) Sn = par['Sn '+nucl]*mm**(5/2) Vn = par['Vn '+nucl]*mm**(5/2) GC = par['GammaCapture '+nucl] #####Wilson Coefficients###### #####Conversion Rate obtained from hep-ph/0203110##### wc = wc_obj.get_wc('mue', scale, par, nf_out=3) AL = np.sqrt(2)/(4*par['GF']*mm)*wc['Cgamma_emu'].conjugate() AR = np.sqrt(2)/(4*par['GF']*mm)*wc['Cgamma_mue'] gRV = {'u': 4*(wc['CVRR_mueuu'] + wc['CVLR_mueuu']), 'd': 4*(wc['CVRR_muedd'] + wc['CVLR_muedd']), 's': 4*(wc['CVRR_muess'] + wc['CVLR_muess'])} gLV = {'u': 4*(wc['CVLR_uumue'] + wc['CVLL_mueuu']), 'd': 4*(wc['CVLR_ddmue'] + wc['CVLL_muedd']), 's': 4*(wc['CVLR_ssmue'] + wc['CVLL_muess'])} gRS = {'u': 4*(wc['CSRR_emuuu'].conjugate() + wc['CSRL_mueuu']), 'd': 4*(wc['CSRR_emudd'].conjugate() + wc['CSRL_muedd']), 's': 4*(wc['CSRR_emuss'].conjugate() + wc['CSRL_muess'])} gLS = {'u': 4*(wc['CSRL_emuuu'].conjugate() + wc['CSRR_mueuu']), 'd': 4*(wc['CSRL_emudd'].conjugate() + wc['CSRR_muedd']), 's': 4*(wc['CSRL_emuss'].conjugate() + wc['CSRR_muess'])} lhc = (AR.conjugate()*D + (2*gLV['u'] + gLV['d'])*Vp +(gLV['u'] + 2*gLV['d'])*Vn + (GuS* gLS['u'] + GdS*gLS['d'] + GsS*gLS['s'])*Sp + (GuS*gLS['u'] + GdS*gLS['d'] + GsS*gLS['s'])*Sn) rhc = (AL.conjugate()*D + (2*gRV['u'] + gRV['d'])*Vp +(gRV['u'] + 2*gRV['d'])*Vn + (GuS* gRS['u'] + GdS*gRS['d'] + GsS*gRS['s'])*Sp + (GuS*gRS['u'] + GdS*gRS['d'] + GsS*gRS['s'])*Sn) return 2*(par['GF']**2)*(abs(lhc)**2 + abs(rhc)**2)/GC