Name: Vladyslav Shtabovenko (email_not_shown)
Date: 01/20/17-03:51:16 PM Z


Am 20.01.2017 um 15:18 schrieb Pablo Sanchez Puertas:
> Hello
> thanks and congratulations for the program.
> I am using FeynCalc in a 1-loop calculation where the 5-point E0 function comes into play. I experienced two problems:
> First, if using ToPaVe, the resulting expression cannot be used to evaluate the numerics in LoopTools. The underlying problem is that the inputs for such a function are not those required from LoopTools.
> It works instead if in the file ToPaVe.m the code for E0 function is modified as follows:
> (* E0 *)
> toPaVe[ FeynAmpDenominator[
> PD[Momentum[q_,dim_],m1_],
> PD[Momentum[q_,dim_]+p1_:0,m2_],
> PD[Momentum[q_,dim_]+p2_:0,m3_],
> PD[Momentum[q_,dim_]+p3_:0,m4_],
> PD[Momentum[q_,dim_]+p4_:0,m5_]],q_,
> paveao_,pavear_
> ]:=
> I Pi^2 PaVeOrder[PaVe[0,
> {ExpandScalarProduct[Pair[p1,p1]],
> ExpandScalarProduct[Pair[p1-p2,p1-p2]],
> ExpandScalarProduct[Pair[p2-p3,p2-p3]],
> ExpandScalarProduct[Pair[p3-p4,p3-p4]],
> (* Modification: Additional invariant added *)
> ExpandScalarProduct[Pair[p4,p4]],
> (* End of modification *)
> ExpandScalarProduct[Pair[p2,p2]],
> ExpandScalarProduct[Pair[p1-p3,p1-p3]],
> ExpandScalarProduct[Pair[p2-p4,p2-p4]],
> (* Modification: Additional invariant added *)
> ExpandScalarProduct[Pair[p3,p3]],
> (* End of modification *)
> ExpandScalarProduct[Pair[p1-p4,p1-p4]]}
> ,{m1^2,m2^2,m3^2,m4^2,m5^2},
> PaVeAutoOrder->paveao,
> PaVeAutoReduce->pavear]]/; !genpave;
> I was wondering if this function could be easily implemented in the future to use it as analog to the A0, B0, C0 and D0 cases via ToPaVe and FeynCalc`E0[a___] -> LoopTools`E0[a].

thanks for your mail. Actually, this bug was already fixed on the 6th of
December last year


As explained in


the stable version receives bug fixes via the hotfix-stable branch on
GitHub, so it is always worth checking

from time to time and reinstalling FeynCalc via


In the latest stable version ToPaVe can handle any number of legs,
according the Denner's formula in the appendix of Appendix A of
arXiv:1604.06792, so things like

ToPaVe[FAD[{q, m1}, {q + p1, m2}, {q + p2, m3}, {q + p3, m4}, {q + p4,
     m5}, {q + p5, m6}], q]


ToPaVe[FAD[{q, m1}, {q + p1, m2}, {q + p2, m3}, {q + p3, m4}, {q + p4,
     m5}, {q + p5, m6}, {q + p6, m7}], q]

also work.

> Second, if using OneLoop[] to evaluate the E0 scalar function instead, FeynCalc decomposes in terms of the corresponding 4-point (D0) functions. However, I obtain numerically the opposite sign that I obtain using the 'Denner Dittmaier' (doi:10.1016/S0550-3213(03)00184-6) algorithm to decompose in terms of D0 functions myself or either LoopTools.
> I would appreciate if you could possibly explain where the reduction of E0 to D0's is located in FeynCalc in order to (possibly) check on the sign.

*Sigh* I usually recommend people not to use OneLoop, as this function
turns out to be an infinite source of bugs...

Furthermore, one has to keep in mind that the E0 reduction used in
OneLoop is valid only when IR divergences are regularized with fake
masses, but not dimensionaly. However, this also applies to the paper
that you are referring to, so I guess that you are aware of that.

Anyhow, the reduction implemented in OneLoop uses Eq. 4.54 from

In the development version (master branch) I recently extracted that
piece of code from OneLoop and moved it into LoopIntegrals/NPointTo4Point.m


You can switch to the development version via

InstallFeynCalc[InstallFeynCalcDevelopmentVersion -> True]

Could you provide some detailed examples where you believe that the
overall(?) sign is incorrect? Then I could look into it in the next
couple of days.


> Thanks in advance,
> Pablo

This archive was generated by hypermail 2b29 : 02/25/17-12:20:01 PM Z CET