Name: Alexandra Date: 03/22/18-01:28:08 PM Z
Hello,
I faced a problem calculating matrix elements at tree level.
It arises for the amplitudes containing more than 5 Gamma-matrices
between spinors, and more than 2 external vector bosons. The problem is,
that the result of ME calculation depends on the order of applying
functions DoPolarizationSums and FermionSpinSum, and the correct result
is obtained only if FermionSpinSum is used first, and DoPolarizationSums
– after. But for the shorter chains between spinors there is no such
difference.
A model example:
test=(Spinor[Momentum[k1], 0, 1] .
DiracGamma[Momentum[np]] .
DiracGamma[Momentum[k1 - p2]] .
DiracGamma[LorentzIndex[Lor2]] .
DiracGamma[Momentum[-k2 + p1]] .
DiracGamma[LorentzIndex[Lor1]] .
Spinor[Momentum[nm], 0, 1]*
Spinor[Momentum[nm], 0, 1] .
DiracGamma[Momentum[p1]] .
DiracGamma[Momentum[k1 + k2 - p2]] .
DiracGamma[Momentum[np]] .
DiracGamma[Momentum[k1 + k2]] .
DiracGamma[LorentzIndex[beta]] .
Spinor[Momentum[k1], 0, 1]*
Pair[LorentzIndex[alpha],
Momentum[nm]])*Pair[LorentzIndex[Lor1],
Momentum[Polarization[k2, I, Transversality ->
True]]]*
Pair[LorentzIndex[Lor2],
Momentum[Polarization[-k1 - k2 + p1 + p2, I,
Transversality -> True]]]*
Pair[LorentzIndex[beta],
Momentum[Polarization[k2, -I, Transversality ->
True]]]*
Pair[LorentzIndex[alpha],
Momentum[Polarization[-k1 - k2 + p1 + p2, -I,
Transversality -> True]]]
If we call
test1 =
test // FermionSpinSum // ReplaceAll[#, {DiracTrace -> Tr}] &
//
ExpandScalarProduct //
DoPolarizationSums[#, -k1 - k2 + p1 + p2, 0] & //
DoPolarizationSums[#, k2, np] & //
PropagatorDenominatorExplicit //
Simplify
and
test=test00 // DoPolarizationSums[#, -k1 - k2 + p1 + p2, 0] &
//
DoPolarizationSums[#, k2, np] & // FermionSpinSum //
ReplaceAll[#, {DiracTrace -> Tr}] & //
ExpandScalarProduct //
PropagatorDenominatorExplicit // Simplify
than test1=/=test2, and the correct result is test1.
May you explain what causes this problem, or if it is programmatically allowed in the FeynCalc to call DoPolarizationSums before FermionSpinSum?