Skip to content

Commit

Permalink
apply nfoll fixes to an3lo
Browse files Browse the repository at this point in the history
  • Loading branch information
giacomomagni committed Sep 26, 2023
1 parent fe4c7be commit 138fc19
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 49 deletions.
44 changes: 16 additions & 28 deletions src/yadism/coefficient_functions/asy/f2_nc.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,13 @@ def cg_LL_NNLO(z, args):

def N3LO(self):
def cg_LL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_g3_highscale_LL(z, nf) * L ** 3
return adani.C2_g3_highscale_LL(z, nf) * L**3

return RSL(cg_LL_N3LO, args=[self.L, self.nf])


class AsyNLLGluon(pc.NeutralCurrentBaseAsy):
def NLO(self):
def cg_NLL_NLO(z, _args):
Expand All @@ -47,14 +46,13 @@ def cg_NLL_NNLO(z, args):

def N3LO(self):
def cg_NLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_g3_highscale_NLL(z, nf) * L ** 2
return adani.C2_g3_highscale_NLL(z, nf) * L**2

return RSL(cg_NLL_N3LO, args=[self.L, self.nf])


class AsyNNLLGluon(pc.NeutralCurrentBaseAsy):
def NNLO(self):
def cg_NNLL_NNLO(z, _args):
Expand All @@ -64,20 +62,16 @@ def cg_NNLL_NNLO(z, _args):

def N3LO(self):
def cg_NNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_g3_highscale_N2LL(z, nf) * L

return RSL(cg_NNLL_N3LO, args=[self.L, self.nf])

class AsyNNNLLGluon(pc.NeutralCurrentBaseAsy):

class AsyNNNLLGluon(pc.NeutralCurrentBaseAsy):
def N3LO(self):
def cg_NNNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
nf = int(args[0])
variation = int(args[1])
return adani.C2_g3_highscale_N3LL(z, nf, variation)
Expand All @@ -95,14 +89,13 @@ def cps_LL_NNLO(z, args):

def N3LO(self):
def cps_LL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_ps3_highscale_LL(z, nf) * L ** 3
return adani.C2_ps3_highscale_LL(z, nf) * L**3

return RSL(cps_LL_N3LO, args=[self.L, self.nf])


class AsyNLLSinglet(pc.NeutralCurrentBaseAsy):
def NNLO(self):
def cps_NLL_NNLO(z, args):
Expand All @@ -113,14 +106,13 @@ def cps_NLL_NNLO(z, args):

def N3LO(self):
def cps_NLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_ps3_highscale_NLL(z, nf) * L ** 2
return adani.C2_ps3_highscale_NLL(z, nf) * L**2

return RSL(cps_NLL_N3LO, args=[self.L, self.nf])


class AsyNNLLSinglet(pc.NeutralCurrentBaseAsy):
def NNLO(self):
def cps_NNLL_NNLO(z, _args):
Expand All @@ -130,20 +122,16 @@ def cps_NNLL_NNLO(z, _args):

def N3LO(self):
def cps_NNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.C2_ps3_highscale_N2LL(z, nf) * L

return RSL(cps_NNLL_N3LO, args=[self.L, self.nf])

class AsyNNNLLSinglet(pc.NeutralCurrentBaseAsy):

class AsyNNNLLSinglet(pc.NeutralCurrentBaseAsy):
def N3LO(self):
def cps_NNNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
nf = int(args[0])
return adani.C2_ps3_highscale_N3LL(z, nf)

Expand Down
31 changes: 11 additions & 20 deletions src/yadism/coefficient_functions/asy/fl_nc.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,13 @@ def cg_NLL_NNLO(z, args):

def N3LO(self):
def cg_NLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.CL_g3_highscale_NLL(z, nf) * L ** 2
return adani.CL_g3_highscale_NLL(z, nf) * L**2

return RSL(cg_NLL_N3LO, args=[self.L, self.nf])


class AsyNNLLGluon(pc.NeutralCurrentBaseAsy):
def NNLO(self):
def cg_NNLL_NNLO(z, _args):
Expand All @@ -43,19 +42,16 @@ def cg_NNLL_NNLO(z, _args):

def N3LO(self):
def cg_NNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.CL_g3_highscale_N2LL(z, nf) * L

return RSL(cg_NNLL_N3LO, args=[self.L, self.nf])
class AsyNNNLLGluon(pc.NeutralCurrentBaseAsy):


class AsyNNNLLGluon(pc.NeutralCurrentBaseAsy):
def N3LO(self):
def cg_NNNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
nf = int(args[0])
return adani.CL_g3_highscale_N3LL(z, nf)

Expand All @@ -76,14 +72,13 @@ def cps_NLL_NNLO(z, args):

def N3LO(self):
def cps_NLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.CL_ps3_highscale_NLL(z, nf) * L ** 2
return adani.CL_ps3_highscale_NLL(z, nf) * L**2

return RSL(cps_NLL_N3LO, args=[self.L, self.nf])


class AsyNNLLSinglet(pc.NeutralCurrentBaseAsy):
def NNLO(self):
def cps_NNLL_NNLO(z, _args):
Expand All @@ -93,20 +88,16 @@ def cps_NNLL_NNLO(z, _args):

def N3LO(self):
def cps_NNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
L = - args[0]
L = -args[0]
nf = int(args[1])
return adani.CL_ps3_highscale_N2LL(z, nf) * L

return RSL(cps_NNLL_N3LO, args=[self.L, self.nf])

class AsyNNNLLSinglet(pc.NeutralCurrentBaseAsy):

class AsyNNNLLSinglet(pc.NeutralCurrentBaseAsy):
def N3LO(self):
def cps_NNNLL_N3LO(z, args):
if self.is_below_pair_threshold(z):
return 0.0
nf = int(args[0])
return adani.CL_ps3_highscale_N3LL(z, nf)

Expand Down
7 changes: 6 additions & 1 deletion src/yadism/coefficient_functions/asy/kernels.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,12 @@ def generate_heavy_asy(esf, nf, pto_evol, ihq):
asys.append(
kernels.Kernel(
asy_weights[f"{c}{av}"],
asy_cfs.__getattribute__(name)(esf, nf, m2hq=m2hq, n3lo_cf_variation=n3lo_cf_variation),
asy_cfs.__getattribute__(name)(
esf,
nf,
m2hq=m2hq,
n3lo_cf_variation=n3lo_cf_variation,
),
)
)
return asys
Expand Down

0 comments on commit 138fc19

Please sign in to comment.