Name: Vladyslav Shtabovenko Date: 05/30/17-10:30:16 PM Z


Hi Marco,

the issue with OneLoop is that currently it is a sort of “legacy”
function which does some D->4 limits that are not always
safe. The error messages that you encounter come from other FeynCalc
functions “complaining” about the behavior of OneLoop.

This is why I usually recommend to avoid it for the time being and use
TID instead:

num = GAD[\[Rho]].(GSD[k] + GSD[q] +
      M).GAD[\[Mu]].GAD[\[Rho]].(GSD[k]

TID[num FAD[{k + q + r, SmallVariable[\[Lambda]]}, {k + q, M}, {k,
     SmallVariable[\[Lambda]]}, {k - p, m}], k]

TID[num FAD[{k + q + r, SmallVariable[\[Lambda]]}, {k + q, M}, {k,
     SmallVariable[\[Lambda]]}, {k - p, m}], k, UsePaVeBasis -> True]

P.S. I started rewriting/improving OneLoop earlier, but it is a
very big chunk of work that will take me several months to complete.
When it comes to tensor reduction, TID is much more flexible than
OneLoop and is also well tested.

Cheers,
Vladyslav

Am 30.05.2017 um 11:00 schrieb Marco Rocco:
> Hi,
>
> When I run this on FeynCalc 9.2.0:
>
> GAD[\[Rho]].(GSD[k] + GSD[q] + M).GAD[\[Mu]] .GAD[\[Rho]].(GSD[k] -
> GSD[p] + m).GAD[\[Mu]];
> num = DiracSimplify[%] // FullSimplify;
>
> amp = num FeynAmpDenominator[
> PropagatorDenominator[k + q + r, SmallVariable[\[Lambda]]],
> PropagatorDenominator[k + q, M],
> PropagatorDenominator[k, SmallVariable[\[Lambda]]],
> PropagatorDenominator[k - p, m]]
>
> SetOptions[OneLoop, Dimension -> D];
>
> res = (-I/Pi^2) OneLoop[k, amp] // FullSimplify
>
> I get this message from OneLoop:
>
> DiracTrick::failmsg: Error! DiracTrick has encountered a fatal problem and must abort the computation. The problem reads: Incorrect combination of dimensions and g^5 scheme!
>
> but I don’t know why, since my calculations don’t involve g^5 and it seems to me to use a correct combination of dimensions.
>
> If I rewrite the numerator already simplified by DiracSimplify without “.” (Dirac dot) between DiracSlash, I don’t get the message and FC starts running. Anyway, I don’t know if the final result is correct without “.”.
>
> Could someone explain to me what’s happening?
>
> Thanks a lot,
> Marco
>