我该如何绘制这个费曼图?

我该如何绘制这个费曼图?

我想知道如何绘制这个费曼图。

在此处输入图片描述

我阅读了有关 tikz-Feynman 的文档,但似乎文档并没有解释上面有些复杂的图表。

答案1

tikz-feynman如果手动指定顶点的坐标,那么这也相当简单。

\documentclass{article}
\usepackage{tikz-feynman}
\begin{document}
\begin{tikzpicture}
\begin{feynman}
    \vertex (a) at (-2,2);
    \vertex (b) at (2,2);
    \vertex (c) at (0,0);
    \vertex (d1) at (-0.4,-0.4);
    \vertex (d2) at (-1.6,-1.6);
    \vertex (d3) at (-2,-2);
    \vertex (e) at (2,-2);
    \diagram*{
        (a) -- [fermion] (c),
        (b) -- [anti fermion] (c),
        (c) -- [scalar] (d1),
        (d1) -- [anti charged scalar] (d2),
        (d1) -- [fermion, half left] (d2),
        (d1) -- [anti fermion, half right] (d2),
        (d2) -- [scalar] (d3),
        (c) -- [charged scalar] (e)
    };
\end{feynman}
\end{tikzpicture}
\end{document}

答案2

它非常简单pstricks:我使用极坐标将顶点定义为空节点,然后\psline使用键将它们与 s 连接,ArrowInside然后添加两个互补的椭圆弧。

\documentclass[x11names, 12pt, border=6pt]{standalone}
\usepackage{pst-node, pst-plot}
\usepackage{pst-arrow} 

\begin{document}

\psset{plotstyle=curve, linejoin=1, arrowinset=0, arrowsize=6pt, ArrowInside=->}
\begin{pspicture}(-3,-3)(3,3)
\pnodes(0,0){O}(4;135){A}(4;45){B}(4;-45){C}(4;-135){D}(2;-135){I}
\psline(A)(O)(B)
\psline[linestyle=dashed, dash=5pt 5pt](D)(O)(C)
\pscustom{\rotate{45}%
\psellipticarcn[arrows=->](I)(1.2,0.7){90}{-105}%\psellipse(I)(1.2,0.6)
\psellipticarcn[arrows=->](I)(1.2,0.7){270}{435}
}%
\end{pspicture}

\end{document} 

在此处输入图片描述

答案3

为了比较目的。

使用以下方式编译渐近线

unitsize(1.5cm);
size(300);
draw((0,0)--(1,1),MidArrow(5bp));
draw((-1,1)--(0,0),MidArrow(5bp));
draw((-1,-1)--(0,0),dashed,MidArrow(5bp));
draw((0,0)--(1,-1),dashed,MidArrow(5bp));
pair M=relpoint((-1,-1)--(0,0),.5);
path Ellipse=rotate(degrees(dir((-1,-1)--(0,0))),M)*ellipse(M,.4,.2);
draw(reverse(Ellipse),Arrow(5bp,FillDraw(),reltime(Ellipse,.3)));
draw(reverse(Ellipse),p=invisible,Arrow(5bp,FillDraw(black,black),reltime(Ellipse,.79)));

在此处输入图片描述

相关内容