Skip to content
This repository was archived by the owner on Apr 12, 2018. It is now read-only.

Commit 3587956

Browse files
committed
Temporarily switch off QED evolution when running up
1 parent 1058ba8 commit 3587956

2 files changed

Lines changed: 28 additions & 6 deletions

File tree

wetrunner/classes.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -75,22 +75,24 @@ def run(self, scale_out, sectors='all'):
7575
7676
Returns an instance of `wcxf.WC`.
7777
"""
78-
pi = self._get_running_parameters(self.scale_in, self.f)
79-
po = self._get_running_parameters(scale_out, self.f)
78+
p_i = self._get_running_parameters(self.scale_in, self.f)
79+
p_o = self._get_running_parameters(scale_out, self.f)
8080
betas = self._betas(self.f)
81-
Etas = (pi['alpha_s'] / po['alpha_s'])
81+
Etas = (p_i['alpha_s'] / p_o['alpha_s'])
8282
if self.f != 5: # for WET-4 and WET-3
8383
# to account for the fact that beta0 is hardcoded for f=5 in the
8484
# evolution matrices
8585
Etas = Etas**(self._betas(5) / self._betas(self.f))
86-
pi['alpha_e'] = 0 # because QED evolution is not consistent yet
86+
p_i['alpha_e'] = 0 # because QED evolution is not consistent yet
87+
if scale_out > self.scale_in:
88+
p_i['alpha_e'] = 0 # because QED evolution is not consistent yet
8789
C_out = OrderedDict()
8890
for sector in wcxf.EFT[self.eft].sectors:
8991
if sector in definitions.sectors:
9092
if sectors == 'all' or sector in sectors:
9193
C_out.update(rge.run_sector(sector, self.C_in,
92-
Etas, pi['alpha_s'], pi['alpha_e'],
93-
pi['m_b'], pi['m_c'], pi['m_tau'],
94+
Etas, p_i['alpha_s'], p_i['alpha_e'],
95+
p_i['m_b'], p_i['m_c'], p_i['m_tau'],
9496
betas))
9597
C_out = {k: v for k, v in C_out.items() if v != 0}
9698
return wcxf.WC(eft=self.eft, basis='Bern',

wetrunner/test_wetrunner.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import unittest
22
import wetrunner
3+
from wetrunner import evmat
34
import wcxf
45
import numpy as np
6+
import numpy.testing as npt
57

68
np.random.seed(112)
79

@@ -65,6 +67,24 @@ def test_run(self):
6567
msg='{} missing in output'.format(k))
6668

6769

70+
class TestEvolutionMatrices(unittest.TestCase):
71+
def test_inverse_s(self):
72+
# check inverse of QCD evolution matrices
73+
args = (0.12, 1/128, 4.2, 1.2, 1.77, 23/3)
74+
npt.assert_array_almost_equal(evmat.UsI(0.123, *args),
75+
np.linalg.inv(evmat.UsI(1/0.123, *args)))
76+
npt.assert_array_almost_equal(evmat.UsII(0.123, *args),
77+
np.linalg.inv(evmat.UsII(1/0.123, *args)))
78+
npt.assert_array_almost_equal(evmat.UsIII(0.123, *args),
79+
np.linalg.inv(evmat.UsIII(1/0.123, *args)))
80+
npt.assert_array_almost_equal(evmat.UsIV(0.123, *args),
81+
np.linalg.inv(evmat.UsIV(1/0.123, *args)))
82+
npt.assert_array_almost_equal(evmat.UsV(0.123, *args),
83+
np.linalg.inv(evmat.UsV(1/0.123, *args)))
84+
npt.assert_array_almost_equal(evmat.UsVb(0.123, *args),
85+
np.linalg.inv(evmat.UsVb(1/0.123, *args)))
86+
87+
6888
class TestClassWET4(unittest.TestCase):
6989

7090
@classmethod

0 commit comments

Comments
 (0)