Module flavio.physics.edms.paraedm
Functions for EDMs of paramagnetic atoms and molecules.
Functions
def d_para(wc_obj, par, atom)-
Expand source code
def d_para(wc_obj, par, atom): wc = wc_obj.get_wc('dF=0', scale=2, par=par, eft='WET-3', basis='flavio') a_de = par['alpha_de({})'.format(atom)] a_CS = par['alpha_CS({})'.format(atom)] Z = atoms[atom]['Z'] N = atoms[atom]['N'] return a_de * de(wc, par, scale=2) + a_CS * CS(wc, par, scale=2, Z=Z, N=N) def de(wc, par, scale)-
Expand source code
def de(wc, par, scale): return edm_f(f='e', par=par, wc=wc, scale=scale, eft='WET-3') def make_obs_d(symbol, texsymbol, name)-
Expand source code
def make_obs_d(symbol, texsymbol, name): _obs_name = "d_{}".format(symbol) _obs = flavio.classes.Observable(name=_obs_name) _obs.set_description(r"Electric dipole moment of {}".format(name)) _obs.tex = r"$d_{}$".format(texsymbol) _obs.add_taxonomy(r'Process :: Dipole moments :: Atomic electric dipole moments :: $d_{}$'.format(texsymbol)) flavio.classes.Prediction(_obs_name, lambda wc_obj, par: d_para(wc_obj, par, symbol)) def make_obs_omega(symbol, texsymbol, name)-
Expand source code
def make_obs_omega(symbol, texsymbol, name): _obs_name = "omega_{}".format(symbol) _obs = flavio.classes.Observable(name=_obs_name) _obs.set_description(r"P- and T-violating energy shift in {}".format(name)) _obs.tex = r"$\omega_{}$".format(texsymbol) _obs.add_taxonomy(r'Process :: Dipole moments :: Molecular energy shifts :: $d_{}$'.format(texsymbol)) flavio.classes.Prediction(_obs_name, lambda wc_obj, par: omega_para(wc_obj, par, symbol)) def omega_para(wc_obj, par, molecule)-
Expand source code
def omega_para(wc_obj, par, molecule): wc = wc_obj.get_wc('dF=0', scale=2, par=par, eft='WET-3', basis='flavio') a_de = par['alpha_de({})'.format(molecule)] a_CS = par['alpha_CS({})'.format(molecule)] Z = molecules[molecule]['Z'] N = molecules[molecule]['N'] return a_de * de(wc, par, scale=2) + a_CS * CS(wc, par, scale=2, Z=Z, N=N)