Name: Maksym Date: 02/04/18-01:43:56 PM Z


Hi!

I’m trying to evaluate some squared amplitude. My code looks as follows:

{ScalarProduct[p3, p3] = m\[Chi]^2, ScalarProduct[p1, p1] = m\[Chi]^2,
   ScalarProduct[p2, p2] = mp^2, ScalarProduct[p4, p4] = mp^2,
  ScalarProduct[p1, p2] =
   Sqrt[p^2 + m\[Chi]^2] Sqrt[p^2 + mp^2] + p^2 ,
  ScalarProduct[p1, p3] =
   Sqrt[p^2 + m\[Chi]^2] Sqrt[q^2 + m\[Chi]^2] - p*q*Cos[\[Theta]],
  ScalarProduct[p1, p4] =
   Sqrt[p^2 + m\[Chi]^2] Sqrt[q^2 + mp^2] + p*q*Cos[\[Theta]],
  ScalarProduct[p2, p3] =
   Sqrt[p^2 + mp^2] Sqrt[q^2 + m\[Chi]^2] + p*q*Cos[\[Theta]],
  ScalarProduct[p2, p4] =
   Sqrt[p^2 + mp^2] Sqrt[q^2 + mp^2] - p*q*Cos[\[Theta]],
  ScalarProduct[p3, p4] =
   Sqrt[q^2 + m\[Chi]^2] Sqrt[q^2 + mp^2] + q^2};

Print[“Amplitude:”]
amplitude =
 1/(ScalarProduct[p1 - p3, p1 - p3] -
       m\[Phi]^2) g\[Phi]\[Chi]\[Chi] yN Sin[\[Alpha]] SpinorUBar[p4,
      mp].SpinorU[p2,
      mp] SpinorUBar[p3, m\[Chi]].SpinorU[p1, m\[Chi]]/(1 -
       ScalarProduct[p1 - p3, p1 - p3]/pel^2)^2 // Contract // Simplify
amplitudec = ComplexConjugate[amplitude];
Print[“Squared amplitude:”]
fermionsummedamplitude[p_, q_, m\[Chi]_, mp_, g\[Phi]\[Chi]\[Chi]_,
  yN_, \[Alpha]_, pel_] =
 FermionSpinSum[amplitude amplitudec] /. DiracTrace -> TR //
   Contract // Simplify

However, the scalar products aren’t substituted in the denominator of expression (although they’re substituted in the numerator), so the output looks like

…/((p1-p3)^2 - mphi^2)^2(pel^2 - (p1-p3)^2)^4.

Could you please tell me what is the reason for this and how to force FeynCalc to substitute the scalar products in the denominator?