ApartFF[amp, {q1, q2, ...}]
partial fractions loop
integrals by decomposing them into simpler integrals that contain only
linearly independent propagators. It uses FCApart
as a
backend and is equally suitable for 1-loop and multi-loop integrals.
FCApart
implements an algorithm based on arXiv:1204.2314 by F. Feng
that seems to employ a variety Leinartas’s algorithm (cf. arXiv:1206.4740). Unlike
Feng’s $Apart that is
applicable to general multivariate polynomials, FCApart
is
tailored to work only with FeynCalc’s FeynAmpDenominator
,
Pair
and CartesianPair
symbols, i.e. it is
less general in this respect.
ApartFF[amp * extraPiece1, extraPiece2, {q1, q2, ...}]
is a special working mode of ApartFF
, where the final
result of partial fractioning amp*extraPiece1
is multiplied
by extraPiece2
. It is understood, that
extraPiece1*extraPiece2
should be unity, e. g. when
extraPiece1
is an FAD
, while extraPiece is an
SPD
inverse to it. This mode should be useful for
nonstandard integrals where the desired partial fraction decomposition
can be performed only after multiplying amp
with
extraPiece1
.
Overview, FCApart, FeynAmpDenominatorSimplify.
[] FCClearScalarProducts
[q, q] FAD[{q, m}]
SPD
[%, {q}] ApartFF
\frac{q^2}{q^2-m^2}
\frac{m^2}{q^2-m^2}
[q, p] SPD[q, r] FAD[{q}, {q - p}, {q - r}]
SPD
[%, {q}] ApartFF
\frac{(p\cdot q) (q\cdot r)}{q^2.(q-p)^2.(q-r)^2}
\frac{p^2 r^2}{4 q^2.(q-r)^2.(q-p)^2}+\frac{p^2+2 (q\cdot r)+2 r^2}{4 q^2.(-p+q+r)^2}+-\frac{p^2}{4 q^2.(q-p)^2}-\frac{r^2}{4 q^2.(q-r)^2}
[{q}, {q - p}, {q + p}]
FAD
[%, {q}] ApartFF
\frac{1}{q^2.(q-p)^2.(p+q)^2}
\frac{1}{p^2 q^2.(q-p)^2}-\frac{1}{p^2 q^2.(q-2 p)^2}
[p, q1] SPD[p, q2]^2 FAD[{q1, m}, {q2, m}, q1 - p, q2 - p, q1 - q2]
SPD
[%, {q1, q2}] ApartFF
\frac{(p\cdot \;\text{q1}) (p\cdot \;\text{q2})^2}{\left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-p)^2.(\text{q2}-p)^2.(\text{q1}-\text{q2})^2}
\frac{\left(m^2+p^2\right)^3}{8 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q1}-\text{q2})^2.(\text{q1}-p)^2}-\frac{\left(m^2+p^2\right)^2}{4 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-\text{q2})^2.(\text{q1}-p)^2}+\frac{\left(m^2+p^2\right) \left(m^2+2 p^2\right)}{4 \;\text{q2}^2.\text{q1}^2.\left((\text{q1}-p)^2-m^2\right).(\text{q1}-\text{q2})^2}-\frac{\left(m^2+p^2\right) (p\cdot \;\text{q1})}{4 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q1}-\text{q2})^2}-\frac{\left(m^2+p^2\right) (p\cdot \;\text{q1})}{4 \;\text{q2}^2.\text{q1}^2.(\text{q1}-\text{q2})^2.\left((\text{q2}-p)^2-m^2\right)}-\frac{p\cdot \;\text{q1}}{4 \left(\text{q2}^2-m^2\right).(\text{q1}-\text{q2})^2.(\text{q1}-p)^2}-\frac{m^2+p\cdot \;\text{q1}+p^2}{4 \left(\text{q1}^2-m^2\right).(\text{q2}-p)^2.(\text{q1}-\text{q2})^2}+\frac{m^2+2 (p\cdot \;\text{q1})+p^2}{8 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-\text{q2})^2}
[q, p] FAD[{q, m}, {q - p, 0}]
SPD
[%, {q}] ApartFF
\frac{p\cdot q}{\left(q^2-m^2\right).(q-p)^2}
\frac{m^2+p^2}{2 q^2.\left((q-p)^2-m^2\right)}-\frac{1}{2 \left(q^2-m^2\right)}
If the propagators should not be altered via momentum shifts
(e.g. because they belong to a previously identified topology), use the
option FDS->False
= SPD[q2, p] SPD[q1, p] FAD[{q1, m}, {q2, m}, q1 - p, q2 - p, q2 - q1] int
\frac{(p\cdot \;\text{q1}) (p\cdot \;\text{q2})}{\left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-p)^2.(\text{q2}-p)^2.(\text{q2}-\text{q1})^2}
[int, {q1, q2}] ApartFF
\frac{\left(m^2+p^2\right)^2}{4 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q1}-\text{q2})^2.(\text{q1}-p)^2}-\frac{m^2+p^2}{2 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-\text{q2})^2.(\text{q1}-p)^2}+\frac{m^2+p^2}{2 \;\text{q2}^2.\text{q1}^2.\left((\text{q1}-p)^2-m^2\right).(\text{q1}-\text{q2})^2}-\frac{1}{2 \left(\text{q1}^2-m^2\right).(\text{q2}-p)^2.(\text{q1}-\text{q2})^2}+\frac{1}{4 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q1}-\text{q2})^2}
[int, {q1, q2}, FDS -> False] ApartFF
\frac{\left(m^2+p^2\right)^2}{4 \left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q2}-\text{q1})^2.\left(\text{q1}^2-m^2\right).(\text{q1}-p)^2}-\frac{m^2+p^2}{4 \left(\text{q1}^2-m^2\right).(\text{q1}-p)^2.\left(\text{q2}^2-m^2\right).(\text{q2}-\text{q1})^2}+\frac{m^2+p^2}{4 \left(\text{q1}^2-m^2\right).(\text{q1}-p)^2.(\text{q2}-p)^2.(\text{q2}-\text{q1})^2}-\frac{m^2+p^2}{4 \left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q2}-\text{q1})^2}+\frac{m^2+p^2}{4 (\text{q1}-p)^2.\left(\text{q2}^2-m^2\right).(\text{q2}-p)^2.(\text{q2}-\text{q1})^2}-\frac{1}{4 (\text{q2}-\text{q1})^2.\left(\text{q1}^2-m^2\right).(\text{q2}-p)^2}-\frac{1}{4 (\text{q2}-\text{q1})^2.(\text{q1}-p)^2.\left(\text{q2}^2-m^2\right)}+\frac{1}{4 (\text{q2}-\text{q1})^2.\left(\text{q1}^2-m^2\right).\left(\text{q2}^2-m^2\right)}+\frac{1}{4 (\text{q2}-\text{q1})^2.(\text{q1}-p)^2.(\text{q2}-p)^2}
If the partial fractioning should be performed only w. r. t. the
denominators but not numerators, use the option
Numerator->False
= FAD[k, p - k, {k, m}] SPD[p, k] int
\frac{k\cdot p}{k^2.(p-k)^2.\left(k^2-m^2\right)}
[int, {k}] ApartFF
\frac{m^2+p^2}{2 m^2 k^2.\left((k-p)^2-m^2\right)}+-\frac{1}{2 m^2 \left(k^2-m^2\right)}-\frac{p^2}{2 m^2 k^2.(k-p)^2}
[int, {k}, Numerator -> False] ApartFF
\frac{k\cdot p}{m^2 k^2.\left((k-p)^2-m^2\right)}-\frac{k\cdot p}{m^2 k^2.(k-p)^2}
Using the option FeynAmpDenominator ->False
we can
specify that integrals without numerators should not be partial
fractioned
= FAD[k, p - k, {k, m}] (SPD[q] + SPD[p, k]) int
\frac{k\cdot p+q^2}{k^2.(p-k)^2.\left(k^2-m^2\right)}
[int, {k}] ApartFF
\frac{m^2+p^2+2 q^2}{2 m^2 k^2.\left((k-p)^2-m^2\right)}+-\frac{1}{2 m^2 \left(k^2-m^2\right)}-\frac{p^2+2 q^2}{2 m^2 k^2.(k-p)^2}
[int, {k}, FeynAmpDenominator -> False] ApartFF
\frac{q^2}{k^2.(p-k)^2.\left(k^2-m^2\right)}+\frac{m^2+p^2}{2 m^2 k^2.\left((k-p)^2-m^2\right)}+-\frac{1}{2 m^2 \left(k^2-m^2\right)}-\frac{p^2}{2 m^2 k^2.(k-p)^2}
The extraPiece
-trick is useful for cases where a direct
partial fractioning is not possible
= (SFAD[{{0, k . l}}, p - k] SPD[k, p]) int
\frac{k\cdot p}{(k\cdot l+i \eta ).((p-k)^2+i \eta )}
Here ApartFF
cannot do anything
[int, {k}] ApartFF
\frac{k\cdot p}{(k\cdot l+i \eta ).((p-k)^2+i \eta )}
Multiplying the integral with unity FAD[k]*SPD[k]
we can
cast into a more desirable form
[int FAD[k], SPD[k], {k}] // ApartFF[#, {k}] & ApartFF
\frac{k^2}{2 (k\cdot l+i \eta ).((p-k)^2+i \eta )}+\frac{p^2}{2 (k\cdot l+i \eta ).((k-p)^2+i \eta )}
Here we need a second call to ApartFF
since the first
execution doesn’t drop scaleless integrals or perform any shifts in the
denominators.
Other examples of doing partial fraction decomposition for eikonal integrals (e.g. in SCET)
= SFAD[{{0, nb . k2}}, {{0, nb . (k1 + k2)}}] int1
\frac{1}{(\text{k2}\cdot \;\text{nb}+i \eta ).((\text{k1}+\text{k2})\cdot \;\text{nb}+i \eta )}
[int1, {k1, k2}] ApartFF
\frac{1}{(\text{k2}\cdot \;\text{nb}+i \eta ).(\text{k1}\cdot \;\text{nb}+\text{k2}\cdot \;\text{nb}+i \eta )}
[ApartFF[SFAD[{{0, nb . k1}}] int1, SPD[nb, k1], {k1, k2}], {k1, k2}] ApartFF
\frac{1}{(\text{k1}\cdot \;\text{nb}+i \eta ).(\text{k2}\cdot \;\text{nb}+i \eta )}-\frac{1}{(\text{k1}\cdot \;\text{nb}+i \eta ).(\text{k1}\cdot \;\text{nb}+\text{k2}\cdot \;\text{nb}+i \eta )}
= SPD[nb, k2] SFAD[{{0, nb . (k1 + k2)}}] int2
\frac{\text{k2}\cdot \;\text{nb}}{((\text{k1}+\text{k2})\cdot \;\text{nb}+i \eta )}
[int2, {k1, k2}] ApartFF
\frac{\text{k2}\cdot \;\text{nb}}{(\text{k1}\cdot \;\text{nb}+\text{k2}\cdot \;\text{nb}+i \eta )}
[ApartFF[SFAD[{{0, nb . k1}}] int2, SPD[nb, k1], {k1, k2}], {k1, k2}] ApartFF
-\frac{\text{k1}\cdot \;\text{nb}}{(\text{k1}\cdot \;\text{nb}+\text{k2}\cdot \;\text{nb}+i \eta )}
If we are working with a subset of propagators from a full integral, one should better turn off loop momentum shifts and the dropping of scaleless integrals
[ApartFF[SFAD[{{0, nb . k1}}] int2, SPD[nb, k1], {k1, k2}], {k1, k2}, FDS -> False,
ApartFF-> False] DropScaleless
1-\frac{\text{k1}\cdot \;\text{nb}}{(\text{k1}\cdot \;\text{nb}+\text{k2}\cdot \;\text{nb}+i \eta )}