FeynCalc manual (development version)

FCTraceExpand

FCTraceExpand[exp] expands traces of Dirac and SU(N)SU(N) matrices using linearity of the trace. The traces themselves are not evaluated.

See also

Overview, DiracTrace, SUNTrace.

Examples

ex = DiracTrace[GA[\[Mu]] . (GS[p1] + m1) . GA[\[Nu]] . (GS[p2] + m2) . GA[\[Rho]] +x]

tr(γˉμ.(γˉp1+m1).γˉν.(γˉp2+m2).γˉρ+x)\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}+\text{m1}\right).\bar{\gamma }^{\nu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}+\text{m2}\right).\bar{\gamma }^{\rho }+x\right)

FCTraceExpand[ex]

m1  m2  tr(γˉμ.γˉν.γˉρ)+m1  tr(γˉμ.γˉν.(γˉp2).γˉρ)+m2  tr(γˉμ.(γˉp1).γˉν.γˉρ)+tr(γˉμ.(γˉp1).γˉν.(γˉp2).γˉρ)+tr(1)x\text{m1} \;\text{m2} \;\text{tr}\left(\bar{\gamma }^{\mu }.\bar{\gamma }^{\nu }.\bar{\gamma }^{\rho }\right)+\text{m1} \;\text{tr}\left(\bar{\gamma }^{\mu }.\bar{\gamma }^{\nu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}\right).\bar{\gamma }^{\rho }\right)+\text{m2} \;\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}\right).\bar{\gamma }^{\nu }.\bar{\gamma }^{\rho }\right)+\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}\right).\bar{\gamma }^{\nu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}\right).\bar{\gamma }^{\rho }\right)+\text{tr}(1) x

FCTraceExpand[ex, DotSimplify -> False]

tr(γˉμ.(γˉp1+m1).γˉν.(γˉp2+m2).γˉρ)+tr(1)x\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}+\text{m1}\right).\bar{\gamma }^{\nu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}+\text{m2}\right).\bar{\gamma }^{\rho }\right)+\text{tr}(1) x

FCTraceExpand[ex, DiracTrace -> False]

tr(γˉμ.(γˉp1+m1).γˉν.(γˉp2+m2).γˉρ+x)\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}+\text{m1}\right).\bar{\gamma }^{\nu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}+\text{m2}\right).\bar{\gamma }^{\rho }+x\right)

a*DiracTrace[GA[\[Mu]] . (GS[p1] + m1) . GA[\[Nu]]] + b*DiracTrace[GA[\[Mu]] . (GS[p2] + m2) . GA[\[Nu]]] 
 
FCTraceExpand[%, Momentum -> {p1}]

a  tr(γˉμ.(γˉp1+m1).γˉν)+b  tr(γˉμ.(γˉp2+m2).γˉν)a \;\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}+\text{m1}\right).\bar{\gamma }^{\nu }\right)+b \;\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}+\text{m2}\right).\bar{\gamma }^{\nu }\right)

a(m1  tr(γˉμ.γˉν)+tr(γˉμ.(γˉp1).γˉν))+b  tr(γˉμ.(γˉp2+m2).γˉν)a \left(\text{m1} \;\text{tr}\left(\bar{\gamma }^{\mu }.\bar{\gamma }^{\nu }\right)+\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p1}}\right).\bar{\gamma }^{\nu }\right)\right)+b \;\text{tr}\left(\bar{\gamma }^{\mu }.\left(\bar{\gamma }\cdot \overline{\text{p2}}+\text{m2}\right).\bar{\gamma }^{\nu }\right)

At the moment SUNTrace automatically expands its content, so here FCTraceExpand is not needed. However, this may change in future.

ex = SUNTrace[SUNT[i, j, k] + SUNT[l, m, n]]

tr(Ti.Tj.Tk)+tr(Tl.Tm.Tn)\text{tr}(T^i.T^j.T^k)+\text{tr}(T^l.T^m.T^n)

FCTraceExpand[ex]

tr(Ti.Tj.Tk)+tr(Tl.Tm.Tn)\text{tr}(T^i.T^j.T^k)+\text{tr}(T^l.T^m.T^n)

FCTraceExpand[ex, SUNTrace -> False]

tr(Ti.Tj.Tk)+tr(Tl.Tm.Tn)\text{tr}(T^i.T^j.T^k)+\text{tr}(T^l.T^m.T^n)