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