1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
import feynman;
// set default line width to 0.8bp
currentpen = linewidth(0.8);
// scale all other defaults of the feynman module appropriately
fmdefaults();
// define vertex and external points
real L = 50;
pair zl = (-0.75*L,0);
pair zr = (+0.75*L,0);
pair xu = zl + L*dir(+120);
pair xl = zl + L*dir(-120);
pair yu = zr + L*dir(+60);
pair yl = zr + L*dir(-60);
// draw propagators and vertices
drawFermion(xu--zl);
drawFermion(zl--xl);
drawPhoton(zl--zr);
drawFermion(yu--zr);
drawFermion(zr--yl);
drawVertex(zl);
drawVertex(zr);
// draw momentum arrows and momentum labels
drawMomArrow(xl--zl, Relative(left));
label(Label("$k'$",2RightSide), xl--zl);
label(Label("$k$",2LeftSide), xu--zl);
drawMomArrow(zl--zr, Relative(left));
label(Label("$q$",2RightSide), zl--zr);
drawMomArrow(zr--yu, Relative(right));
label(Label("$p'$",2LeftSide), zr--yu);
label(Label("$p$",2RightSide), zr--yl);
// draw particle labels
label("$e^-$", xu, left);
label("$e^+$", xl, left);
label("$\mu^+$", yu, right);
label("$\mu^-$", yl, right);
|