Skip to content

Commit

Permalink
Fixed a bug in ToSFAD for massive propagators.
Browse files Browse the repository at this point in the history
  • Loading branch information
vsht committed Jun 7, 2020
1 parent 86b039c commit 21add0c
Show file tree
Hide file tree
Showing 6 changed files with 94 additions and 167 deletions.
3 changes: 2 additions & 1 deletion FeynCalc/LoopIntegrals/FCLoopBasis.m
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,8 @@ included in the loop integral int (that depends on the loop momenta q1,q2,...),
];

If[ OptionValue[ToSFAD] && !FreeQ[expAsList,PropagatorDenominator],
expAsList = ToSFAD[expAsList]
expAsList = ToSFAD[expAsList];
FCPrint[3,"FCLoopBasisIntegralToPropagators: After ToSFAD: ", expAsList, FCDoControl->itpVerbose];
];


Expand Down
2 changes: 1 addition & 1 deletion FeynCalc/LoopIntegrals/ToSFAD.m
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
};

pdsConverted = pds /. {
PropagatorDenominator[a_,b_] :> StandardPropagatorDenominator[a,0,b^2,{1, optEtaSign}]
PropagatorDenominator[a_,b_] :> StandardPropagatorDenominator[a,0,-b^2,{1, optEtaSign}]
};

ruleFads = Thread[Rule[fads,fadsConverted]];
Expand Down
15 changes: 12 additions & 3 deletions Tests/LoopIntegrals/FCLoopBasis.test
Original file line number Diff line number Diff line change
Expand Up @@ -836,9 +836,18 @@ Tally -> True, FCE -> True]",
Pair[Momentum[-k2/2, D], Momentum[l, D]]) FAD[{l, 0,
2}, {-k1/2 - k2/2 + l, m}, {k1/2 - k2/2 + l, m}], {l},
MomentumCombine -> True, Tally -> False]",
"{FeynAmpDenominator[StandardPropagatorDenominator[0, -Pair[Momentum[k1 + k2, D], Momentum[l, D]]/2, 0, {-1, 1}]],
FeynAmpDenominator[StandardPropagatorDenominator[Momentum[l, D], 0, 0, {1, 1}]], FeynAmpDenominator[StandardPropagatorDenominator[-Momentum[k1, D]/2 - Momentum[k2, D]/2 + Momentum[l, D],
0, m^2, {1, 1}]], FeynAmpDenominator[StandardPropagatorDenominator[Momentum[k1, D]/2 - Momentum[k2, D]/2 + Momentum[l, D], 0, m^2, {1, 1}]]}"},
"{FeynAmpDenominator[
StandardPropagatorDenominator[
0, -Pair[Momentum[k1 + k2, D], Momentum[l, D]]/2, 0, {-1, 1}]],
FeynAmpDenominator[
StandardPropagatorDenominator[Momentum[l, D], 0, 0, {1, 1}]],
FeynAmpDenominator[
StandardPropagatorDenominator[-Momentum[k1, D]/2 -
Momentum[k2, D]/2 + Momentum[l, D], 0, -m^2, {1, 1}]],
FeynAmpDenominator[
StandardPropagatorDenominator[
Momentum[k1, D]/2 - Momentum[k2, D]/2 + Momentum[l, D],
0, -m^2, {1, 1}]]}"},
{"fcstFCLoopBasisIntegralToPropagators-ID32",
"FCLoopBasisIntegralToPropagators[GFAD[{p1.q p2.q + x}] SFAD[p1], {p1, p2}, FCE -> True]",
"{GFAD[{{x + p1.q p2.q, 1}, 1}], SFAD[{{p1, 0}, {0, 1}, 1}]}"},
Expand Down
4 changes: 2 additions & 2 deletions Tests/LoopIntegrals/FCLoopMixedToCartesianAndTemporal.test
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,8 @@ FCE->True]", "-CFAD[{{0, p . q}, {-(TC[p]*TC[q]), -1}, 3}]"},
{"fcstFCLoopMixedToCartesianAndTemporal-ID19",
"FCLoopMixedToCartesianAndTemporal[ \
FCI[TC[k]FAD[{k,m3},{k-pH,m2},{k-pE1,pPH}]],{k},FCE\[Rule]True]",
"-(CFAD[{{k, 0}, {-m3^2 - TC[k]^2, -1}, 1}, {{k - pH, 0}, {-m2^2 - \
TC[k - pH]^2, -1}, 1}, {{k - pE1, 0}, {-pPH^2 - TC[k - pE1]^2, -1}, \
"-(CFAD[{{k, 0}, {m3^2 - TC[k]^2, -1}, 1}, {{k - pH, 0}, {m2^2 - \
TC[k - pH]^2, -1}, 1}, {{k - pE1, 0}, {pPH^2 - TC[k - pE1]^2, -1}, \
1}]*TC[k])"},
{"fcstFCLoopMixedToCartesianAndTemporal-ID20",
"FCLoopMixedToCartesianAndTemporal[FCI[TC[k] FVD[k,mu] \
Expand Down
Loading

0 comments on commit 21add0c

Please sign in to comment.