# pylint: skip-file
# fmt: off
r"""The unpolarized, space-like anomalous dimension :math:`\gamma_{gq}^{(3)}`."""
import numba as nb
import numpy as np
from .....harmonics import cache as c
from .....harmonics.log_functions import (
lm11,
lm11m1,
lm11m2,
lm12,
lm12m1,
lm12m2,
lm13,
lm13m1,
lm13m2,
lm14,
lm14m1,
lm14m2,
lm15,
lm15m1,
)
[docs]
@nb.njit(cache=True)
def gamma_gq_nf3(n, cache):
r"""Return the part proportional to :math:`nf^3` of :math:`\gamma_{gq}^{(3)}`.
The expression is copied exact from :eqref:`3.13` of :cite:`Davies:2016jie`.
Parameters
----------
n : complex
Mellin moment
cache: numpy.ndarray
Harmonic sum cache
Returns
-------
complex
|N3LO| non-singlet anomalous dimension :math:`\gamma_{gq}^{(3)}|_{nf^3}`
"""
S1 = c.get(c.S1, cache, n)
S2 = c.get(c.S2, cache, n)
S3 = c.get(c.S3, cache, n)
return 1.3333333333333333 * (
-11.39728026699467 / (-1.0 + n)
+ 11.39728026699467 / n
- 2.3703703703703702 / np.power(1.0 + n, 4)
+ 6.320987654320987 / np.power(1.0 + n, 3)
- 3.1604938271604937 / np.power(1.0 + n, 2)
- 5.698640133497335 / (1.0 + n)
- (6.320987654320987 * S1) / (-1.0 + n)
+ (6.320987654320987 * S1) / n
- (2.3703703703703702 * S1) / np.power(1.0 + n, 3)
+ (6.320987654320987 * S1) / np.power(1.0 + n, 2)
- (3.1604938271604937 * S1) / (1.0 + n)
+ (6.320987654320987 * (np.power(S1, 2) + S2)) / (-1.0 + n)
- (6.320987654320987 * (np.power(S1, 2) + S2)) / n
- (1.1851851851851851 * (np.power(S1, 2) + S2)) / np.power(1.0 + n, 2)
+ (3.1604938271604937 * (np.power(S1, 2) + S2)) / (1.0 + n)
- (0.7901234567901234 * (np.power(S1, 3) + 3.0 * S1 * S2 + 2.0 * S3))
/ (-1.0 + n)
+ (0.7901234567901234 * (np.power(S1, 3) + 3.0 * S1 * S2 + 2.0 * S3)) / n
- (0.3950617283950617 * (np.power(S1, 3) + 3.0 * S1 * S2 + 2.0 * S3))
/ (1.0 + n)
)
[docs]
@nb.njit(cache=True)
def gamma_gq_nf0(n, cache, variation):
r"""Return the part proportional to :math:`nf^0` of :math:`\gamma_{gq}^{(3)}`.
Parameters
----------
n : complex
Mellin moment
cache: numpy.ndarray
Harmonic sum cache
variation : int
|N3LO| anomalous dimension variation
Returns
-------
complex
|N3LO| non-singlet anomalous dimension :math:`\gamma_{gq}^{(3)}|_{nf^0}`
"""
S1 = c.get(c.S1, cache, n)
S2 = c.get(c.S2, cache, n)
S3 = c.get(c.S3, cache, n)
S4 = c.get(c.S4, cache, n)
S5 = c.get(c.S5, cache, n)
common = -22156.31283903764/np.power(-1. + n,4) + 95032.88047770769/np.power(-1. + n,3) - 37609.87654320987/np.power(n,7) - 35065.67901234568/np.power(n,6) - 175454.58483973087/np.power(n,5) - 375.3983146907502*lm14(n,S1,S2,S3,S4) - 13.443072702331962*lm15(n,S1,S2,S3,S4,S5)
if variation == 1:
fit = -190798.78984643394/np.power(-1. + n,2) + 221131.0253655226/(-1. + n) + 648439.242059473/np.power(n,4) - 366347.6184986734/np.power(n,3) - 618607.6917836913/(1. + n) + 429310.45853894716/(2. + n) - 14371.95584746726*lm12(n,S1,S2) - 3733.573405767123*lm13(n,S1,S2,S3) - 2532.2371762381217*lm14m1(n,S1,S2,S3,S4) - 2065.2033221184793*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 2:
fit = -181955.90739273484/np.power(-1. + n,2) + 174079.00572878437/(-1. + n) + 614415.2112591498/np.power(n,4) - 247925.1030423719/np.power(n,3) - 857285.692084171/(1. + n) - 465757.33455764863*lm11(n,S1) - 96058.685995113*lm12(n,S1,S2) - 8155.798140311963*lm13(n,S1,S2,S3) - 28516.09724542403*lm14m1(n,S1,S2,S3,S4) - 954.4182897594625*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 3:
fit = 1.3256764418997709e6*(1/(-1. + n) - 1./n) - 274084.8755098396/np.power(-1. + n,2) - 562456.7287892306/(-1. + n) + 33100.78620012983/np.power(n,4) - 757963.2228636674/np.power(n,3) + 561634.5180237194/(1. + n) - 10366.577512205613*lm12(n,S1,S2) - 3308.849780595093*lm13(n,S1,S2,S3) + 3594.429612523227*lm14m1(n,S1,S2,S3,S4) - 164.77740102923354*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 4:
fit = -407971.0442601025/np.power(-1. + n,2) + 1.6779394404324158e6/(-1. + n) - 1.8508191192624622e6/np.power(n,4) + 556695.4184628404/np.power(n,3) - 2.9603580600296143e6/np.power(n,2) - 1.6991648126491427e6/(1. + n) - 7644.442002706872*lm12(n,S1,S2) - 3016.5770039806234*lm13(n,S1,S2,S3) + 7449.550615450056*lm14m1(n,S1,S2,S3,S4) + 1121.5452001019141*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 5:
fit = -200706.92458750593/np.power(-1. + n,2) + 285544.01297554397/(-1. + n) + 598975.4725951094/np.power(n,4) - 459467.2186763565/np.power(n,3) - 125035.7898269595/(1. + n) - (469579.8213276177*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) - 19934.92974689708*lm12(n,S1,S2) - 4197.138060641495*lm13(n,S1,S2,S3) - 14354.398949387967*lm14m1(n,S1,S2,S3,S4) - 2780.1172673234187*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 6:
fit = -213717.81278326/np.power(-1. + n,2) + 343080.67540216126/(-1. + n) + 736622.8254565693/np.power(n,4) - 673275.6329706735/np.power(n,3) + 1.541999929424894e6/(2. + n) + 1.2071530957537233e6*lm11(n,S1) + 197344.29014401618*lm12(n,S1,S2) + 7727.9806356929*lm13(n,S1,S2,S3) + 64812.92407405157*lm14m1(n,S1,S2,S3,S4) - 4944.138652016546*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 7:
fit = 694835.0487113381*(1/(-1. + n) - 1./n) - 234452.04501713923/np.power(-1. + n,2) - 189575.70173963293/(-1. + n) + 325918.06883470225/np.power(n,4) - 571607.5497870556/np.power(n,3) + 204293.30045438773/(2. + n) - 12272.59203346936*lm12(n,S1,S2) - 3510.9603747819533*lm13(n,S1,S2,S3) + 678.9706859669171*lm14m1(n,S1,S2,S3,S4) - 1069.1212905556267*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 8:
fit = -66469.9146192077/np.power(-1. + n,2) - 612876.780153988/(-1. + n) + 2.0792390245041656e6/np.power(n,4) - 894780.384449624/np.power(n,3) + 1.6947745654652142e6/np.power(n,2) + 675086.4242602822/(2. + n) - 18223.392584809953*lm12(n,S1,S2) - 4144.046942562251*lm13(n,S1,S2,S3) - 8246.712776279062*lm14m1(n,S1,S2,S3,S4) - 3889.585992793313*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 9:
fit = -203216.93313632446/np.power(-1. + n,2) + 301861.63488653634/(-1. + n) + 586444.881228152/np.power(n,4) - 483057.01613457815/np.power(n,3) - 108756.54115142432/(2. + n) - (588537.6906760911*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) - 21344.18742499368*lm12(n,S1,S2) - 4314.571987943781*lm13(n,S1,S2,S3) - 17349.286017533777*lm14m1(n,S1,S2,S3,S4) - 2961.2246827676927*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 10:
fit = 800949.5231631215*(1/(-1. + n) - 1./n) - 237618.5496992028/np.power(-1. + n,2) - 270922.4474641897/(-1. + n) + 263195.643205183/np.power(n,4) - 556080.8360498395/np.power(n,3) - 184355.25890888766*lm11(n,S1) - 44285.07913209169*lm12(n,S1,S2) - 5227.3604731573405*lm13(n,S1,S2,S3) - 9115.503485867332*lm14m1(n,S1,S2,S3,S4) - 477.33174654807533*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 11:
fit = 48195.59002112752/np.power(-1. + n,2) - 1.3573040106844993e6/(-1. + n) + 3.124766843285419e6/np.power(n,4) - 1.067271569502171e6/np.power(n,3) + 3.014536621053924e6/np.power(n,2) - 940039.2873520318*lm11(n,S1) - 186091.1587357063*lm12(n,S1,S2) - 13389.081966931277*lm13(n,S1,S2,S3) - 65140.019870429314*lm14m1(n,S1,S2,S3,S4) - 3068.3813511505823*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 12:
fit = -203908.76301521514/np.power(-1. + n,2) + 304577.27308896056/(-1. + n) + 596339.0394012802/np.power(n,4) - 495589.18522419676/np.power(n,3) - (549763.1754595829*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 79530.6860231015*lm11(n,S1) - 6936.368263841917*lm12(n,S1,S2) - 3521.174399244307*lm13(n,S1,S2,S3) - 11936.20686787835*lm14m1(n,S1,S2,S3,S4) - 3091.865040882635*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 13:
fit = 996347.6558814617*(1/(-1. + n) - 1./n) - 307345.22952632234/np.power(-1. + n,2) - 5890.838164024106/(-1. + n) - 434907.89075372514/np.power(n,4) - 431371.6979604753/np.power(n,3) - 735420.6920727129/np.power(n,2) - 9690.333769848923*lm12(n,S1,S2) - 3236.2421958663294*lm13(n,S1,S2,S3) + 4552.132557305155*lm14m1(n,S1,S2,S3,S4) + 154.77587205927955*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 14:
fit = 241392.41481428457*(1/(-1. + n) - 1./n) - 214068.31142011366/np.power(-1. + n,2) + 131131.54358220598/(-1. + n) + 495935.3419568636/np.power(n,4) - 513820.30789226515/np.power(n,3) - (384073.9851893155*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) - 18192.626596597966*lm12(n,S1,S2) - 4035.389453017769*lm13(n,S1,S2,S3) - 11086.094113028495*lm14m1(n,S1,S2,S3,S4) - 2303.8893574584527*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 15:
fit = -184243.57777612918/np.power(-1. + n,2) + 174943.63966707757/(-1. + n) + 793566.8946787679/np.power(n,4) - 540182.7805370308/np.power(n,3) + 235146.35888011672/np.power(n,2) - (506879.3651168012*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) - 20911.184664809738*lm12(n,S1,S2) - 4290.912089188934*lm13(n,S1,S2,S3) - 16086.324716319741*lm14m1(n,S1,S2,S3,S4) - 3090.0331415667697*lm15m1(n,S1,S2,S3,S4,S5)
else:
fit = -204824.20590456025/np.power(-1. + n,2) + 311630.8552402414/(-1. + n) + 574082.1509765851/np.power(n,4) - 500136.3136750759/np.power(n,3) + 83245.25288646184/np.power(n,2) + 3414.410110455348/n - 182563.96455468299/(1. + n) + 182795.5714351391/(2. + n) - (166588.9358512939*S1)/np.power(n,2) - (166588.9358512939*S2)/n - 20231.20660278288*lm11(n,S1) - 19265.281611102873*lm12(n,S1,S2) - 4023.5797092198227*lm13(n,S1,S2,S3) - 6884.991578205952*lm14m1(n,S1,S2,S3,S4) - 1972.251097587273*lm15m1(n,S1,S2,S3,S4,S5)
return common + fit
[docs]
@nb.njit(cache=True)
def gamma_gq_nf1(n, cache, variation):
r"""Return the part proportional to :math:`nf^1` of :math:`\gamma_{gq}^{(3)}`.
Parameters
----------
n : complex
Mellin moment
cache: numpy.ndarray
Harmonic sum cache
variation : int
|N3LO| anomalous dimension variation
Returns
-------
complex
|N3LO| non-singlet anomalous dimension :math:`\gamma_{gq}^{(3)}|_{nf^1}`
"""
S1 = c.get(c.S1, cache, n)
S2 = c.get(c.S2, cache, n)
S3 = c.get(c.S3, cache, n)
S4 = c.get(c.S4, cache, n)
S5 = c.get(c.S5, cache, n)
common = 885.6738165500071/np.power(-1. + n,3) + 5309.62962962963/np.power(n,7) + 221.23456790123456/np.power(n,6) + 9092.91243376357/np.power(n,5) + 34.49474165523548*lm14(n,S1,S2,S3,S4) + 0.5486968449931413*lm15(n,S1,S2,S3,S4,S5)
if variation == 1:
fit = -4641.830354006266/np.power(-1. + n,2) + 9330.495800110972/(-1. + n) + 14344.09051426101/np.power(n,4) - 1016.4529739723794/np.power(n,3) - 6064.923487611063/(1. + n) - 2205.7352403247382/(2. + n) + 1484.8541015131434*lm12(n,S1,S2) + 431.5031264078472*lm13(n,S1,S2,S3) - 856.5578620911533*lm14m1(n,S1,S2,S3,S4) + 6.61766368570454*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 2:
fit = -4687.263677692064/np.power(-1. + n,2) + 9572.241701801757/(-1. + n) + 14518.90006807081/np.power(n,4) - 1624.8890269149388/np.power(n,3) - 4838.624644014499/(1. + n) + 2392.997784211616*lm11(n,S1) + 1904.549512246748*lm12(n,S1,S2) + 454.2239274477203*lm13(n,S1,S2,S3) - 723.0562074580255*lm14m1(n,S1,S2,S3,S4) + 0.9106508564231698*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 3:
fit = -6811.138044272443*(1/(-1. + n) - 1./n) - 4213.918161962191/np.power(-1. + n,2) + 13356.458528865467/(-1. + n) + 17505.612074825083/np.power(n,4) + 995.6134783259232/np.power(n,3) - 12128.839771112724/(1. + n) + 1464.2750761708346*lm12(n,S1,S2) + 429.3209612041876*lm13(n,S1,S2,S3) - 888.0357673648941*lm14m1(n,S1,S2,S3,S4) - 3.1464374221968265*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 4:
fit = -3526.0317032445505/np.power(-1. + n,2) + 1845.6312169595117/(-1. + n) + 27184.909343823376/np.power(n,4) - 5758.912493427602/np.power(n,3) + 15209.879770634008/np.power(n,2) - 513.1837033827802/(1. + n) + 1450.2890806227542*lm12(n,S1,S2) + 427.8192994247673*lm13(n,S1,S2,S3) - 907.8428666449199*lm14m1(n,S1,S2,S3,S4) - 9.755401357842457*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 5:
fit = -4590.923684246688/np.power(-1. + n,2) + 8999.550617808409/(-1. + n) + 14598.227915093874/np.power(n,4) - 538.0166438967607/np.power(n,3) - 8600.824838080449/(1. + n) + (2412.6347931026244*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 1513.4359164894108*lm12(n,S1,S2) + 433.88486067694004*lm13(n,S1,S2,S3) - 795.8172214607993*lm14m1(n,S1,S2,S3,S4) + 10.290808757929303*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 6:
fit = -4866.531418583069/np.power(-1. + n,2) + 10526.106107096773/(-1. + n) + 15208.65298881981/np.power(n,4) - 4025.6149294747884/np.power(n,3) + 8703.225799886446/(2. + n) + 11835.100931020013*lm11(n,S1) + 3560.5504964992174*lm12(n,S1,S2) + 543.8738525149046*lm13(n,S1,S2,S3) - 196.29613565392873*lm14m1(n,S1,S2,S3,S4) - 21.60775819888546*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 7:
fit = 6812.267406043017*(1/(-1. + n) - 1./n) - 5069.813407366513/np.power(-1. + n,2) + 5303.865079802739/(-1. + n) + 11182.04418020281/np.power(n,4) - 3028.851822020746/np.power(n,3) - 4411.837835317581/(2. + n) + 1505.436594939228*lm12(n,S1,S2) + 433.68565968275493*lm13(n,S1,S2,S3) - 825.0746801155074*lm14m1(n,S1,S2,S3,S4) + 16.38340848554099*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 8:
fit = -3422.891059017386/np.power(-1. + n,2) + 1153.755670292513/(-1. + n) + 28371.871488638357/np.power(n,4) - 6197.289757168041/np.power(n,3) + 16615.82978575513/np.power(n,2) + 203.89110614955672/(2. + n) + 1447.093994233797*lm12(n,S1,S2) + 427.47877749637*lm13(n,S1,S2,S3) - 912.583492582551*lm14m1(n,S1,S2,S3,S4) - 11.268877794713138*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 9:
fit = -4763.579488071934/np.power(-1. + n,2) + 10121.98975419346/(-1. + n) + 13736.287660471797/np.power(n,4) - 2160.6868401419974/np.power(n,3) - 7481.025709471715/(2. + n) - (5770.109793538375*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 1416.4974055579276*lm12(n,S1,S2) + 425.80694052284747*lm13(n,S1,S2,S3) - 1001.8262888413067*lm14m1(n,S1,S2,S3,S4) - 2.1670232041395643*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 10:
fit = 4520.661520913708*(1/(-1. + n) - 1./n) - 5001.430874802961/np.power(-1. + n,2) + 7060.59716821144/(-1. + n) + 12536.572900553683/np.power(n,4) - 3364.161076731632/np.power(n,3) + 3981.2635172018045*lm11(n,S1) + 2196.7656407758154*lm12(n,S1,S2) + 470.75235872661165*lm13(n,S1,S2,S3) - 613.5570863075435*lm14m1(n,S1,S2,S3,S4) + 3.603350437056353*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 11:
fit = -3388.259768452193/np.power(-1. + n,2) + 928.9237521114734/(-1. + n) + 28687.641066076383/np.power(n,4) - 6249.3846772154875/np.power(n,3) + 17014.423803619455/np.power(n,2) - 283.911571480371*lm11(n,S1) + 1396.3944319615423*lm12(n,S1,S2) + 424.6865855575389*lm13(n,S1,S2,S3) - 929.7664379765954*lm14m1(n,S1,S2,S3,S4) - 11.020846683201022*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 12:
fit = -4811.168299020828/np.power(-1. + n,2) + 10308.789975744723/(-1. + n) + 14416.876062124396/np.power(n,4) - 3022.7356514174053/np.power(n,3) - (3102.930670591721*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 5470.669625759262*lm11(n,S1) + 2407.5666798018997*lm12(n,S1,S2) + 480.3823046452061*lm13(n,S1,S2,S3) - 629.4773212257594*lm14m1(n,S1,S2,S3,S4) - 11.153366255382775*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 13:
fit = 300.91468031027983*(1/(-1. + n) - 1./n) - 3495.6400189196065/np.power(-1. + n,2) + 1337.0787229077632/(-1. + n) + 27612.548291854742/np.power(n,4) - 6057.328428936091/np.power(n,3) + 15881.861322805855/np.power(n,2) + 1449.6712068638715*lm12(n,S1,S2) + 427.75295915863444*lm13(n,S1,S2,S3) - 908.7179226159642*lm14m1(n,S1,S2,S3,S4) - 10.04737351405501*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 14:
fit = 16604.63646140265*(1/(-1. + n) - 1./n) - 5510.0124055938695/np.power(-1. + n,2) - 1622.003211474526/(-1. + n) + 7510.417547162798/np.power(n,4) - 4276.8010810631495/np.power(n,3) + (8294.312330449271*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 1633.28339277492*lm12(n,S1,S2) + 445.0110299002262*lm13(n,S1,S2,S3) - 571.0008823762004*lm14m1(n,S1,S2,S3,S4) + 43.04899480027303*lm15m1(n,S1,S2,S3,S4,S5)
elif variation == 15:
fit = -3458.461150841499/np.power(-1. + n,2) + 1391.69402227194/(-1. + n) + 27983.56958776381/np.power(n,4) - 6090.191530645382/np.power(n,3) + 16174.989824710121/np.power(n,2) - (153.08676471398127*(S1 - 1.*n*(1.6449340668482262 - 1.*S2)))/np.power(n,2) + 1446.2823060910362*lm12(n,S1,S2) + 427.43442970735236*lm13(n,S1,S2,S3) - 914.9511127677407*lm14m1(n,S1,S2,S3,S4) - 11.027364975586181*lm15m1(n,S1,S2,S3,S4,S5)
else:
fit = -4363.18369812144/np.power(-1. + n,2) + 7402.8344620734415/(-1. + n) + 18359.88144598285/np.power(n,4) - 3494.380230313365/np.power(n,3) + 5393.1323005016375/np.power(n,2) - 1612.81199529589/n - 2143.0930962801012/(1. + n) - 346.09879193853544/(2. + n) + (112.05465964718788*S1)/np.power(n,2) + (112.05465964718788*S2)/n + 1559.7413524474882*lm11(n,S1) + 1751.7963891028098*lm12(n,S1,S2) + 445.5744715382606*lm13(n,S1,S2,S3) - 778.3040856988591*lm14m1(n,S1,S2,S3,S4) - 0.6893048255383367*lm15m1(n,S1,S2,S3,S4,S5)
return common + fit
[docs]
@nb.njit(cache=True)
def gamma_gq_nf2(n, cache, variation):
r"""Return the part proportional to :math:`nf^2` of :math:`\gamma_{gq}^{(3)}`.
This therm is parametrized using the analytic result from :cite:`Falcioni:2023tzp`
with an higher number of moments (30).
Parameters
----------
n : complex
Mellin moment
cache: numpy.ndarray
Harmonic sum cache
variation : int
|N3LO| anomalous dimension variation
Returns
-------
complex
|N3LO| non-singlet anomalous dimension :math:`\gamma_{gq}^{(3)}|_{nf^2}`
"""
S1 = c.get(c.S1, cache, n)
S2 = c.get(c.S2, cache, n)
S3 = c.get(c.S3, cache, n)
S4 = c.get(c.S4, cache, n)
Lm11 = lm11(n,S1)
Lm12 = lm12(n,S1, S2)
Lm13 = lm13(n,S1, S2, S3)
Lm14 = lm14(n,S1, S2, S3, S4)
Lm11m1 = lm11m1(n, S1)
Lm12m1 = lm12m1(n, S1, S2)
Lm13m1 = lm13m1(n, S1, S2, S3)
Lm14m1 = lm14m1(n, S1, S2, S3, S4)
Lm11m2 = lm11m2(n, S1)
Lm12m2 = lm12m2(n, S1, S2)
Lm13m2 = lm13m2(n, S1, S2, S3)
Lm14m2 = lm14m2(n, S1, S2, S3, S4)
return (
-(70.60121231446594/(-1. + n)**2)
- 699.5449657900476/(-1. + n)
+ 617.4606265472538/n**5
+ 21.0418422974213/n**4
+ 656.9409510996688/n**3
+ 440.98264702900605/n**2
- 485.09325526270226/n
+ 468.97972206118425/(1 + n)**2
+ 131.12265149192916/(1 + n)
- 284.0960143480868/(2 + n)**2
+ 189.98763175661884/(2 + n)
+ 355.07676818390956/(3 + n)**2
+ 259.2485292950681/(3 + n)
+ 592.4002328363352/(n + n**2)
+ 54.543536161068644/(3 + 4 * n + n**2)
- 62.424886245567585/(6 + 5 * n + n**2)
+ 154.10095015747495 * (1/n - n/(2 + 3 * n + n**2))
- 645.1788277783346 * Lm11
+ 32.22330776302828 * Lm11m1
- 476.25599212133864 * Lm11m2
- 212.9330738830414 * Lm12
- 93.58928584449357 * Lm12m1
+ 105.52933047599603 * Lm12m2
- 26.13260173754001 * Lm13
- 22.482518440225107 * Lm13m1
- 45.725204763960996 * Lm13m2
- 0.877914951989026 * Lm14
- 0.40377681107870367 * Lm14m1
+ 20.629383319025006 * Lm14m2
)
[docs]
@nb.njit(cache=True)
def gamma_gq(n, nf, cache, variation):
r"""Compute the |N3LO| gluon-quark singlet anomalous dimension.
Parameters
----------
n : complex
Mellin moment
nf : int
Number of active flavors
cache: numpy.ndarray
Harmonic sum cache
variation : int
|N3LO| anomalous dimension variation
Returns
-------
complex
|N3LO| gluon-quark singlet anomalous dimension
:math:`\gamma_{gq}^{(3)}(N)`
"""
return (
gamma_gq_nf0(n, cache, variation)
+ nf * gamma_gq_nf1(n, cache, variation)
+ nf**2 * gamma_gq_nf2(n, cache, variation)
+ nf**3 * gamma_gq_nf3(n, cache)
)