Load
FeynCalc and the necessary add-ons or other packages
description = "Gl -> Gl, QCD, only UV divergences, 1-loop";
If[ $FrontEnd === Null,
$FeynCalcStartupMessages = False;
Print[description];
];
If[ $Notebooks === False,
$FeynCalcStartupMessages = False
];
$LoadAddOns = {"FeynArts"};
<< FeynCalc`
$FAVerbose = 0;
FCCheckVersion[9, 3, 1];
FeynCalc 10.0.0 (dev version, 2023-12-20 22:40:59 +01:00, dff3b835). For help, use the onlinedocumentation, check out the wiki or visit the forum.
Please check our FAQ for answers to some common FeynCalc questions and have a look at the supplied examples.
If you use FeynCalc in your research, please evaluate FeynCalcHowToCite[] to learn how to cite this software.
Please keep in mind that the proper academic attribution of our work is crucial to ensure the future development of this package!
FeynArts 3.11 (3 Aug 2020) patched for use with FeynCalc, for documentation see the manual or visit www.feynarts.de.
If you use FeynArts in your research, please cite
∙ T. Hahn, Comput. Phys. Commun., 140, 418-431, 2001, arXiv:hep-ph/0012260
We keep scaleless B0 functions, since otherwise the UV part would not
come out right.
$KeepLogDivergentScalelessIntegrals = True;
Generate Feynman diagrams
Nicer typesetting
MakeBoxes[mu, TraditionalForm] := "\[Mu]";
MakeBoxes[nu, TraditionalForm] := "\[Nu]";
diags = InsertFields[CreateTopologies[1, 1 -> 1, ExcludeTopologies -> {Tadpoles}],
{V[5]} -> {V[5]}, InsertionLevel -> {Particles}, Model -> "SMQCD",
ExcludeParticles -> {S[_], V[2 | 3], F[4], F[3, {2 | 3}]}];
Paint[diags, ColumnsXRows -> {2, 2}, Numbering -> Simple,
SheetHeader -> None, ImageSize -> {512, 512}];

Obtain the amplitude
The 1/(2Pi)^D prefactor is implicit.
amp[0] = FCFAConvert[CreateFeynAmp[diags, Truncated -> True, GaugeRules -> {},
PreFactor -> 1], IncomingMomenta -> {p}, OutgoingMomenta -> {p}, LoopMomenta -> {q},
LorentzIndexNames -> {mu, nu}, UndoChiralSplittings -> True,
ChangeDimension -> D, List -> True, SMP -> True, DropSumOver -> True,
Contract -> True, FinalSubstitutions -> {SMP["m_u"] -> SMP["m_q"]}]
{2q2gμνgs2fGlu1Glu3$AL$12977fGlu2Glu3$AL$12977+2(q2)2(ξg−1)qμqνgs2fGlu1Glu3$AL$12977fGlu2Glu3$AL$12977−2q2Dgμνgs2(fGlu1Glu3$AL$12978fGlu2Glu3$AL$12978+fGlu1Glu3$AL$12979fGlu2Glu3$AL$12979)−2(q2)2(ξg−1)gμνq2gs2(fGlu1Glu3$AL$12978fGlu2Glu3$AL$12978+fGlu1Glu3$AL$12979fGlu2Glu3$AL$12979)+2q2gμνgs2fGlu1Glu3$AL$12981fGlu2Glu3$AL$12981+2(q2)2(ξg−1)qμqνgs2fGlu1Glu3$AL$12981fGlu2Glu3$AL$12981,(q2−mq2).((q−p)2−mq2)tr((mq−γ⋅q).(−iγνgsTCol3Col4Glu2).(γ⋅(p−q)+mq).(−iγμgsTCol4Col3Glu1)),−q2.(q−p)2(q−p)μqνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4,−2(q2)2.(q−p)4(1−ξg)2pμpν(p⋅q)2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+(q2)2.(q−p)4(1−ξg)2pμqν(p⋅q)2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)2Dpμpνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)23pμpνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)2Dqμpνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)23qμpνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)2Dpμqνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)23pμqνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4+q2.(q−p)22Dqμqνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)23qμqνgs2fGlu1Glu3Glu4fGlu2Glu3Glu4+q2.(q−p)4(1−ξg)pμpνp2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)4(1−ξg)pμqνp2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)qμqνp2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)pμpν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)2(1−ξg)qμpν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)qμpν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+(q2)2.(q−p)2(1−ξg)pμqν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+q2.(q−p)4(1−ξg)pμqν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+q2.(q−p)4(1−ξg)qμqν(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2qμpνp2(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−(q2)2.(q−p)4(1−ξg)2qμqνp2(p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−q2.(q−p)2gμν(p⋅q−2p2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)pμpν(p⋅q−2p2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)pμqν(p⋅q−2p2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)2gμν(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)pμpν(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)qμqν(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)qμqν(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)gμνp2(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2qμqνp2(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)4(1−ξg)2pμqν(p⋅q)(p2+p⋅q)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)pμpνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)pμpνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)qμpνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)2(1−ξg)pμqνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)qμqνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)qμqνq2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)4(1−ξg)2qμpνp2q2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+(q2)2.(q−p)4(1−ξg)2qμqνp2q2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2pμpν(p⋅q)q2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−(q2)2.(q−p)4(1−ξg)2pμqν(p⋅q)q2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)gμν(p2+p⋅q)q2gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)2gμν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)qμpν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)qμpν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)pμqν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)2(1−ξg)qμqν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)qμqν(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2qμpνp2(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)4(1−ξg)2qμqνp2(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+(q2)2.(q−p)2(1−ξg)gμν(p⋅q)(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)4(1−ξg)2pμpν(p⋅q)(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2pμqν(p⋅q)(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)gμνq2(q2−2(p⋅q))gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)2gμν(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)pμpν(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)2(1−ξg)pμqν(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)2(1−ξg)qμqν(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)qμqν(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2q2.(q−p)4(1−ξg)gμνp2(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2(q2)2.(q−p)4(1−ξg)2qμqνp2(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4+2(q2)2.(q−p)4(1−ξg)2pμqν(p⋅q)(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4−2q2.(q−p)4(1−ξg)gμνq2(p⋅q+q2)gs2fGlu1Glu3Glu4fGlu2Glu3Glu4}
Calculate the amplitude
The gluon tadpole
This contribution is zero in dimensional regularization, because the
loop integrals have no scale (and they are not log divergent)
amp1[0] = TID[amp[0][[1]], q, ToPaVe -> True]
0
FCCompareResults[amp1[0], 0,
Text -> {"\tThe gluon tadpole vanishes:",
"CORRECT.", "WRONG!"}, Interrupt -> {Hold[Quit[1]], Automatic}];
\tThe gluon tadpole vanishes:CORRECT.
The quark loop
amp2[0] = amp[0][[2]] // SUNSimplify // TID[#, q, ToPaVe -> True] &
(1−D)p2iπ2gs2δGlu1Glu2B0(p2,mq2,mq2)(−((1−D)p4gμν)+2(1−D)p2pμpν+Dp2pμpν+4p2mq2gμν−p4gμν−4mq2pμpν)−(1−D)p22iπ2gs2δGlu1Glu2A0(mq2)(−(1−D)p2gμν−Dpμpν−p2gμν+2pμpν)
The contribution of the quark loop alone is gauge invariant.
tmp = Contract[FVD[p, mu] FVD[p, nu] amp2[0]] // Factor
FCCompareResults[tmp, 0,
Text -> {"\tThe quark loop contribution is gauge invariant:",
"CORRECT.", "WRONG!"}, Interrupt -> {Hold[Quit[1]], Automatic}];
0
\tThe quark loop contribution is gauge invariant:CORRECT.
The ghost loop
amp3[0] = amp[0][[3]] // SUNSimplify // TID[#, q, ToPaVe -> True] &
4(1−D)iπ2CAgs2δGlu1Glu2B0(p2,0,0)(2(1−D)pμpν+Dpμpν−p2gμν)
The contribution of the gluon loop alone is not gauge invariant.
tmp1 = Contract[FVD[p, mu] FVD[p, nu] amp3[0]] // Factor
41iπ2p4CAgs2δGlu1Glu2B0(p2,0,0)
The gluon loop
amp4[0] = amp[0][[4]] // SUNSimplify // TID[#, q, ToPaVe -> True] &
−8(1−D)iCAπ2D0(0,p2,0,p2,p2,p2,0,0,0,0)(1−ξg)2p4((1−D)pμpν+Dpμpν−gμνp2)δGlu1Glu2gs2−4(1−D)iCAπ2B0(0,0,0)(1−ξg)(7(1−D)pμpν+3Dpμpν−(1−D)ξgpμpν−Dξgpμpν−4(1−D)gμνp2+ξggμνp2−3gμνp2)δGlu1Glu2gs2+2(1−D)iCAπ2C0(0,p2,p2,0,0,0)(1−ξg)p2(3(1−D)pμpν+Dpμpν−ξgpμpν+pμpν−2(1−D)gμνp2+ξggμνp2−2gμνp2)δGlu1Glu2gs2−4(1−D)1iCAπ2B0(p2,0,0)(2pμpνD2−ξg2pμpνD+2(1−D)pμpνD+6ξgpμpνD−8pμpνD−2gμνp2D−(1−D)ξg2pμpν+(1−D)pμpν+6(1−D)ξgpμpν−8ξgpμpν+8pμpν+ξg2gμνp2−8(1−D)gμνp2+2ξggμνp2)δGlu1Glu2gs2
The contribution of the gluon loop alone is not gauge invariant.
Notice, however, that the sum of the ghost and gluon contributions is
gauge invariant!
tmp2 = Contract[FVD[p, mu] FVD[p, nu] amp4[0]] // Factor
−41iπ2p4CAgs2δGlu1Glu2B0(p2,0,0)
FCCompareResults[tmp1 + tmp2, 0,
Text -> {"\tThe sum of the ghost and gluon loop contributions is gauge invariant:",
"CORRECT.", "WRONG!"}, Interrupt -> {Hold[Quit[1]], Automatic}];
\tThe sum of the ghost and gluon loop contributions is gauge invariant:CORRECT.
Putting everything together
When adding all the contributions together, we multiply the quark
contribution by N_f to account for the 6 quark flavors that actually run
in that loop. We ignore the fact that different flavors have different
masses, since the divergent piece of the gluon self-energy will not
depend on the quark mass.
amp[1] = Nf amp2[0] + amp3[0] + amp4[0]
−8(1−D)iCAπ2D0(0,p2,0,p2,p2,p2,0,0,0,0)(1−ξg)2p4((1−D)pμpν+Dpμpν−gμνp2)δGlu1Glu2gs2+4(1−D)iCAπ2B0(p2,0,0)(2(1−D)pμpν+Dpμpν−gμνp2)δGlu1Glu2gs2−4(1−D)iCAπ2B0(0,0,0)(1−ξg)(7(1−D)pμpν+3Dpμpν−(1−D)ξgpμpν−Dξgpμpν−4(1−D)gμνp2+ξggμνp2−3gμνp2)δGlu1Glu2gs2+2(1−D)iCAπ2C0(0,p2,p2,0,0,0)(1−ξg)p2(3(1−D)pμpν+Dpμpν−ξgpμpν+pμpν−2(1−D)gμνp2+ξggμνp2−2gμνp2)δGlu1Glu2gs2−4(1−D)1iCAπ2B0(p2,0,0)(2pμpνD2−ξg2pμpνD+2(1−D)pμpνD+6ξgpμpνD−8pμpνD−2gμνp2D−(1−D)ξg2pμpν+(1−D)pμpν+6(1−D)ξgpμpν−8ξgpμpν+8pμpν+ξg2gμνp2−8(1−D)gμνp2+2ξggμνp2)δGlu1Glu2gs2+Nf((1−D)p2iπ2B0(p2,mq2,mq2)gs2(−((1−D)gμνp4)−gμνp4+4gμνmq2p2+2(1−D)pμpνp2+Dpμpνp2−4pμpνmq2)δGlu1Glu2−(1−D)p22iπ2A0(mq2)(−Dpμpν+2pμpν−(1−D)gμνp2−gμνp2)gs2δGlu1Glu2)
The UV divergence of the amplitude can be obtained via PaVeUVPart.
Here we also need to reintroduce the implicit 1/(2Pi)^D prefactor. Hint:
If you need the full result for the amplitude, use PaXEvaluate from
FeynHelpers.
ampDiv[0] = PaVeUVPart[amp[1], Prefactor -> 1/(2 Pi)^D] //
FCReplaceD[#, D -> 4 - 2 Epsilon] & // Series[#, {Epsilon, 0, 0}] & // Normal //
SelectNotFree2[#, Epsilon] & // Simplify
96π2εigs2δGlu1Glu2(pμpν−p2gμν)(3CAξg−13CA+4Nf)
The self-energy amplitude is usually defined as (p^2 g^{mu nu} - p^mu
p^nu) i Pi(p^2)
pi[0] = FCI[ampDiv[0]/(I SUNDelta[SUNIndex[Glu1], SUNIndex[Glu2]]*
(SPD[p, p] MTD[mu, nu] - FVD[p, mu] FVD[p, nu]))] // Cancel
−96π2εgs2(3CAξg−13CA+4Nf)
Check the final results
knownResult = -(SMP["g_s"]^2/(4 Pi)^2)*(4/3*(1/2)*Nf -
(1/2) CA (13/3 - GaugeXi[g]))*1/Epsilon;
FCCompareResults[pi[0], knownResult,
Text -> {"\tCompare to Muta, Foundations of QCD, Eqs 2.5.131-2.5.132:",
"CORRECT.", "WRONG!"}, Interrupt -> {Hold[Quit[1]], Automatic}];
Print["\tCPU Time used: ", Round[N[TimeUsed[], 4], 0.001], " s."];
\tCompare to Muta, Foundations of QCD, Eqs 2.5.131-2.5.132:CORRECT.
\tCPU Time used: 27.379 s.