Skip to content

Commit

Permalink
Shift intrinsic asy convolution point
Browse files Browse the repository at this point in the history
  • Loading branch information
felixhekhorn committed Aug 9, 2023
1 parent 67be9ad commit 51743fc
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 4 deletions.
8 changes: 5 additions & 3 deletions src/yadism/coefficient_functions/asy/kernels.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ def generate_intrinsic_asy(esf, nf, pto_evol, ihq):
cfs = import_pc_module(kind, esf.process)
m2hq = esf.info.m2hq[ihq - 4]
if esf.process == "CC":
m1sq, m2sq = 0.0, m2hq
w = kernels.cc_weights(
esf.info.coupling_constants,
esf.Q2,
Expand All @@ -156,6 +157,7 @@ def generate_intrinsic_asy(esf, nf, pto_evol, ihq):
)
weights = {k: v for k, v in w["ns"].items() if abs(k) == ihq}
else: # NC
m1sq, m2sq = m2hq, m2hq
if is_pv:
wVA = esf.info.coupling_constants.get_weight(ihq, esf.Q2, "VA")
wAV = esf.info.coupling_constants.get_weight(ihq, esf.Q2, "AV")
Expand All @@ -172,19 +174,19 @@ def generate_intrinsic_asy(esf, nf, pto_evol, ihq):
asys = [
kernels.Kernel(
weights,
cfs.AsyLLIntrinsic(esf, nf, m2hq=m2hq),
cfs.AsyLLIntrinsic(esf, nf, m1sq=m1sq, m2sq=m2sq),
)
]
if pto_evol > 0:
asys.extend(
[
kernels.Kernel(
weights,
cfs.AsyNLLIntrinsicMatching(esf, nf, m2hq=m2hq),
cfs.AsyNLLIntrinsicMatching(esf, nf, m1sq=m1sq, m2sq=m2sq),
),
kernels.Kernel(
weights,
cfs.AsyNLLIntrinsicLight(esf, nf, m2hq=m2hq),
cfs.AsyNLLIntrinsicLight(esf, nf, m1sq=m1sq, m2sq=m2sq),
),
]
)
Expand Down
12 changes: 12 additions & 0 deletions src/yadism/coefficient_functions/asy/partonic_channel.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

from .. import partonic_channel as pc
from .. import splitting_functions as split
from ..intrinsic.partonic_channel import NeutralCurrentBase as incb
from ..partonic_channel import RSL


Expand All @@ -21,6 +22,17 @@ class PartonicChannelAsyLLIntrinsic(PartonicChannelAsy):

light_cls = lambda _esf, _nf: None

def __init__(self, *args, m1sq, m2sq):
super().__init__(*args, m2hq=m2sq)
self.m1sq = m1sq
self.m2sq = m2sq

def convolution_point(self):
sigma_pm = self.ESF.Q2 + self.m2sq - self.m1sq
delta = incb.kinematic_delta(self.m1sq, self.m2sq, -self.ESF.Q2)
eta = 2.0 * self.ESF.Q2 / (sigma_pm + delta)
return self.ESF.x / eta

def LO(self):
"""Return |LO| from light."""
return self.light_cls(self.ESF, self.nf).LO()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import numpy as np
from eko import constants

from ..asy import partonic_channel as pc
from ..partonic_channel import RSL, PartonicChannel
from . import raw_nc

Expand Down

0 comments on commit 51743fc

Please sign in to comment.