In the file HighEnergyPhysics/fctools/Uncontract.m
do the following:
(* After these 9 lines: *)
If[!FreeQ[nex, DiracGamma],
nex = nex /. DiracGamma -> dirg;
nex = nex //. dirg[Momentum[q,d___],b___] :>
(li = LorentzIndex[a$AL[inc=inc+1],If[dim===Automatic,seq[d],dim]];
Pair[Momentum[q,If[dim===Automatic,seq[d],dim]], li] *
dirg[lidr[li],If[dim===Automatic,seq[d],dim]]
) /. dirg -> DiracGamma;
nex = DotSimplify[nex,Expanding -> False];
];
(* **** add the following lines: *)
If[!FreeQ[nex, (tf_/;!MemberQ[{DiracGamma,Pair},tf])[___,Momentum[q,___],___]],
nex = nex //. { (tf_/;!MemberQ[{DiracGamma,Pair},tf])[a___,Momentum[q,d___],b___] :>
(li = LorentzIndex[a$AL[inc=inc+1],If[dim===Automatic,seq[d],dim]];
tf[a, li, b] Pair[Momentum[q,If[dim===Automatic,seq[d],dim]],lidr[li]]
)
}
];
This archive was generated by hypermail 2b29 : 09/04/20-12:55:05 AM Z CEST