使用 TikZ-Feynman 包时出错

使用 TikZ-Feynman 包时出错

今天我下载并安装了新的TikZ-Feynman绘制费曼图的软件包。我包括了软件包

\usepackage{tikz} 
\usepackage{tikz-feynman}
\tikzfeynmanset{compat=1.0.0}
\usetikzlibrary{shapes,arrows,positioning,automata,backgrounds,calc,er,patterns}

到我的序言中(已经多次更改)。

然而,已经有一个简单的示例代码,如

\begin{tikzpicture}
\begin{feynman}
\vertex (a) {\(\mu^{-}\)};
\vertex [right=of a] (b);
\vertex [above right=of b] (f1) {\(\nu_{\mu}\)};
\vertex [below right=of b] (c);
\vertex [above right=of c] (f2) {\(\overline \nu_{e}\)};
\vertex [below right=of c] (f3) {\(e^{-}\)};
\diagram* {
(a) -- [fermion] (b) -- [fermion] (f1),
(b) -- [boson, edge label'=\(W^{-}\)] (c),
(c) -- [anti fermion] (f2),
(c) -- [fermion] (f3),
};
\end{feynman}
\end{tikzpicture}

直接给出错误:

Package pgfkeys Error: I do not know the key '/graph drawing/node distance'.

你能帮助我吗?提前谢谢!

答案1

您需要用 进行编译lualatex

如果编译宽度为pdflatex,则会出现警告信息

Package tikz-feynman Warning: LuaTeX is required if you wish to have vertices a
utomatically placed. You can disable this warning by setting /tikzfeynman/warn 
luatex=false on input line 8.

但是,禁用警告并不能解决问题。

不幸的是,tikz-feynman手册没有透露有关 的任何用法lualatex。它似乎是一个隐藏的功能,或者软件包作者认为这是已知的。

\documentclass{article}

\usepackage{tikz} 
\usetikzlibrary{shapes,arrows,positioning,automata,backgrounds,calc,er,patterns}
\usepackage{tikz-feynman}
\tikzfeynmanset{compat=1.0.0}

\begin{document}
\begin{tikzpicture}
\begin{feynman}
\vertex (a) {\(\mu^{-}\)};
\vertex [right=of a] (b);
\vertex [above right=of b] (f1) {\(\nu_{\mu}\)};
\vertex [below right=of b] (c);
\vertex [above right=of c] (f2) {\(\overline \nu_{e}\)};
\vertex [below right=of c] (f3) {\(e^{-}\)};
\diagram* {
(a) -- [fermion] (b) -- [fermion] (f1),
(b) -- [boson, edge label'=\(W^{-}\)] (c),
(c) -- [anti fermion] (f2),
(c) -- [fermion] (f3),
};
\end{feynman}
\end{tikzpicture}
\end{document}

这是明显的μ子衰变产生的图像

在此处输入图片描述


编辑

正如下面的评论中提到的,这是 Ti 中的一个错误Z-Feynman 版本 1.0.0。从 1.1.0 版开始,Ti每当使用需要 LuaLaTeX 的功能时,Z-Feynman 都会发出警告。

如果您仍尝试使用自动图形放置算法而不使用 LuaLaTeX,则会使用一个非常简单的算法来生成类似以下内容:

在此处输入图片描述

如果您看到此输出,则需要将编译器更改为 LuaLaTeX,或者手动定位顶点的位置。

相关内容