**Next message:**Marcela: "OneLoop Dimension D"**Previous message:**Nikita Belyaev: "Re: Wrong imaginary part of the trace"**In reply to:**Nikita Belyaev: "Re: Wrong imaginary part of the trace"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ]**Mail actions:**[ respond to this message ] [ mail a new topic ]

Hi Nikita,

the thing is that to compute traces of gamma matrices,

the current version of FeynCalc uses West's formula

<http://www.sciencedirect.com/science/article/pii/001046559390011Z>

This formula was originally derived to treat gamma^5 in dimensional

regularization (using the t'Hooft-Veltman scheme) but it also has the

nice property that in 4 dimensions the results are equivalent to what

you get when using the usual trace of gamma matrices.

Unfortunately, it is not always easy to see that equivalence. Schouten's

identities implemented in FeynCacl are helpful (using Schouten[expr_]),

but not when there are too many Lorentz indices.

In this sense, the results you get are correct, but they are written

in a somewhat different way as compared to the usual trace.

You can use FeynCalcFormLink to outsource the trace computations to FORM

which should give you the result in the form you want.

For example,

(*run this only once!*)

Import["http://www.feyncalc.org/formlink/install.m"]

(*-------------------*)

Needs["FeynCalcFormLink`"]

$LeviCivitaSign = -1;

Tr1a = DiracTrace[

GS[P1].GS[P2].GS[P3].GS[P4].GS[P5].GA[i].(1 - GA[5])];

Tr2a = DiracTrace[

GS[Q1].GS[Q2].GS[Q3].GS[Q4].GS[Q5].GA[i].(1 - GA[5])];

Tr3a = DiracTrace[

GS[P1].GS[P2].GS[P3].GS[P4].GS[P5].GA[i].GS[Q1].GS[Q2].GS[Q3].GS[

Q4].GS[Q5].GA[i].(1 - GA[5])];

FeynCalcFormLink[Tr1a.Tr2a + 2 Tr3a]

gives you zero right away.

Cheers,

Vladyslav

On 04/08/14 11:01, Nikita Belyaev wrote:

*> Hi Vladislav,
*

*>
*

*> Thanks for the response, in this particular case it works.
*

*> But if I add two gamma matrixes to the formula
*

*>
*

*> Tr1a = Tr[GS[P1].GS[P2].GS[P3].GS[P4].GS[P5].GA[i].(1 - GA[5])];
*

*> Tr1a = Tr[GS[P1].GS[P2].GS[P3].GS[P4].GS[P5].GA[i].(1 - GA[5])];
*

*> Tr3a = Tr[GS[P1].GS[P2].GS[P3].GS[P4].GS[P5].GA[i].GS[Q1].GS[Q2].GS[Q3].GS[Q4].GS[Q5].GA[i].(1 - GA[5])];
*

*>
*

*> Result = Simplify[Contract[Tr1a.Tr2a + 2 Tr3a]] // Schouten
*

*>
*

*> the result is non zero again.
*

*>
*

*> The source of my concern is the following matrix element
*

*>
*

*> Tr1e = Tr[GA[i].(GS[p2] - m).GA[k].(GS[p1] + m)];
*

*> Tr2e = Tr[(GS[p] - m).GA[k].(GS[p] + GS[p1] + GS[p2] -
*

*> m).GA[l].GS[k2].GA[m].(1 - GA[5])];
*

*> Tr3e = Tr[
*

*> GS[k1].GA[l].(GS[q] - u).(1 + GA[5].GS[s]).GA[i].(GS[q] -
*

*> GS[p1] - GS[p2] - u).GA[m].(1 - GA[5])];
*

*> Tr4e = Tr[(GS[p] + GS[p1] + GS[p2] - m).GA[i].(GS[p] -
*

*> m).GA[l].GS[k2].GA[m].(1 - GA[5])];
*

*> Tr5e = Tr[
*

*> GS[k1].GA[l].(GS[q] - GS[p1] - GS[p2] - u).GA[k].(GS[q] -
*

*> u).(1 + GA[5].GS[s]).GA[m].(1 - GA[5])];
*

*> TrA1A2 = Simplify[Contract[Tr1e.(Tr2e.Tr3e + Tr4e.Tr5e)]] // Schouten
*

*>
*

*> which again contains imaginary part while it should be real.
*

*>
*

*> Is there some rules I have to follow when calculating terms with a lot of gamma matrixes to get a correct result?
*

*>
*

*> Best Regards,
*

*> Nikita Belyaev
*

*>
*

**Next message:**Marcela: "OneLoop Dimension D"**Previous message:**Nikita Belyaev: "Re: Wrong imaginary part of the trace"**In reply to:**Nikita Belyaev: "Re: Wrong imaginary part of the trace"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ]**Mail actions:**[ respond to this message ] [ mail a new topic ]

*
This archive was generated by hypermail 2b29
: 02/28/17-08:40:01 AM Z CET
*