feyncalc icon indicating copy to clipboard operation
feyncalc copied to clipboard

FermionSpinSum fails with spinor of combined momenta

Open ChiMaoShuPhy opened this issue 2 years ago • 1 comments

  • Your Mathematica version

```12.3.1 for Linux x86 (64-bit) (June 24, 2021)``

  • Your FeynCalc version

9.3.1

  • Did you try to reinstall FeynCalc (stable version) using the automatic installer to make sure that you have the latest bugfixes?

Yes

  • Does your Mathematica initialization file contain statements that might influence the behavior of FeynCalc? Sometimes external packages may modify `init.m` in unusual ways, causing troubles for other codes.

no

  • The ```FermionSpinSum``` fails if the spinor contains combination of momenta such as p+k, p/2+k

SpinorUBar[p,m].SpinorU[p,m]//FermionSpinSum works SpinorUBar[p+k,m].SpinorU[p+k,m]//FermionSpinSum reports error FermionSpinSum: Error! FermionSpinSum encountered a fatal problem and must abort the computation. The problem reads: The input contains Spinor objects with incorrect syntax.

  • Same error was reported for SpinorV and SpinorVBar

ChiMaoShuPhy avatar Apr 13 '22 11:04 ChiMaoShuPhy

I'm aware of this behavior, but I don't really see a way to fix this.

Functions that deal with spinor chains expect each spinor to depend on a single momentum like p or q. This is mainly related to the way how FeynCalc figures out whether the given Spinor is a u, v, ubar or vbar. The sign of the momentum is crucial here, cf.

https://feyncalc.github.io/FeynCalcBookDev/Spinor.html

Now if you make a spinor depend on a linear combination of momenta, all this machinery breaks down and one runs into very weird bugs, cf. https://github.com/FeynCalc/feyncalc/issues/76 The worst thing is that you'd get incorrect results without even noticing this. This is why I explicitly added a check to forbid such input.

For nonrelativistic expansions of spinor chains I advocate the approach where one first rewrites everything in terms of Pauli matrices and stuff (using FeynOnium routines) and then substitutes the decomposition of the heavy particles momenta with FCReplaceMomenta. This is how I handle this in my calculations.

vsht avatar Apr 13 '22 11:04 vsht