Name: Vladyslav Shtabovenko Date: 10/14/16-04:35:04 PM Z
Hi,
after 12 years here is the resolution:
What goes wrong in this calculation is that you use 4-dim Dirac matrices
(GA) to write down the trace.
So the trace in t remains unevaluated and gets converted to D-dims when
OneLoop is executed. The trace
in s, however, has already been computed by TR in 4-dims (which is
inconsistent for a D-dim loop integral in DR), so the output you get
from evaluating s with OneLoop is not correct.
The lesson to learn from here is that one should *never* mix D-dim and
4-dim quantities when working
with purely D-dim amplitudes. When you want to write D-dim Dirac
matrices use GAD and GSD instead of GA and GS. Otherwise things like
this happen.
And here is the correct code:
ex = I ((el^2)/(16 Pi^4 (1 - D)))FAD[{q, mf}, {q - k, mf}] DiracTrace[(mf + GS[q - k]).GA[i].(mf + GS[q]).GA[i]]
t = ChangeDimension[ex, D]
s = ChangeDimension[ex, D] /. DiracTrace -> TR
r1 = OneLoop[q, t]
r2 = OneLoop[q, s]
(r1 - r2) // Simplify // PaVeReduce
which returns 0 as it should.
P.S. I guess it might be better to redesign the Dimension option in TID and OneLoop and make them abort the calculation when someone tries to compute things like TID[GS[q].GS[p] FAD[{q,m1},{q+p,m2}],q] …
Cheers
Vladyslav
> Hi,
>
> I have some questions about DiracTrace & TR functions. Here “t” and
“s” are only different in
> the trace function DiracTrace or TR. By using OneLoop, I suppose the
result “rst1-rst2” should
> be zero, but the output is not.
>
>
(****************************************************************************)
> \!\(t = I\ \(el\^2\/\(16\ \(Pi\^4\) \((
> 1 - D)\)\)\) FAD[{q, mf}, {q - k, mf}]
DiracTrace[\((mf + GS[q -
> k])\) . GA[¦Ì] . \((mf + GS[q])\) .
> GA[¦Ì]]\ // \ FCI\[IndentingNewLine]
> s = I\ \(el\^2\/\(16\ \(Pi\^4\) \((1 - D)\)\)\)
FAD[{q,
> mf}, {q - k, mf}] TR[\((mf + GS[q - k])\) .
GA[¦Ì] . \((mf +
> GS[q])\) . GA[¦Ì]]\ // \ FCI\)
> OneLoop[q, t]
> rst1 = FullSimplify[%]
> OneLoop[q, s]
> rst2 = FullSimplify[%]
> rst1 - rst2 // Simplify
>
(****************************************************************************)
>
> The attachment is the full file (Trace.nb) with outputs.
>
> Anther question is about the option “TraceOfOne”. FeynCalc sets
“TraceOfOne->4” in both
> DiracTrace & TR functions in the usual cases. What I want to know is
wether I should
> set “TraceOfOne->D” when I do some calculations in D-dimension.
>
> Best regards,
>
> Zhiwei Huang,
> Wuhan University, PRC