Name: Rolf Mertig Date: 09/27/07-08:18:29 PM Z
Hi Alexander,
there is nothing wrong with your code, but a (minor) bug in
Contract. It will probably not show up once you do more complicated
integrals.
Anyway, find below a fix (which also applies to Mathematica 6 and
FeynCalc 6).
Basically all you need to do is:
Contract[a_, b_,o___?OptionQ] :=
Contract[a*b,o]/;FreeQ[a,Plus]||FreeQ[b,Plus]||LeafCount[{a,b}]<1000;
Once I finde time (or a sponsor) I will fix it in the source code.
Regards,
Rolf Mertig
GluonVision GmbH, Berlin, Germany
http://www.gluonvision.com
rolfm@gluon:~/fcbugs$ m5
Mathematica 5.2 for Linux x86 (64 bit)
Copyright 1988-2005 Wolfram Research, Inc.
– Motif graphics initialized –
In[1]:= !!fixcontract
Off[HighEnergyPhysics`FeynCalc`PartialD`PartialD::shdw];
<<HighEnergyPhysics`FeynCalc`;
(* this should in principle go into Contract.m, but can also be added
here: *)
Contract[a_, b_,o___?OptionQ] :=
Contract[a*b,o]/;FreeQ[a,Plus]||FreeQ[b,Plus]||LeafCount[{a,b}]<1000;
FI; SP[p,p]=pp; SP[p,q]=pq; SP[q,q]=qq;
ma=Sqrt[MA2];mb=Sqrt[MB2];
SetOptions[OneLoop, Dimension -> D];
$LimitTo4 = False;
integralD=FAD[{k, ma}, {k+p, mb}, {k + q, ma}]*FVD[k + p,
beta]*FVD[p - q, alpha]*FVD[2*k + q, mu];
res = OneLoop[k, integralD];
res//FCE
In[1]:= <<fixcontract
Out[1]=
I*Pi^2*(C0[pp, qq, pp - 2*pq + qq, MB2, MA2, MA2]*FV[p,
alpha]*FV[p, beta]*
FV[q, mu] - C0[pp, qq, pp - 2*pq + qq, MB2, MA2,
MA2]*FV[p, beta]*
FV[q, alpha]*FV[q, mu] + 2*FV[p,
alpha]*FV[p, beta]*FV[p, mu]*
PaVe[1, {pp, pp - 2*pq + qq, qq}, {MA2, MB2, MA2}] -
2*FV[p, beta]*FV[p, mu]*FV[q,
alpha]*PaVe[1, {pp, pp - 2*pq + qq, qq},
{MA2, MB2, MA2}] + FV[p, alpha]*FV[p,
beta]*FV[q, mu]*
PaVe[1, {pp, pp - 2*pq + qq, qq}, {MA2, MB2, MA2}] -
FV[p, beta]*FV[q, alpha]*FV[q,
mu]*PaVe[1, {pp, pp - 2*pq + qq, qq},
{MA2, MB2, MA2}] + 2*FV[p, alpha]*FV[p,
beta]*FV[q, mu]*
PaVe[2, {pp, pp - 2*pq + qq, qq}, {MA2, MB2, MA2}] -
2*FV[p, beta]*FV[q, alpha]*FV[q,
mu]*PaVe[2, {pp, pp - 2*pq + qq, qq},
{MA2, MB2, MA2}] + FV[p, alpha]*FV[q,
beta]*FV[q, mu]*
PaVe[2, {pp, pp - 2*pq + qq, qq}, {MA2, MB2, MA2}] -
FV[q, alpha]*FV[q, beta]*FV[q,
mu]*PaVe[2, {pp, pp - 2*pq + qq, qq},
{MA2, MB2, MA2}] + 2*FV[p, alpha]*MT[beta,
mu]*
PaVe[0, 0, {pp, pp - 2*pq + qq, qq}, {MA2, MB2, MA2}] -
2*FV[q, alpha]*MT[beta, mu]*PaVe[0, 0, {pp, pp