feynmp中标签如何定位?

feynmp中标签如何定位?

我有一张这样的费曼图:

假设我希望 W+ 的标签位于其波浪线的另一侧,或者最下方 tbar 的标签位于其直线的另一侧(以使图表更加对称)。我该怎么做?

\documentclass{article}
\usepackage{feynmp}
\usepackage{ifpdf}
\ifpdf
    \DeclareGraphicsRule{*}{mps}{*}{}
\fi

\unitlength=1.00 mm

\begin{document}
\begin{fmffile}{fmftempl}
\begin{fmfchar*}(100,70)

\fmfleftn{i}{2}                         % 2 initial states
\fmfrightn{o}{8}                        % 8 final states

\fmf{curly}{i1,v1}                      % g
\fmf{curly}{i2,v2}                      % g
\fmf{fermion, label=\(\bar{t}\)}{v3,v1} % tbar
\fmf{fermion, label=\(t\)}{v1,v7}       % t
\fmf{fermion, label=\(\bar{t}\)}{v7,v2} % tbar
\fmf{fermion, label=\(t\)}{v2,v4}       % t
\fmf{fermion}{v4,o6}
\fmf{fermion}{o3,v3}
\fmf{photon, label=\(W^{-}\)}{v3,v5}    % W-
\fmf{photon, label=\(W^{+}\)}{v4,v6}    % W+
\fmf{fermion}{o2,v5}
\fmf{fermion}{v5,o1}
\fmf{fermion}{o7,v6}
\fmf{fermion}{v6,o8}
\fmf{dashes, label=\(H^{0}\)}{v7,v8}    % H
\fmf{fermion}{o4,v8}
\fmf{fermion}{v8,o5}

\fmflabel{\(g\)}{i1}                    % g
\fmflabel{\(g\)}{i2}                    % g
\fmflabel{\(q\)}{o8}                    % q
\fmflabel{\(\bar{q^{\prime}}\)}{o7}     % q'bar
\fmflabel{\(b\)}{o6}                    % b
\fmflabel{\(b\)}{o5}                    % b
\fmflabel{\(\bar{b}\)}{o4}              % bbar
\fmflabel{\(\bar{b}\)}{o3}              % bbar
\fmflabel{\(\bar{\nu}_{l}\)}{o2}        % nubar
\fmflabel{\(l^{-}\)}{o1}                % l-

\end{fmfchar*}
\end{fmffile}
\end{document}

答案1

此解决方案不使用feynmf,但使用一个名为费曼加拿大运输安全局)。

对于这个特定的图表,自动顶点放置结果不令人满意,因此我手动指定顶点相对于其他顶点的放置(我可能在微调某些距离时有点忘乎所以……)。通常,只需left=of (vertex)或就足够了,above right=of (vertex)但可以使用微调距离above right=(distance) and (distance) of (vertex)

edge label=...您可以使用或指定边标签edge label'=...,具体取决于您想要标签位于边的哪一侧。

输出

\documentclass[tikz]{standalone}

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

\begin{document}
\begin{tikzpicture}
  \begin{feynman}
    %% Gluon and top quarks
    \vertex (g1) {\(g\)};
    \vertex[below right=0.5cm and 2.5cm of g1] (t4);
    \vertex[below right=1.5cm and 0.5cm of t4] (t3);
    \vertex[below left=1.5cm and 0.5cm of t3] (t2);
    \vertex[below left=0.5cm and 2.5cm of t2] (g2) {\(g\)};

    \vertex[above right=0.1cm and 1.5cm of t4] (t5);
    \vertex[below right=0.1cm and 1.5cm of t2] (t1);

    %% Upper shower
    \vertex[right=1cm of t5] (f3) {\(b\)};
    \vertex[above right=0.5cm and 0.5cm of t5] (W1);
    \vertex[above right=0.8cm and 0.1cm of W1] (f1) {\(q\)};
    \vertex[above right=0.3cm and 0.8cm of W1] (f2) {\(\overline q'\)};

    %% Lower shower
    \vertex[right=1cm of t1] (f6) {\(\overline b\)};
    \vertex[below right=0.5cm and 0.5cm of t1] (W2);
    \vertex[below right=0.8cm and 0.1cm of W2] (f7) {\(\overline \nu_{\ell}\)};
    \vertex[below right=0.3cm and 0.8cm of W2] (f8) {\(\ell\)};

    %% Higgs
    \vertex[right=1.5cm of t3] (H);
    \vertex[above right=0.5cm and 1cm of H] (f4) {\(b\)};
    \vertex[below right=0.5cm and 1cm of H] (f5) {\(\overline b\)};

    \diagram* {
      (g1) -- [gluon] (t4),
      (g2) -- [gluon] (t2),
      {[edges=fermion] 
        (f6) -- (t1) 
             -- [edge label=\(\overline t\)] (t2) 
             -- [edge label=\(t\)] (t3) 
             -- [edge label=\(\overline t\)] (t4) 
             -- [edge label=\(t\)] (t5) 
             -- (f3),
        (f7) -- (W2) -- (f8),
        (f2) -- (W1) -- (f1),
        (f5) -- (H) -- (f4),
      },
      (t3) -- [scalar, edge label=\(H^{0}\)] (H),
      (t1) -- [boson, edge label'=\(W^{-}\)] (W2),
      (t5) -- [boson, edge label=\(W^{+}\)] (W1),
    };
  \end{feynman}
\end{tikzpicture}
\end{document}

相关内容