PaVeReduce
PaVeReduce[expr]
reduces all Passarino-Veltman integrals (i.e. all PaVe’s) in expr down to scalar A0
, B0
, C0
and D0
.
See also
Overview, FRH, PaVeOrder.
Examples
PaVeReduce[PaVe[1, 2, {s, m^2, m^2}, {m^2, m^2, M^2}], IsolateNames -> FF]
FRH[%]
FF(31)
((D−2)(4m2−s)22(2D−3)M2−2m2(4m2−s)2M2s−(4m2−s)24m2+(4m2−s)2s)B0(m2,m2,M2)+(−(D−2)(4m2−s)22(D−1)M2+(D−2)(4m2−s)24m2−(D−2)(4m2−s)2s)B0(s,m2,m2)+(−(D−2)(4m2−s)22(D−1)M4−(D−2)(4m2−s)2DM2s+(D−2)(4m2−s)24Dm2M2)C0(m2,m2,s,m2,M2,m2)−2m2(4m2−s)A0(M2)+2m2(4m2−s)A0(m2)
The reduction results can be saved to a Mathematica file
PaVeReduce[PaVe[2, {SmallVariable[me2], mw2, t}, {SmallVariable[me2], 0, mw2}],
WriteOutPaVe -> "p"]
TableForm[ReadList["pPaVe1Cmw2tsmame2C0mw2smame2.s", String]]
DeleteFile /@ FileNames["pPaVe1Cmw2tsmame2C0mw2smame2.s"];
mw2−tB0(mw2,0,mw2)−mw2−tB0(t,mw2,me2)
( PaVe[0, {mw2}, {0, mw2}]/(mw2 - t) - PaVe[0, {t}, {mw2, SmallVariable[me2]}]/ (mw2 - t) )
Fortran export is also available
se = SmallVariable[ME2];
d122 = PaVeReduce[PaVe[1, 2, 2, {se, MW2, MW2, se, S, T}, {0, se, 0, se}], Mandelstam -> {S, T, U, 2 MW2}, IsolateNames -> F] // FRH
Write2["fctd122.for", d122res == d122, FormatType -> FortranForm];
TableForm[ReadList["fctd122.for", String]]
DeleteFile /@ FileNames["fctd122.for"]; Clear[d122, se];
−8(3−D)(MW22−SU)3D(MW2−S)T2D0(MW2,MW2,ME2,ME2,T,S,ME2,0,ME2,0)S3−4(3−D)(MW22−SU)3D(MW2−S)2TC0(MW2,S,ME2,ME2,0,0)S2+8(3−D)(MW22−SU)3D(MW2−S)T2C0(T,ME2,ME2,ME2,ME2,0)S2−2(2−D)(MW2−S)(MW22−SU)2(2MW22−DST−2SU)B0(S,0,0)S+2MW2(4MW2−T)(MW22−SU)(MW2+U)A0(ME2)+((−2DMW25+16MW25−3DSMW24+2SMW24−3DUMW24+10UMW24−8DS2MW23+4DSUMW23−16SUMW23+2DS3MW22+4DSU2MW22−8SU2MW22−2DS2UMW22+2DS4MW2+4DS3UMW2+DS2U3−2S2U3+DS3U2−2S3U2)B0(MW2,0,ME2))/(2(2−D)(MW2−S)(4MW2−T)2(MW22−SU)2)−((20MW24−2DSMW23−12SMW23−6TMW23−2DUMW23−4DS2MW22+2STMW22−20SUMW22+DS3MW2+3DSU2MW2+12S2UMW2+6STUMW2+DS4+DS2U2+2DS3U−2S2TU)B0(T,ME2,ME2))/(2(2−D)(4MW2−T)2(MW22−SU)2)−((128DMW27+48MW27−608DSMW26−128DTMW26−144UMW26−4D2S2MW25+1152DS2MW25+28DT2MW25−4D2U2MW25+888DSTMW25−8D2SUMW25−96SUMW25+48TUMW25−16D2S3MW24−1088DS3MW24−420DST2MW24+288SU2MW24−1840DS2TMW24+6D2S4MW23+512DS4MW23+64DST3MW23+10D2SU3MW23+1116DS2T2MW23+18D2S2U2MW23+48S2U2MW23−96STU2MW23+1568DS3TMW23−2D2S3UMW23+8D2S5MW22−96DS5MW22−324DS2T3MW22−144S2U3MW22−716DS3T2MW22+8D2S3U2MW22−528DS4TMW22+16D2S4UMW22−D2S6MW2+38DS2T4MW2−7D2S2U4MW2+100DS3T3MW2−6D2S3U3MW2+48S2TU3MW2+120DS4T2MW2+40DS5TMW2−2D2S5UMW2−D2S7+2DS3T4−D2S3U4−4D2S4U3−6D2S5U2−4D2S6U)C0(MW2,MW2,T,ME2,0,ME2))/(8(2−D)(3−D)(4MW2−T)2(MW22−SU)3)
d122res = ((MW2 + U)*5.D-1*PaVe(0D0,List(),List(ME2)))/ & (MW2*(MW2**2 - S*U*1D0)*(-(T*1D0) + MW2*4D0)) + & (5.D-1*(D*S**3*U**2 + D*S**2*U**3 - D*MW2**5*2D0 + & MW2**4*S*2D0 + D*MW2**2*S**3*2D0 + & D*MW2*S**4*2D0 - D*MW2**2*S**2*U*2D0 - & S**3*U**2*2D0 - S**2*U**3*2D0 - D*MW2**4*S*3D0 - & D*MW2**4*U*3D0 + D*MW2**3*S*U*4D0 + & D*MW2*S**3*U*4D0 + D*MW2**2*S*U**2*4D0 - & D*MW2**3*S**2*8D0 - MW2**2*S*U**2*8D0 + & MW2**4*U*1.D1 + MW2**5*1.6D1 - MW2**3*S*U*1.6D1)* & PaVe(0D0,List(MW2),List(0D0,ME2)))/ & ((MW2 - S*1D0)*(MW2**2 - S*U*1D0)**2* & (-(D*1D0) + 2D0)*(-(T*1D0) + MW2*4D0)**2) - & (S*5.D-1*(-(D*S*T*1D0) + MW2**2*2D0 - S*U*2D0)* & PaVe(0D0,List(S),List(0D0,0D0)))/ & ((MW2 - S*1D0)*(MW2**2 - S*U*1D0)**2* & (-(D*1D0) + 2D0)) - & (5.D-1*(D*MW2*S**3 + D*S**4 + D*S**2*U**2 - & D*MW2**3*S*2D0 + MW2**2*S*T*2D0 - & D*MW2**3*U*2D0 + D*S**3*U*2D0 - S**2*T*U*2D0 + & D*MW2*S*U**2*3D0 - D*MW2**2*S**2*4D0 - & MW2**3*T*6D0 + MW2*S*T*U*6D0 - MW2**3*S*1.2D1 + & MW2*S**2*U*1.2D1 + MW2**4*2.D1 - MW2**2*S*U*2.D1) & *PaVe(0D0,List(T),List(ME2,ME2)))/ & ((MW2**2 - S*U*1D0)**2*(-(D*1D0) + 2D0)* & (-(T*1D0) + MW2*4D0)**2) - & (1.25D-1*(-(D**2*MW2*S**6*1D0) - D**2*S**7*1D0 - & D**2*S**3*U**4*1D0 + D*S**3*T**4*2D0 - & D**2*MW2**3*S**3*U*2D0 - D**2*MW2*S**5*U*2D0 - & D**2*MW2**5*S**2*4D0 - D**2*S**6*U*4D0 - & D**2*MW2**5*U**2*4D0 - D**2*S**4*U**3*4D0 + & D**2*MW2**3*S**4*6D0 - D**2*S**5*U**2*6D0 - & D**2*MW2*S**3*U**3*6D0 - & D**2*MW2*S**2*U**4*7D0 + D**2*MW2**2*S**5*8D0 - & D**2*MW2**5*S*U*8D0 + & D**2*MW2**2*S**3*U**2*8D0 + & D**2*MW2**3*S*U**3*1.D1 - & D**2*MW2**4*S**3*1.6D1 + & D**2*MW2**2*S**4*U*1.6D1 + & D**2*MW2**3*S**2*U**2*1.8D1 + & D*MW2**5*T**2*2.8D1 + D*MW2*S**2*T**4*3.8D1 + & D*MW2*S**5*T*4.D1 + MW2**7*4.8D1 + & MW2**5*T*U*4.8D1 + MW2**3*S**2*U**2*4.8D1 + & MW2*S**2*T*U**3*4.8D1 + D*MW2**3*S*T**3*6.4D1 - & D*MW2**2*S**5*9.6D1 - MW2**5*S*U*9.6D1 - & MW2**3*S*T*U**2*9.6D1 + D*MW2*S**3*T**3*1.D2 + & D*MW2*S**4*T**2*1.2D2 + D*MW2**7*1.28D2 - & D*MW2**6*T*1.28D2 - MW2**6*U*1.44D2 - & MW2**2*S**2*U**3*1.44D2 + MW2**4*S*U**2*2.88D2 - & D*MW2**2*S**2*T**3*3.24D2 - & D*MW2**4*S*T**2*4.2D2 + D*MW2**3*S**4*5.12D2 - & D*MW2**2*S**4*T*5.28D2 - D*MW2**6*S*6.08D2 - & D*MW2**2*S**3*T**2*7.16D2 + & D*MW2**5*S*T*8.88D2 - D*MW2**4*S**3*1.088D3 + & D*MW2**3*S**2*T**2*1.116D3 + & D*MW2**5*S**2*1.152D3 + & D*MW2**3*S**3*T*1.568D3 - D*MW2**4*S**2*T*1.84D3) & *PaVe(0D0,List(MW2,MW2,T),List(ME2,0D0,ME2)))/ & ((MW2**2 - S*U*1D0)**3*(-(D*1D0) + 2D0)* & (-(D*1D0) + 3D0)*(-(T*1D0) + MW2*4D0)**2) - & (D*S**2*T*2.5D-1*(MW2 - S*1D0)**2* & PaVe(0D0,List(MW2,S,ME2),List(ME2,0D0,0D0)))/ & ((MW2**2 - S*U*1D0)**3*(-(D*1D0) + 3D0)) + & (D*S**2*T**2*1.25D-1*(MW2 - S*1D0)* & PaVe(0D0,List(T,ME2,ME2),List(ME2,ME2,0D0)))/ & ((MW2**2 - S*U*1D0)**3*(-(D*1D0) + 3D0)) - & (D*S**3*T**2*1.25D-1*(MW2 - S*1D0)* & PaVe(0D0,List(MW2,MW2,ME2,ME2,T,S), & List(ME2,0D0,ME2,0D0)))/ & ((MW2**2 - S*U*1D0)**3*(-(D*1D0) + 3D0))