我想重现附件中的费曼图费因普包。特别是左下角的胶子线穿过 3 个顶点,从中间顶点开始另一条胶子线。我不知道如何让胶子线不停止并在中间顶点重新开始,而是像没有顶点一样运行。如何实现?
使用以下代码可以获得没有额外胶子辐射的基本图,但是添加额外的顶点和胶子线而不干扰任何东西则更加棘手:
\begin{fmffile}{feyngraph}
\begin{fmfgraph*}(150,80)
\fmfleft{i1,i2}
\fmflabel{$g$}{i1}
\fmflabel{$g$}{i2}
\fmfright{o1,o2}
\fmflabel{$t$}{o1}
\fmflabel{$\bar{t}$}{o2}
\fmf{gluon}{i1,v1}
\fmf{gluon}{i2,v1}
\fmf{fermion}{v2,o1}
\fmf{fermion}{o2,v2}
\fmf{gluon, label=$g$, label.dist=0.09w}{v1,v2}
\fmfdot{v1}
\fmfdot{v2}
\end{fmfgraph*}
\end{fmffile}
答案1
在不干扰图表的情况下向图表添加顶点的关键是以下两个命令,它们在feynmf 文档 :
\fmffreeze
不要打扰之前画的东西\fmfforce
强制顶点的位置
因此,添加类似下面的代码就可以了:
\fmffreeze % freezing the drawn elements
\fmfright{v3,o3} % adding two more vertices
\fmfforce{(0.23w,0.23h)}{v3} % setting position of the first vertex
\fmfforce{(0.4w,0h)}{o3} % setting position of the second vertex
\fmfdot{v3} % drawing the first vertex with a dot
\fmf{gluon, label=$g$, label.dist=0.03w}{v3,o3} % drawing a gluon line
可以在以下位置找到此图表样式更好的版本的完成代码:这一页。