FCLoopIsolate
FCLoopIsolate[expr, {q1, q2, ...}]
wraps loop integrals into heads specified by the user. This is useful when you want to know which loop integrals appear in the given expression.
See also
Overview, FCLoopExtract.
Examples
FCI[GSD[q - p1] . (GSD[q - p2] + M) . GSD[p3] SPD[q, p2] FAD[q, q - p1, {q - p2, m}]]
FCLoopIsolate[%, {q}, Head -> loopInt]
Cases2[%, loopInt]
q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅(q−p1)).(M+γ⋅(q−p2)).(γ⋅p3)
((γ⋅p1).(γ⋅p2).(γ⋅p3)−M(γ⋅p1).(γ⋅p3))loopInt(q2.(q−p1)2.((q−p2)2−m2)p2⋅q)+MloopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅p3))−loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅p1).(γ⋅q).(γ⋅p3))−loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅p2).(γ⋅p3))+loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅q).(γ⋅p3))
{loopInt(q2.(q−p1)2.((q−p2)2−m2)p2⋅q),loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅p3)),loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅p1).(γ⋅q).(γ⋅p3)),loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅p2).(γ⋅p3)),loopInt(q2.(q−p1)2.((q−p2)2−m2)(p2⋅q)(γ⋅q).(γ⋅q).(γ⋅p3))}
TID[FVD[q, \[Mu]] FVD[q, \[Nu]] FAD[{q, m}, {q + p, m}, {q + r, m}], q, UsePaVeBasis -> True]
FCLoopIsolate[%, {q}, Head -> l]
Cases2[%, l]
iπ2gμνC00(p2,r2,−2(p⋅r)+p2+r2,m2,m2,m2)+iπ2pμpνC11(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2)+iπ2rμrνC11(r2,−2(p⋅r)+p2+r2,p2,m2,m2,m2)+iπ2(pνrμ+pμrν)C12(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2)
iπ2gμνl(C00(p2,r2,−2(p⋅r)+p2+r2,m2,m2,m2))+iπ2pμpνl(C11(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2))+iπ2rμrνl(C11(r2,−2(p⋅r)+p2+r2,p2,m2,m2,m2))+iπ2(pνrμ+pμrν)l(C12(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2))
{l(C00(p2,r2,−2(p⋅r)+p2+r2,m2,m2,m2)),l(C11(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2)),l(C11(r2,−2(p⋅r)+p2+r2,p2,m2,m2,m2)),l(C12(p2,−2(p⋅r)+p2+r2,r2,m2,m2,m2))}
SPD[q, q]^2 FAD[{q, m}] + SPD[q, q]
FCLoopIsolate[%, {q}, DropScaleless -> True]
q2−m2q4+q2
FCGV(LoopInt)(q2−m2q4)
a FAD[{q1, m}, {q2, m}] + b FAD[{q1, m, 2}]
FCLoopIsolate[%, {q1, q2}]
FCLoopIsolate[%%, {q1, q2}, MultiLoop -> True]
(q12−m2).(q22−m2)a+(q12−m2)2b
aFCGV(LoopInt)((q12−m2).(q22−m2)1)+bFCGV(LoopInt)((q12−m2)21)
aFCGV(LoopInt)((q12−m2).(q22−m2)1)+(q12−m2)2b