This FeynArts filter discards topologies with more than one odd vertex:
![]()
Construction of topologies:
![mesonstop = CreateCTTopologies[2, 1 -> 2, Adjacencies -> {3, 4, 5, 6}, ExcludeTopologies -> {SelfEnergyCTs, WFCorrectionCTs, SeveralOddVertices}] // DiscardCT // Union[#, AddExternalLegs[#]] & ;](../HTMLFiles/index_100.gif)
![]()
![]()
![]()
Field insertion:
![$VerticesSpecifications = {{VertexFields -> {PhiMeson[0]}, PhiModel -> ChPTW3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {AxialVector[0][0], PhiMeson[0]}, PhiModel -> ChPT3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {AxialVector[0][0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPTW3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPTW3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {AxialVector[0][0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPT3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPT3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {AxialVector[0][0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPTW3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPTW3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {AxialVector[0][0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPT3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}, {VertexFields -> {PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0], PhiMeson[0]}, PhiModel -> ChPT3, PerturbationOrder -> {2}, CouplingSign -> 1, XFileName -> Automatic}} ;](../HTMLFiles/index_124.gif)
![]()
![]()
Self-energy loops are eliminated:
![mesonins = Select[mesoninsert, (FreeQ[#[[1]] /. List @@ #[[2, 1, 1]], Topology[_][___, Propagator[Loop[_]][Vertex[4][lv__], Vertex[4][lv__], f_], ___]] &)] ;](../HTMLFiles/index_127.gif)
![]()
![]()
Making things look nice:
![boxrules1 = {Propagator[Internal][Vertex[l_ ? OddQ][n_], v2 : Vertex[__][_], f_] -> Propagator[Internal][Vertex[l, 1][n], v2, f], Propagator[Internal][v2 : Vertex[__][_], Vertex[l_ ? OddQ][n_], f_] -> Propagator[Internal][v2, Vertex[l, 1][n], f]} ;](../HTMLFiles/index_130.gif)
![boxrules2 = {Propagator[ty_][Vertex[l_ ? OddQ][n_], v2 : Vertex[__][_], f_] /; l > 2 -> Propagator[ty][Vertex[l, 1][n], v2, f], Propagator[ty_][v2 : Vertex[__][_], Vertex[l_ ? OddQ][n_], f_] /; l > 2 -> Propagator[ty][v2, Vertex[l, 1][n], f]} ;](../HTMLFiles/index_131.gif)
Graphical representation of the process:
![]()
Converted by Mathematica (July 10, 2003)