I am trying to draw a Feynman diagram like this one. I looked up the manual but there was no mention of this thick or double propagator line in tikz-feynman.
3 Answers
tikz-feynman
comes with two keys that are important here, with arrow
, which expects a position, and arrow size
, which allows us to change the size of the arrow. So in order to have a double line propagator with arrow, you can use
double,double distance=0.5ex,thick,with arrow=0.5,arrow size=0.3em
The following code does that. I decided not to rely on the layout algorithms since this is a bit unnecessary for this diagram. As a result, you can compile the following with pdflatex
, and, in particular, upload it to the arXiv.
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz-feynman}
\begin{document}
\[
\vcenter{\hbox{\begin{tikzpicture}
\begin{feynman}
\vertex (i);
\vertex [right=2cm of i] (o);
\diagram*{
(i) --[double,double distance=0.5ex,thick,with arrow=0.5,arrow size=0.3em] (o)
};
\end{feynman}
\end{tikzpicture}}}
~=~
\vcenter{\hbox{\begin{tikzpicture}
\begin{feynman}
\vertex (i);
\vertex [right=1.5cm of i] (o);
\diagram*{
(i) --[fermion] (o)
};
\end{feynman}
\end{tikzpicture}}}~+~
\vcenter{\hbox{\begin{tikzpicture}
\begin{feynman}
\vertex (i);
\node[right=1.5cm of i,draw,fill=white,circle] (v){$\Sigma$};
\vertex [right=1.5cm of v] (o);
\diagram*{
(i) --[fermion] (v),
(v) --[double,double distance=0.5ex,thick,with arrow=0.5,arrow size=0.3em] (o)
};
\end{feynman}
\end{tikzpicture}}}
\]
\end{document}
For fun, a short code with pstricks
and pst-feyn
:
\documentclass[border=3pt]{standalone}
\usepackage{fourier-otf}
\usepackage{pstricks-add, pst-feyn}
\usepackage{auto-pst-pdf}
\pagestyle{empty}
\begin{document}
\psset{linejoin=1}
\begin{pspicture}(-2,-0.5)(5.2,0.5)
\pnodes(-1.9,0){D1}(-0.4,0){D2}(0,0){O}(0.4,0){L1}(1.2,0){L2}(1.6,0){I}(2,0){M1}(3,0){M2}(3.3,0){J}(3.6,0){E1}(5.1,0){E2}
\psArrowLine[doubleline, linewidth=1pt](D1)(D2) \rput(O){ = }\psArrowLine(L1)(L2)\rput(I){+}\psArrowLine(M1)(M2)\Cnodeput[radius= 0.3](J){S}{$ \Sigma $}\psArrowLine[doubleline, linewidth=1pt](E1)(E2)
\end{pspicture}
\end{document}
-
I'm downloading that manual that you have reported into your code. Your code is beautiful. Don't vote my code ahahha. nooooooooo :( Feb 10, 2020 at 22:18
-
1
Addendum with another option: feyn
package.
There is the option to realize your drawing using the declarated package. The syntax is not very simple to use. I add my MWE:
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage{feyn}
\usepackage{newtxmath}
\begin{document}
Feynman diagram for Dyson equation is:
\begin{equation}
\feyn{ms mA} \quad = \quad \feyn{fA} \quad + \quad \feyn{fA c ms mA} \mkern-71mu \Sigma
\end{equation}
\end{document}
I admit that my minimum document is not suitable for the tags (also because it is realized with Mathcha with appropriate adjustments), but for a newbie without a MWE, I have draw this as welcome to TeX.SE. This drawing should be very near to the attached image.
PS: I haven't seen the tikz-feynman
manual.
\documentclass[a4paper,12pt]{article}
\usepackage{tikz,mathtools}
\usepackage{xcolor}
\usepackage{newtxmath}
\begin{document}
\tikzset{every picture/.style={line width=0.75pt}}
\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1]
\draw [color={rgb, 255:red, 255; green, 255; blue, 255 } ,draw opacity=1 ][fill={rgb, 255:red, 155; green, 155; blue, 155 } ,fill opacity=1 ] (76.5,70.5) -- (348,70.5) -- (348,110.5) -- (76.5,110.5) -- cycle ;
\draw (80.4,90.2) -- (121,90.7) ;
\draw (80.4,92.4) -- (121,92.9) ;
\draw [fill={rgb, 255:red, 0; green, 0; blue, 0 } ,fill opacity=1 ] (93.6,87.6) -- (93.6,87.6) -- (107.43,91.55) -- (93.6,95.5) -- (93.6,95.5) -- cycle ;
\draw (171.2,91.8) -- (202,91.8) ;
\draw [fill={rgb, 255:red, 0; green, 0; blue, 0 } ,fill opacity=1 ] (183.6,89.4) -- (183.6,89.4) -- (190.55,91.7) -- (183.6,94) -- (183.6,94) -- cycle ;
\draw (243.6,91.4) -- (274.4,91.4) ;
\draw [fill={rgb, 255:red, 0; green, 0; blue, 0 } ,fill opacity=1 ] (256,89) -- (256,89) -- (262.95,91.3) -- (256,93.6) -- (256,93.6) -- cycle ;
\draw [fill={rgb, 255:red, 255; green, 255; blue, 255 } ,fill opacity=1 ] (274.4,91.4) .. controls (274.4,83.45) and (280.85,77) .. (288.8,77) .. controls (296.75,77) and (303.2,83.45) .. (303.2,91.4) .. controls (303.2,99.35) and (296.75,105.8) .. (288.8,105.8) .. controls (280.85,105.8) and (274.4,99.35) .. (274.4,91.4) -- cycle ;
\draw (303.6,90.2) -- (339.4,90.2) ;
\draw (303.6,92.4) -- (339.4,92.4) ;
\draw [fill={rgb, 255:red, 0; green, 0; blue, 0 } ,fill opacity=1 ] (316.8,87.6) -- (316.8,87.6) -- (330.63,91.55) -- (316.8,95.5) -- (316.8,95.5) -- cycle ;
\draw (145,93) node {$=$};
\draw (222,91) node {$+$};
\draw (288.5,90.5) node {$\Sigma $};
\end{tikzpicture}
\end{document}