The overall sign of an amplitude i \mathcal{M} is always a convention. It does not have to agree between different textbooks and papers and there is nothing wrong with that. Nevertheless, it should be always possible to trace the origins of various signs appearing in different pieces of the amplitude. Understanding how the overall sign comes about allows you to adjust it to the convention you prefer.
The amplitude generated by FeynArts’ CreateFeynAmp
function has three sources of signs that contribute to the final overall sign. These are the overall prefactor, the definition of the vertices and the fermion sign.
CreateFeynAmp
generates i \mathcal{M} multiplied by the value of the option PreFactor
.-I*(2Pi)^(-4 LoopNumber)
.PreFactor
to 1
as in CreateFeynAmp[diags, PreFactor -> 1]
.The signs in the vertices always depend on the model under consideration. The built-in SM
model is based on the conventions used in arXiv:0709.1075. This means that
This FeynArts vertex convention agrees with the one used in Gauge Theories of the Strong and Electroweak Interaction by M. Bohm, A. Denner and H. Joos. However, it disagrees with the convention in An Introduction to Quantum Field Theory by M. Peskin and D. Schroeder. There the QED electron-photon vertex is proportional to - i e \gamma^\mu, the QCD quark-gluon vertex amounts to i g_s \gamma^\mu and the quark-photon vertex yields i Q g_s \gamma^\mu.
Notice also that models generated with FeynRules will agree with FeynArts on the QED vertex convention but disagree on the sign of the QCD vertex.
Diagrams with external fermions receive additional signs that stem from the anticommuting properties of Grassmann fields when applying Wick’s theorem. One of the simplest processes that exhibits this effect is the tree-level QED Bhabha scattering e^+ e^- \to e^+ e^-. There are no ambiguities regarding the fact that both amplitudes have a relative minus sign. However, we are free to choose which of the two amplitudes should be multiplied by +1
and which by -1
.
The fermion sign algorithm implemented in FeynArts (flip rules) is described in Section 6.6 of the program manual. In the case of the process e^- e^+ \to e^- e^+ the s-channel diagram is multiplied by -1, while the t-channel diagram receives a prefactor of +1. However, if one generates the physically equivalent process e^- e^+ \to e^+ e^-, the signs will flip due to the reversed ordering of the final state particles.
Since March 2022 FeynArts features an option to make the fermion sign of each diagram explicit. To this end you just need to evaluate FermionSign = fSign;
before generating the diagrams. Here fSign
is a head that will be wrapped around fermion signs. In the case of the Bhabha scattering you can explicitly see that
= InsertFields[CreateTopologies[0, 2 -> 2], {F[2, {1}], -F[2, {1}]} ->
diagsV1 {F[2, {2}], -F[2, {2}]}, InsertionLevel -> {Classes}, Restrictions -> QEDOnly];
[diagsV1,PreFactor->1] CreateFeynAmp
contains fSign[-1]
, while
= InsertFields[CreateTopologies[0, 2 -> 2], {F[2, {1}], -F[2, {1}]} ->
diagsV2 {-F[2, {2}], F[2, {2}]}, InsertionLevel -> {Classes}, Restrictions -> QEDOnly];
[diagsV2,PreFactor->1] CreateFeynAmp
has fSign[1]
.
If you are doing a calculation where the overall sign of the amplitude must agree with a particular convention, follow these steps
PreFactor
of CreateFeynAmp
to 1
to generate i \mathcal{M}.FermionSign = fSign;
to figure out the fermion sign of each diagram. If it doesn’t agree with your convention, flips the signs for all diagrams in the given process via amps/. fSign[x_] :> -x
. This will preserve the physical relative signs but change the conventional overall sign.