如何移动feynmp中标签的位置?

如何移动feynmp中标签的位置?

如果我想在顶点的另一侧添加标签,或者费米子

    \begin{center}
    \begin{fmffile}{elecdig}
    \begin{fmfgraph*}(150,100)
    \fmfpen{thin}
    \fmfleft{i1,i2,ip,i3,i4} 
    \fmfright{o1,o2,op,o3,o4}
    \fmfpen{thick}
    \fmf{fermion,tension=1,label=$v$}{i3,o3}
    \fmf{fermion,tension=1,label=Spin Direction}{i4,o4}
    %\fmf{fermion,tension=1,label=$spin=+\frac{1}{2}$}{v2,o2}
    \fmf{dashes,label=It can't be ${\hat{e}_R}$ but it is $e_R$}{ip,op}
    \fmf{phantom,tension=1}{o2,o1}
    \fmf{phantom,tension=1}{i2,i1}
    \fmf{fermion,tension=1,label=$v_{new}$}{o2,i2} 
    \fmf{fermion,tension=1,label=Spin Direction}{i1,o1}
    %\fmf{fermion,tension=1,label=$spin=+\frac{1}{2}$}{v1,o1}
    \fmflabel{Frame $1$.}{i3}
    \fmflabel{Frame $2$.}{i2}
    \end{fmfgraph*} 
    \end{fmffile}
    \end{center}

我想将 v_new 移到另一侧 当我不使用时也会出现问题\fmfpen{粗或细}并且上面的第二行与其他行相比自动变细。即,

    \begin{center}
    \begin{fmffile}{elecdig}
    \begin{fmfgraph*}(150,100)
    %\fmfpen{thin}
    \fmfleft{i1,i2,ip,i3,i4} 
    \fmfright{o1,o2,op,o3,o4}
    %\fmfpen{thick}
    \fmf{fermion,tension=1,label=$v$}{i3,o3}
    \fmf{fermion,tension=1,label=Spin Direction}{i4,o4}
    %\fmf{fermion,tension=1,label=$spin=+\frac{1}{2}$}{v2,o2}
    \fmf{dashes,label=It can't be ${\hat{e}_R}$ but it is $e_R$}{ip,op}
    \fmf{phantom,tension=1}{o2,o1}
    \fmf{phantom,tension=1}{i2,i1}
    \fmf{fermion,tension=1,label=$v_{new}$}{o2,i2} 
    \fmf{fermion,tension=1,label=Spin Direction}{i1,o1}
    %\fmf{fermion,tension=1,label=$spin=+\frac{1}{2}$}{v1,o1}
    \fmflabel{Frame $1$.}{i3}
    \fmflabel{Frame $2$.}{i2}
    \end{fmfgraph*} 
    \end{fmffile}
    \end{center}

由此得出,

在此处输入图片描述

我参考这张图片重新阐述这个问题:

  1. 上面的第二条线与其他线相比较细

  2. 我不知道如何将标签 $v_{new}$ 移到另一侧。

答案1

这是一个不使用的替代答案feynmf,但使用了一个名为的新包费曼加拿大运输安全局)。钛Z-Feynman 内置了对动量箭头的支持,在这种情况下,可以用来指示费米子的速度和自旋方向:

\documentclass{article}

\usepackage[compat=1.1.0]{tikz-feynman}

\begin{document}\noindent
\feynmandiagram [horizontal=a to b] 
                {a -- [fermion, momentum=\(v\), momentum'=spin] b}; \newline
\feynmandiagram [horizontal=a to b] 
                {a -- [fermion, reversed momentum=\(v\), momentum'=spin] b}; \newline
\end{document}

输出

答案2

您必须在参数中声明一个明确的标签位置\fmf;在您的情况下,代码应读取

\fmf{fermion,tension=1,label=$v_{\mathrm{new}}$,label.side=left}{o2,i2}

我擅自添加了\mathrm下标“new”。

关于你的另一点,恐怕我无法帮助你。我得到的所有线条都具有相同的粗细。这可能是渲染问题吗?此外,请注意,在你的第一段代码中

\fmfpen{thin}
\fmfleft{i1,i2,ip,i3,i4} 
\fmfright{o1,o2,op,o3,o4}
\fmfpen{thick}

这个声明\fmfpen{thin}是没用的:你没有画任何线,而且你在画完线之后就把笔设置为粗线。

相关内容