FCDiracIsolate
FCDiracIsolate[exp]
wraps chains of Dirac matrices into heads specified by the user.
See also
Overview, DiracGamma, Spinor.
Examples
FCDiracIsolate
provides an easy way to extract the Dirac structures present in the expression (e.g. an amplitude)
amp = (Spinor[Momentum[p2], SMP["m_u"], 1] . (-I GA[\[Mu]] SMP["g_s"] SUNTF[{Glu2},
Col3, Col5]) . (GS[-k1 + p2] + SMP["m_u"]) . (-I GA[\[Nu]] SMP["g_s"] SUNTF[{Glu4},
Col5, Col1]) . Spinor[Momentum[p1], SMP["m_u"], 1] FAD[{k1 - p2,
SMP["m_u"]}, Dimension -> 4] FV[Polarization[k1, I], \[Mu]] FV[Polarization[k2, -I],
\[Nu]] + Spinor[Momentum[p2], SMP["m_u"], 1] . (-I GA[\[Nu]] SMP["g_s"] SUNTF[{Glu4},
Col3, Col5]) . (GS[k2 + p2] + SMP["m_u"]) . (-I GA[\[Mu]] SMP["g_s"] SUNTF[{Glu2},
Col5, Col1]) . Spinor[Momentum[p1], SMP["m_u"], 1] FAD[{-k2 - p2, SMP["m_u"]},
Dimension -> 4] FV[Polarization[k1, I], \[Mu]] FV[Polarization[k2,
-I], \[Nu]] - Spinor[Momentum[p2], SMP["m_u"], 1] . (-I GA[Lor3] SMP["g_s"] SUNTF[{Glu5},
Col3, Col1]) . Spinor[Momentum[p1], SMP["m_u"], 1] FAD[-k1 + k2,
Dimension -> 4] FV[Polarization[k1, I], \[Mu]] FV[Polarization[k2, -I],
\[Nu]] MT[Lor3, Lor4] (FV[2 k1 - k2, \[Nu]] MT[Lor4, \[Mu]] + FV[-k1 + 2 k2, \[Mu]] MT[Lor4,
\[Nu]] + FV[-k1 - k2, Lor4] MT[\[Mu], \[Nu]]) SMP["g_s"] SUNF[Glu2, Glu4, Glu5])
(k1−p2)2−mu2εˉμ(k1)εˉ∗ν(k2)(φ(p2,mu)).(−igsγˉμTCol3Col5Glu2).(γˉ⋅(p2−k1)+mu).(−igsγˉνTCol5Col1Glu4).(φ(p1,mu))+(−k2−p2)2−mu2εˉμ(k1)εˉ∗ν(k2)(φ(p2,mu)).(−igsγˉνTCol3Col5Glu4).(γˉ⋅(k2+p2)+mu).(−igsγˉμTCol5Col1Glu2).(φ(p1,mu))−(k2−k1)21gsgˉLor3Lor4εˉμ(k1)εˉ∗ν(k2)fGlu2Glu4Glu5(gˉLor4μ(2k1−k2)ν+gˉLor4ν(2k2−k1)μ+gˉμν(−k1−k2)Lor4)(φ(p2,mu)).(−igsγˉLor3TCol3Col1Glu5).(φ(p1,mu))
ampIso = FCDiracIsolate[amp, Head -> diracS]
−(−k2−p2)2−mu2gs2εˉμ(k1)εˉ∗ν(k2)TCol5Col1Glu2TCol3Col5Glu4diracS((φ(p2,mu)).γˉν.(γˉ⋅(k2+p2)+mu).γˉμ.(φ(p1,mu)))−(k1−p2)2−mu2gs2εˉμ(k1)εˉ∗ν(k2)TCol5Col1Glu4TCol3Col5Glu2diracS((φ(p2,mu)).γˉμ.(γˉ⋅(p2−k1)+mu).γˉν.(φ(p1,mu)))+(k2−k1)21igs2gˉLor3Lor4εˉμ(k1)εˉ∗ν(k2)TCol3Col1Glu5fGlu2Glu4Glu5(gˉμν(−(k1+k2)Lor4)−gˉLor4ν(k1−2k2)μ+gˉLor4μ(2k1−k2)ν)diracS((φ(p2,mu)).γˉLor3.(φ(p1,mu)))
Now that all Dirac structures are wrapped into the head diracS
it is easy to extract them to a separate list
{diracS((φ(p2,mu)).γˉLor3.(φ(p1,mu))),diracS((φ(p2,mu)).γˉμ.(γˉ⋅(p2−k1)+mu).γˉν.(φ(p1,mu))),diracS((φ(p2,mu)).γˉν.(γˉ⋅(k2+p2)+mu).γˉμ.(φ(p1,mu)))}
This way we obtain a sorted list of all unique Dirac structures in amp
.
ClearAll[amp, ampIso, diracS]