Ich versuche, einen Feynman-Graphen mit dem feynmf-Paket zu erstellen. Mein Minimalbeispiel ist
\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}
Nach einmaligem Kompilieren habe ich das Diagramm, aber nicht die Beschriftungen (wie erwartet, denke ich ...). Ich erhalte den Fehler
pdflatex> feynmf: Label file diagram.t1 not found:
pdflatex> feynmf: Process diagram.mf with METAFONT and then reprocess this file.
OK, also mache ich es wie gesagt und versuche die .mf Datei mit Metafont in meinem Terminal (mit Xubuntu) zu verarbeiten mit
mpost diagram.mf
Und dann stecke ich fest. Es beginnt und endet mit einem Fragezeichen, und ich weiß nicht, wie ich weitermachen soll oder was Metapost mir sagen will:
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;
?
Kann mir jemand helfen? Wie bekomme ich meine Etiketten? Vielen Dank!
Antwort1
Das aufzurufende Programm ist nicht Metapost, sondern Metafont:
mf diagram.mf
feynmp
Es ist jedoch besser , ein Programm mit derselben Syntax zu verwenden , das Metapost-Dateien erstellt: Sie erhalten es diagram.mp
und das Ausführen mpost diagram.mp
reicht aus.
Es gibt noch eine andere Möglichkeit:
\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}
Das Paket feynmp-auto
(dessen Autor ich bin) macht sogar eine manuelle Ausführung überflüssig mpost
: Das Diagramm wird am Ende eines Laufs kompiliert ( pdflatex
nur, wenn die Quelle im aktuellen LaTeX-Lauf geändert wurde) und platziert es beim nächsten LaTeX-Lauf korrekt.