如何在 feynmf 中绘制动量箭头?

如何在 feynmf 中绘制动量箭头?

我的问题与这篇文章中的问题类似:如何在 feynmf 中沿线绘制动量箭头?

但是,我想知道是否可以使用该feynmf包而不是一个包沿线绘制动量箭头feynmp-auto

我使用了这个解决方案:

\usepackage{feynmp-auto}
\newcommand{\marrow}[5]{%
    \fmfcmd{style_def marrow#1
    expr p = drawarrow subpath (1/4, 3/4) of p shifted 6 #2 withpen pencircle scaled 0.4;
    label.#3(btex #4 etex, point 0.5 of p shifted 6 #2);
    enddef;}
    \fmf{marrow#1,tension=0}{#5}}
\begin{document}
\setlength{\unitlength}{1mm}
\begin{fmffile}{marrows}
    \begin{fmfgraph*}(50,30)
        \fmfleftn{i}{2}
        \fmfrightn{o}{2}
        \fmf{fermion}{i1,v1,o1}
        \fmf{fermion}{i2,v2,o2}
        \fmf{photon,label=$\gamma$}{v1,v2}
        \fmfdotn{v}{2}
        \fmflabel{$e^-$}{i1}
        \fmflabel{$e^-$}{o1}
        \fmflabel{$\mu^-$}{i2}
        \fmflabel{$\mu^-$}{o2}
        % Momentum arrows
        \marrow{a}{down}{bot}{$p_1$}{i1,v1}
        \marrow{b}{up}{top}{$p_2$}{i2,v2}
        \marrow{c}{left}{lft}{$q$}{v1,v2}
        \marrow{d}{down}{bot}{$p_3$}{v1,o1}
        \marrow{e}{up}{top}{$p_4$}{v2,o2}
    \end{fmfgraph*}
\end{fmffile}
\end{document}

这是@Betohaku 对问题的回答如何在 feynmf 中沿线绘制动量箭头?并且它成功了。

但是,当我将其替换\usepackage{feynmp-auto}为时\usepackage{feynmf},它无法编译。我想知道我应该做哪些更改,以便使用包 获得相同的结果feynmf

相关内容