•Aϕ

QuantumField[___, Particle[PseudoScalar[0], ___], ___][_] := 0 ;

The lagrangian in raw form:

lag = Lagrangian[ChPT3[4]] /. CouplingConstant[ChPT3[4], 6 | 7 | 8, ___][___] :> 0 // Expand

L _ 4^(  ) (< ÷s _ μ(÷„) '6 ÷s _ μ(÷„)^† > '6 (< ÷„ '6 χ^† > + < χ '6 ÷„^† >)) + L _ 1^(  ) (< ÷s _ μ(÷„) '6 ÷s _ μ(÷„)^† > '6 < ÷s _ ν(÷„) '6 ÷s _ ν(÷„)^† >) + L _ 2^(  ) (< ÷s _ μ(÷„) '6 ÷s _ ν(÷„)^† > '6 < ÷s _ μ(÷„) '6 ÷s _ ν(÷„)^† >) + H _ 2^(  ) < χ^† '6 χ > + H _ 1^(  ) < L _ (μ ν) '6 L _ (μ ν) > + H _ 1^(  ) < R _ (μ ν) '6 R _ (μ ν) > + L _ 5^(  ) < ÷s _ μ(÷„) '6 ÷s _ μ(÷„)^† '6 (÷„ '6 χ^† + χ '6 ÷„^†) > + i L _ 9^(  ) < L _ (μ ν) '6 ÷s _ μ(÷„) '6 ÷s _ ν(÷„)^† > + i L _ 9^(  ) < R _ (μ ν) '6 ÷s _ μ(÷„)^† '6 ÷s _ ν(÷„) > + L _ 3^(  ) < ÷s _ μ(÷„) '6 ÷s _ μ(÷„)^† '6 ÷s _ ν(÷„) '6 ÷s _ ν(÷„)^† > + L _ 10^(  ) < L _ (μ ν) '6 ÷„ '6 R _ (μ ν) '6 ÷„^† >

llu = (WriteString["stdout", "."] ; UNMSplit[#, x, DropOrder -> 1]) & /@ lag ;

...........

Expand[llu] // Length

100

Redundant terms are discarded (do not use CommutatorReduce->True, it'll take unexpanded stuff outside the traces):

lld = (WriteString["stdout", "."] ; DiscardTerms[#, Retain -> {Particle[PhiMeson ] -> 1, Particle[AxialVector[0]] -> 1}, CommutatorReduce -> False, Method -> Expand]) & /@ Expand[llu] ;

....................................................................................................

Remaining 'raw' quantites are put on arguments:

ll = ArgumentsSupply[lld, x, RenormalizationState[0], ExpansionOrder -> 1, DropOrder -> 1, DiagonalToU -> True] // Simplify ;

ArgumentsSupply :: argxpr :  Warning : The argument  x  is already in the expression.

Generator matrices are traced:

llld = (WriteString["stdout", "."] ; DiscardTerms[#, Retain -> {Particle[PhiMeson , RenormalizationState[0]] -> 1, Particle[AxialVector[0], RenormalizationState[0]] -> 1}, CommutatorReduce -> False, Method -> Expand]) & /@ Expand[ll] ;

........

llle = ExpandU[llld, CommutatorReduce -> True] ;

Indices are supplied:

$IsoIndicesCounter = 0 ;

tmp = Expand[llle] ; tmp // Length

26

llll = (WriteString["stdout", "."] ; # // IsoIndicesSupply // SUNReduce[#, FullReduce -> True] & // IndicesCleanup // NMExpand // CommutatorReduce[#, FullReduce -> True] & // Simplify) & /@ tmp

..........................

-(8 L _ 4^(  ) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1 (m _ π^(ó    ))^2)/f _ ϕ^(ó    ) - (8 L _ 5^(  ) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1 (m _ π^(ó    ))^2)/(3 f _ ϕ^(ó    )) - (8 L _ 5^(  ) d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1 (m _ π^(ó    ))^2)/(3^(1/2) f _ ϕ^(ó    )) - (8 i L _ 5^(  ) f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1 (m _ π^(ó    ))^2)/(3^(1/2) f _ ϕ^(ó    )) - (8 L _ 5^(  ) d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2 (m _ π^(ó    ))^2)/(3^(1/2) f _ ϕ^(ó    )) - (8 i L _ 5^(  ) f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2 (m _ π^(ó    ))^2)/(3^(1/2) f _ ϕ^(ó    )) - (8 L _ 4^(  ) (m _ K^+^(ó    ))^2 ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) - (8 L _ 5^(  ) (m _ K^+^(ó    ))^2 ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1)/(3 f _ ϕ^(ó    )) - (8 L _ 4^(  ) (m _ K^0^(ó    ))^2 ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) - (8 L _ 5^(  ) (m _ K^0^(ó    ))^2 ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k1)/(3 f _ ϕ^(ó    )) - (4 L _ 5^(  ) (m _ K^+^(ó    ))^2 d _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) + (4 L _ 5^(  ) (m _ K^0^(ó    ))^2 d _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) + (4 L _ 5^(  ) (m _ K^+^(ó    ))^2 d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/(3^(1/2) f _ ϕ^(ó    )) + (4 L _ 5^(  ) (m _ K^0^(ó    ))^2 d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/(3^(1/2) f _ ϕ^(ó    )) - (4 i L _ 5^(  ) (m _ K^+^(ó    ))^2 f _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) + (4 i L _ 5^(  ) (m _ K^0^(ó    ))^2 f _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/f _ ϕ^(ó    ) + (4 i L _ 5^(  ) (m _ K^+^(ó    ))^2 f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/(3^(1/2) f _ ϕ^(ó    )) + (4 i L _ 5^(  ) (m _ K^0^(ó    ))^2 f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k2 A^( ) _ τ1^k1)/(3^(1/2) f _ ϕ^(ó    )) - (4 L _ 5^(  ) (m _ K^+^(ó    ))^2 d _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/f _ ϕ^(ó    ) + (4 L _ 5^(  ) (m _ K^0^(ó    ))^2 d _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/f _ ϕ^(ó    ) + (4 L _ 5^(  ) (m _ K^+^(ó    ))^2 d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/(3^(1/2) f _ ϕ^(ó    )) + (4 L _ 5^(  ) (m _ K^0^(ó    ))^2 d _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/(3^(1/2) f _ ϕ^(ó    )) - (4 i L _ 5^(  ) (m _ K^+^(ó    ))^2 f _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/f _ ϕ^(ó    ) + (4 i L _ 5^(  ) (m _ K^0^(ó    ))^2 f _ (3 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/f _ ϕ^(ó    ) + (4 i L _ 5^(  ) (m _ K^+^(ó    ))^2 f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/(3^(1/2) f _ ϕ^(ó    )) + (4 i L _ 5^(  ) (m _ K^0^(ó    ))^2 f _ (8 k1 k2)^(3) ∂ _ τ1 ϕ^( ) _ ó ^k1 A^( ) _ τ1^k2)/(3^(1/2) f _ ϕ^(ó    ))

Expand[llll] // Length

26

lala = (WriteString["stdout", "."] ; $IsoIndicesCounter = 0 ; PhiToFC[CycleUTraces[#]]) & /@ Expand[llll] ;

..........................

The Feynman rule is calculated:

fields = {QuantumField[Particle[AxialVector[0], RenormalizationState[0]], LorentzIndex[μ1], SUNIndex[I1]][p1], QuantumField[Particle[PhiMeson, RenormalizationState[0]], SUNIndex[I2]][p2]}

{A^( ) _ μ _ 1^I _ 1, ϕ^( )^I _ 2}

res = ((WriteString["stdout", "."] ; I * SUNReduce[FunctionalD[#, fields], FullReduce -> True]) & /@ lala) ;

..........................

res // Length

11

res // LeafCount

384

Contraction of Lorentz indices and factoring out stuff:

melsimplified = Collect[Contract[res], {_Pair, _DecayConstant, _CouplingConstant}] ;

melsimplified // LeafCount

215


Converted by Mathematica  (July 10, 2003)