我想使用 TikZ-Feynman 包制作以下费曼图。
到目前为止,我所拥有的如下:
\begin{tikzpicture}
\begin{feynman}
\vertex (li);
\vertex [below=2cm of li] (hi);
\vertex [right=of li] (a);
\vertex [above right=of a] (lf);
\vertex [below right=of a] (b);
\vertex [right=of b] (hf1);
\vertex [blob, right=of hi] (c) {};
\vertex [below right=of c] (hf2);
\diagram* {
(li) -- [fermion] (a) -- [fermion] (lf),
(hi) -- [fermion] (c) -- [fermion] (hf2),
(a) -- [photon] (b) -- [fermion] (hf1),
(c) -- [fermion] (b),
};
\end{feynman}
\end{tikzpicture}
产生以下结果
我遇到的问题是绘制三条平行线,它们进入一个单一的斑点。如果我在斑点的左侧生成三个垂直堆叠的顶点,并在它们和斑点之间画线,显然这些线不会平行。如果我“作弊”并在斑点本身内绘制三个顶点,以便三条线平行,则这些线将绘制在底层斑点的顶部。显然,这两种方法都不起作用。任何帮助都将不胜感激。
答案1
像这样吗?
\documentclass[tikz,border=3mm]{standalone}
\usepackage{tikz-feynman}
\begin{document}
\begin{tikzpicture}
\begin{feynman}
\vertex (li);
\vertex [below=2cm of li] (hi);
\vertex [right=of li] (a);
\path (a) ++ (20:2) node[vertex] (lf);
\vertex [below right=of a] (b);
\vertex [right=of b] (hf1);
\vertex [blob, right=of hi] (c) {};
\path (c.-10) ++ (00:2) node[vertex] (hf2);
\path (c.-40-|hf2.center) node[vertex] (hf3);
\diagram* {
(li) -- [fermion] (a) -- [fermion] (lf),
(hi) -- [fermion] (c) -- [fermion] (b),
(a) -- [photon] (b) -- [fermion] (hf1),
(c.-10) -- [fermion] (hf2),
(c.-40) -- [fermion] (hf3)
};
\end{feynman}
\end{tikzpicture}
\end{document}
您可能需要稍微调整箭头的位置。
\documentclass[tikz,border=3mm]{standalone}
\usepackage{tikz-feynman}
\begin{document}
\begin{tikzpicture}
\begin{feynman}
\vertex (li);
\vertex [below=2cm of li] (hi);
\vertex [right=of li] (a);
\path (a) ++ (20:2) node[vertex] (lf);
\vertex [below right=of a] (b);
\vertex [right=of b] (hf1);
\vertex [blob, right=of hi] (c) {};
\path (c.-5) ++ (00:2) node[vertex] (hf2);
\path (c.-40-|hf2.center) node[vertex] (hf3);
\diagram* {
(li) -- [fermion] (a) -- [fermion] (lf),
(hi) -- [fermion] (c) -- [fermion] (b),
(a) -- [photon] (b) -- [fermion] (hf1),
(c.-5) -- [fermion] (hf2),
(c.-40) -- [with arrow=0.52] (hf3)
};
\end{feynman}
\end{tikzpicture}
\end{document}
灵感来源:tikzfeynman.keys.code.tex
。