Отсутствующие метки на графике Фейнмана с использованием feynmf

Отсутствующие метки на графике Фейнмана с использованием feynmf

Я пытаюсь создать график Фейнмана с помощью пакета feynmf. Мой минимальный пример:

\documentclass{article}

\usepackage{feynmf}

\begin{document}

\begin{fmffile}{diagram}

  \begin{fmfgraph*}(40,25)
    \fmfleft{i1,i2}
    \fmfright{o1,o2}
    \fmfbottom{b}
    \fmf{fermion}{i2,v1,o2}
    \fmf{photon}{v1,b}
    \fmflabel{i1}{i1}
    \fmflabel{i2}{i2}
    \fmflabel{o1}{o1}
    \fmflabel{o2}{o2}
    \fmflabel{b}{b}
  \end{fmfgraph*}

\end{fmffile}

\end{document}

После первой компиляции у меня есть график, но нет меток (как и ожидалось, я полагаю...). Я получаю ошибку

pdflatex> feynmf: Label file diagram.t1 not found:

pdflatex> feynmf: Process diagram.mf with METAFONT and then reprocess this file.

Хорошо, я делаю, как сказано, и пытаюсь обработать файл .mf с помощью Metafont в моем терминале (используя Xubuntu) с помощью

mpost diagram.mf

И тут я застреваю. Он начинается, а затем останавливается на вопросительном знаке, и я не знаю, как действовать дальше или что Metapost пытается мне сказать:

This is MetaPost, version 1.803 (kpathsea version 6.1.1)
(mpost.mp (/usr/share/texlive/texmf-dist/metapost/base/plain.mp
Preloading the plain mem file, version 1.004) ) (./diagram.mf
(/usr/share/texmf/metafont/feynmf/feynmf.mf
>> mode_setup
! Isolated expression.
<to be read again> 
                   ;
l.117 mode_setup;

? 

Кто-нибудь может помочь? Как мне получить свои этикетки? Спасибо большое!

решение1

Программа для вызова — не Metapost, а Metafont:

mf diagram.mf

Однако лучше использовать feynmpтот, который имеет тот же синтаксис и создает файлы Metapost: вы получите diagram.mpи запустите mpost diagram.mpего.

Есть еще одна возможность:

\documentclass{article}

\usepackage{feynmp-auto} % or \usepackage{feynmp}

\begin{document}

\begin{fmffile}{diagram}

  \begin{fmfgraph*}(40,25)
    \fmfleft{i1,i2}
    \fmfright{o1,o2}
    \fmfbottom{b}
    \fmf{fermion}{i2,v1,o2}
    \fmf{photon}{v1,b}
    \fmflabel{i1}{i1}
    \fmflabel{i2}{i2}
    \fmflabel{o1}{o1}
    \fmflabel{o2}{o2}
    \fmflabel{b}{b}
  \end{fmfgraph*}

\end{fmffile}

\end{document}

Пакет feynmp-auto(автор которого я) даже позволяет избежать необходимости ручного запуска mpost: диаграмма компилируется в конце запуска ( pdflatexтолько если исходный код был изменен в текущем запуске LaTeX) и правильно разместит ее при следующем запуске LaTeX.

введите описание изображения здесь

Связанный контент