def _get_sm_left(self, scale, f, loop=3): C_in_SM = {} parameters = default_parameters.copy() m_d = qcd.m_s(parameters['m_d'], scale, f, parameters['alpha_s'], loop=loop) m_s = qcd.m_s(parameters['m_s'], scale, f, parameters['alpha_s'], loop=loop) m_b = qcd.m_b(parameters['m_b'], scale, f, parameters['alpha_s'], loop=loop) m_u = qcd.m_s(parameters['m_u'], scale, f, parameters['alpha_s'], loop=loop) m_c = qcd.m_c(parameters['m_c'], scale, f, parameters['alpha_s'], loop=loop) # running ignored for alpha_e and lepton mass m_e = parameters['m_e'] m_mu = parameters['m_mu'] m_tau = parameters['m_tau'] C_in_SM['gs'] = sqrt( 4 * pi * qcd.alpha_s(scale, f, parameters['alpha_s'], loop=loop)) C_in_SM['e'] = sqrt(4 * pi * parameters['alpha_e']) C_in_SM['Me'] = np.array([[m_e, 0, 0], [0, m_mu, 0], [0, 0, m_tau]]) C_in_SM['Md'] = np.array([[m_d, 0, 0], [0, m_s, 0], [0, 0, m_b]]) C_in_SM['Mu'] = np.array([[m_u, 0], [0, m_c]]) C_in_SM['Mnu'] = np.array([[0, 0, 0], [0, 0, 0], [0, 0, 0]]) # update? return C_in_SM
def test_m_c(self): self.assertAlmostEqual(m_c(1.2, 50, 5), 0.612466, delta=deltam) self.assertAlmostEqual(m_c(1.2, 2, 4), 1.00652, delta=deltam) self.assertAlmostEqual(m_c(1.2, 1, 3), 1.32125, delta=deltam) self.assertAlmostEqual(m_c(1.279, 50, 5, alphasMZ=0.1181, loop=5), 0.66840, delta=deltam) self.assertAlmostEqual(m_c(1.279, 2, 4, alphasMZ=0.1181, loop=5), 1.09811, delta=deltam) self.assertAlmostEqual(m_c(1.279, 1, 3, alphasMZ=0.1181, loop=5), 1.45654, delta=deltam)
def _get_running_parameters(self, scale, f, loop=3): """Get the running parameters (e.g. quark masses and the strong coupling at a given scale.""" p = {} p['alpha_s'] = qcd.alpha_s(scale, self.f, self.parameters['alpha_s'], loop=loop) p['m_b'] = qcd.m_b(self.parameters['m_b'], scale, self.f, self.parameters['alpha_s'], loop=loop) p['m_c'] = qcd.m_c(self.parameters['m_c'], scale, self.f, self.parameters['alpha_s'], loop=loop) p['m_s'] = qcd.m_s(self.parameters['m_s'], scale, self.f, self.parameters['alpha_s'], loop=loop) p['m_u'] = qcd.m_s(self.parameters['m_u'], scale, self.f, self.parameters['alpha_s'], loop=loop) p['m_d'] = qcd.m_s(self.parameters['m_d'], scale, self.f, self.parameters['alpha_s'], loop=loop) # running ignored for alpha_e and lepton mass p['alpha_e'] = self.parameters['alpha_e'] p['m_e'] = self.parameters['m_e'] p['m_mu'] = self.parameters['m_mu'] p['m_tau'] = self.parameters['m_tau'] return p
def test_m_c(self): self.assertAlmostEqual(m_c(1.2, 50, 5), 0.612466, delta=deltam) self.assertAlmostEqual(m_c(1.2, 2, 4), 1.00652, delta=deltam) self.assertAlmostEqual(m_c(1.2, 1, 3), 1.32125, delta=deltam)
def get_mc(par, scale, nf_out=None): r"""Get the running $c$ quark mass at the specified scale.""" nf = nf_out or get_nf(scale) return qcd.m_c(mcmc=par['m_c'], scale=scale, f=nf, alphasMZ=par['alpha_s'])