1 to 1 process
[1]:
from smpl_io import io
[2]:
from feynml.interface.qgraf import style
import itertools as it
import re
[3]:
from pyqgraf import qgraf, model
qgraf.install("3.6.5")
xml_string = qgraf.run("nu_e[p1]", "nu_e[p1]",loops=2,loop_momentum="l",model = model.gws_UnitaryGauge_reduced, style=style)
Please cite the following papers if you use this code:
[1] Automatic Feynman graph generation J. Comput. Phys. 105 (1993) 279--289 https://doi.org/10.1006/jcph.1993.1074
[2] Abusing Qgraf Nucl. Instrum. Methods Phys. Res. A 559 (2006) 220--223 https://doi.org/10.1016/j.nima.2005.11.151
[3] Feynman graph generation and propagator mixing, I Comput. Phys. Commun. 269 (2021) 108103 https://doi.org/10.1016/j.cpc.2021.108103
[31]:
from xsdata.formats.dataclass.parsers import XmlParser
from pyfeyn2.render.latex.feynmp import FeynmpRender
from pyfeyn2.render.latex.tikzfeynman import TikzFeynmanRender
from pyfeyn2.render.pyx.pyxrender import PyxRender
from pyfeyn2.feynmandiagram import FeynML
from pyfeyn2.auto.bend import auto_bend
from pyfeyn2.auto.label import auto_label
from pyfeyn2.auto.position import feynman_adjust_points,auto_vdw
parser = XmlParser()
fml = parser.from_string(xml_string, FeynML)
def filter_diag(d):
count = 0
ecount = 0
for p in d.propagators:
if p.pdgid == 22:
count +=1
if p.pdgid == 11:
ecount +=1
if count ==1 and ecount >=2:
return True
return False
ccount=0
for d in fml.diagrams:
if filter_diag(d):
ccount +=1
print("single photon diags", ccount)
for d in fml.diagrams:
if filter_diag(d):
d.legs[0].with_xy(-2,0)
d.legs[1].with_xy(2,0)
d.get_point(d.legs[0].target).with_xy(-1,0)
d.get_point(d.legs[1].target).with_xy(1,0)
d = feynman_adjust_points(d,size=15,clear_vertices=False)
auto_bend(d)
auto_label(d.propagators)
auto_label(d.legs)
#print(d)
t = TikzFeynmanRender(d)
#print(t.get_src())
t.render(show=True)
#break
single photon diags 2
![../../../_images/interfaces_qgraf_1_to_1_qgraf_4_1.png](../../../_images/interfaces_qgraf_1_to_1_qgraf_4_1.png)
![../../../_images/interfaces_qgraf_1_to_1_qgraf_4_2.png](../../../_images/interfaces_qgraf_1_to_1_qgraf_4_2.png)
[6]:
print(xml_string)
<!--
file generated by qgraf-3.6.5
output= 'output.out' ;
style= 'tmp.sty' ;
model = 'tmp.model';
in= nu_e[p1];
out= nu_e[p1];
loops= 2;
loop_momentum= l;
options= notadpole,onshell;
You must add x= and y= with suitable vertex positions.
Some lines may need manual bending to render properly.
-->
<feynml>
<diagram
id="Diagram1"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1/2"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert3</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>gamma</name>
<source>Vert3</source>
<target>Vert3</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram2"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>-l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>gamma</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l1-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram3"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>-l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l1-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram4"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l1+l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram5"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>Z_0</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>nu_e</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l1+l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram6"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>-l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l1-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram7"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert3</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l1+l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram8"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>Z_0</name>
<source>Vert3</source>
<target>Vert2</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>nu_e</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l1+l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram9"
incoming="1"
outgoing="1"
sign="-"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram10"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>gamma</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram11"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert4</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram12"
incoming="1"
outgoing="1"
sign="-"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram13"
incoming="1"
outgoing="1"
sign="-"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>nu_e</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram14"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert2</target>
<momentum>
<name>l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>Z_0</name>
<source>Vert3</source>
<target>Vert1</target>
<momentum>
<name>l1-p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>l1+l2-p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram15"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert1</target>
<momentum>
<name>-l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>-l1-l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>gamma</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram16"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert1</target>
<momentum>
<name>-l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>-l1-l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram17"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>W_minus</name>
<source>Vert2</source>
<target>Vert1</target>
<momentum>
<name>-l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>e_minus</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>e_minus</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>-l1-l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram18"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>Z_0</name>
<source>Vert2</source>
<target>Vert1</target>
<momentum>
<name>-l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>nu_e</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>e_minus</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>-l1-l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>W_minus</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
<diagram
id="Diagram19"
incoming="1"
outgoing="1"
sign="+"
symmmetry_factor="1"
>
<vertex id="Vert1">
</vertex>
<vertex id="Vert2">
</vertex>
<vertex id="Vert3">
</vertex>
<vertex id="Vert4">
</vertex>
<leg id="In1">
<name>nu_e</name>
<sense>incoming</sense>
<target>Vert1</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<leg id="Out1">
<name>nu_e</name>
<sense>outgoing</sense>
<target>Vert2</target>
<momentum>
<name>p1</name>
</momentum>
</leg>
<propagator id="Prop1">
<name>Z_0</name>
<source>Vert2</source>
<target>Vert1</target>
<momentum>
<name>-l1</name>
</momentum>
</propagator>
<propagator id="Prop2">
<name>nu_e</name>
<source>Vert1</source>
<target>Vert3</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop3">
<name>nu_e</name>
<source>Vert4</source>
<target>Vert2</target>
<momentum>
<name>-l1+p1</name>
</momentum>
</propagator>
<propagator id="Prop4">
<name>nu_e</name>
<source>Vert3</source>
<target>Vert4</target>
<momentum>
<name>-l1-l2+p1</name>
</momentum>
</propagator>
<propagator id="Prop5">
<name>Z_0</name>
<source>Vert4</source>
<target>Vert3</target>
<momentum>
<name>-l2</name>
</momentum>
</propagator>
</diagram>
</feynml>
<!-- end -->
[ ]: