费曼图的乐趣

作者:Joey Bernard

在量子物理学中,您可能想要进行的计算之一是计算两个或多个粒子如何相互作用。一旦您要计算两个以上粒子的相互作用,这可能会变得相当复杂和令人困惑。此外,根据相互作用的不同,可能会产生和湮灭作为相互作用一部分的虚粒子。您如何才能理清所有这些并弄清楚可能发生的事情?费曼图应运而生 (http://en.wikipedia.org/wiki/Feynman_diagram)。美国物理学家理查德·费曼在 1948 年开发了费曼图。它们通过一组非常简单的图表来表示复杂的量子粒子相互作用,这些图表由直线、波浪线和曲线组成。如果您碰巧使用黑板或白板,这将非常有效。但是,当您在互联网上分享您的想法时,这些媒介不是很有用。此外,大多数文字处理软件都无法为您的文章、论文和文档绘制这些图表。那么您能做什么呢?使用 JaxoDraw 软件包 (http://jaxodraw.sourceforge.net)。

JaxoDraw 提供了一个图形环境,用于在您的计算机上绘制费曼图。JaxoDraw 是一个 Java 应用程序,因此它应该可以在任何安装了相当新的 Java 虚拟机的操作系统上运行。目前只有 Fedora 和 Gentoo 的软件包,但源代码和二进制文件都可下载。二进制文件下载是一个包含您所需一切内容的 jar 文件。还有 Windows 安装程序和 Mac OS X 用户的磁盘映像。您还可以下载源文件并自行编译 JaxoDraw,或修改源代码以添加额外的功能。JaxoDraw 支持插件架构,并提供有关如何创建自己的插件的文档。这可能是添加您需要的任何额外功能的更有效方法。

让我们使用 JaxoDraw 最灵活的设置。这涉及从主网站的“下载”部分下载一个 tarball 文件。您应该看到的文件名是 jaxodraw-x.x-x-bin.tar.gz。下载此文件后,您可以使用以下命令解压缩它


tar xvzf jaxodraw-x.x-x-bin.tar.gz

这将创建一个子目录,其中包含 jar 文件和一些文档文件。要启动 JaxoDraw,首先切换到新的子目录并运行


java -jar jaxodraw-x.x-x.jar

请注意,当前的 GNU Java 虚拟机无法运行 JaxoDraw。启动时,您将拥有一个空白画布和一个可用于绘制费曼图的元素列表(图 1)。左侧分为几个部分,包括粒子类型或可用的编辑类型。JaxoDraw 使用 XML 文件来保存费曼图。这样,您可以稍后再次加载它们以进行编辑或构建更复杂的反应。

图 1. JaxoDraw 启动界面

要开始绘图,首先从左侧选择一个对象类型。常规粒子类型包括费米子(直线)、标量(虚线)、鬼粒子(点线)、光子(波浪线)和胶子(猪尾线)。在图中,这些粒子线有四个版本:直线、弧线、环线和贝塞尔曲线。选择其中一个后,您可以通过单击并拖动在画布上绘制相关的线。您可以在画布上的任何位置绘制,也可以强制绘图捕捉到网格点。这些网格点的间距可在“首选项”中调整。至少在开始时,您可能需要打开此功能,以便您可以使绘图的不同部分对齐。绘图的每个元素都有可以编辑的属性。您需要从左侧选择编辑工具,然后选择要编辑的元素(图 2)。

图 2. 编辑选项

从这里,您可以编辑位置、是否有箭头以及箭头指向哪个方向、线宽和箭头尺寸。还有一个文本元素,您可以使用它来标记您的图表。您可以以 LaTeX 格式或 PostScript 格式输入文本。这允许您在文本标签中使用特殊字符,例如希腊字母。要记住的一件事是,您不能混合 PostScript 和 LaTeX 文本对象。请务必根据您要生成的导出输出选择文本类型。

您可以将多个图表元素组合成一个实体。您需要按下左侧的选择工具,然后单击要创建的组的每个实体。然后,可以将此分组实体作为一个对象移动。您可以将这些组组合成超级组。这种嵌套类型没有技术限制。

您可以大致了解您的费曼图的外观,但是像 LaTeX 文本这样的内容不会在绘图画布上呈现。您需要通过渲染程序传递它,然后查看输出。您需要转到“选项”→“首选项”并设置辅助程序的路径。要预览完成的图表,请务必设置首选的 PostScript 查看器、LaTeX 路径和 dvips 路径。常见的 PostScript 查看器是 gv,它是 ghostscript 附带的查看器。

完成图表后,将其保存为 JaxoDraw XML 文件。这样,您始终可以返回并在需要时重新创建图表。

您可以将费曼图导出为多种格式之一。您可以导出为图像文件(JPEG 和 PNG)。如果您使用 PowerPoint 或网页或其他一些不理解 LaTeX 或 PostScript 的软件包,这将非常有用。您还可以选择导出为 LaTeX 或 PostScript 文件格式。如果导出到 LaTeX,您需要包含 JaxoDraw LaTeX 样式文件以处理费曼图的渲染。此样式文件名为 axodraw4j.sty,它基于 J. Vermaseren 的原始 axodraw.sty (http://www.nikhef.nl/~form/maindir/others/axodraw/axodraw.html)。现在,它是与主 JaxoDraw 应用程序下载分开的下载。您需要将其安装在 LaTeX 安装可以找到并使用它的位置。最简单的方法是将其复制到与 LaTeX 文档源文件相同的目录中。默认情况下,LaTeX 在渲染 LaTeX 文档时会在那里搜索。axodraw4j.sty 仍处于 beta 阶段,因此您可能需要坚持使用原始的 axodraw 软件包。如果您想在 JaxoDraw 中预览图表,也需要此软件包。

现在我已经介绍了一些 JaxoDraw 的功能,让我们看看如何绘制经典的粒子相互作用之一。这是电子和正电子碰撞,产生光子的情况。第一步是绘制两个费米子,箭头指向相反的方向(图 3)。在这些图中,空间方向为垂直方向,时间方向为水平方向。时间从左向右增加。电子和正电子碰撞并湮灭,产生至少一个光子(图 4)。

图 3. 电子/正电子碰撞

图 4. 产生光子

在撰写本文时,有四个插件可用。这些是不同的导出功能。其中两个用于导出为 PDF 或 SVG 文件格式。第三个用于以 Java 二进制文件序列化格式序列化您的图表。此格式在功能上应等同于 XML 文件格式,但它更小且加载速度更快,尤其是对于较大的图表。它唯一的缺点是它是一个二进制文件格式,因此您无法查看其内部。最后一个插件只是一个文本导出器。它提供了一个模板,向您展示一个简单的自定义导出器的外观。

JaxoDraw 有一个插件管理器来处理插件的安装和卸载(图 5)。您只需下载相关的 jar 文件,然后使用插件管理器安装它。插件存储在 $HOME/.jaxodraw/$VERSION/plugins 中。如果您愿意,您可以通过将相关的 jar 文件放入此目录来手动安装插件。要手动卸载,您可以从此位置删除相关的 jar 文件和任何相应的属性文件。

图 5. 插件管理器

随着在 LHC 可能发现希格斯玻色子,人们对粒子物理学的兴趣日益浓厚。现在,借助 JaxoDraw,您也可以撰写有关粒子相互作用的文章,并能够绘制适当的图片来向他人展示您想要描述的内容。玩得开心,并与他人分享您的见解。

加载 Disqus 评论