Linux 中的天线
在本文中,我想介绍一个我最近在工作中实际使用过的软件。我的新工作涉及使用一种称为电离层探测仪的仪器来研究电离层。这种设备基本上是一个巨大的无线电发射器,它将无线电波从电离层反射回来,以观察其结构和组成。显然,其中一个重要的部分是了解各种发射器和接收器的辐射方向图。
存在几种用于建模导体周围电磁场的方法,但这里我将介绍一种称为 NEC2(数值电磁代码)的方法。它最初于 1970 年代在劳伦斯利弗莫尔国家实验室用 FORTRAN 开发。从那时起,它已经被用各种语言重新实现了很多次。具体来说,让我们看看 xnec2c。这个软件包用 C 语言实现了 NEC2,并且它还提供了一个 GTK 前端,用于与核心引擎交互。
xnec2c 应该在大多数 Linux 发行版中可用。在基于 Debian 的发行版中,您可以使用以下命令安装它
sudo apt-get install xnec2c
安装完成后,您可以使用 xnec2c
启动它。默认显示在您实际开始使用它之前不会显示任何内容。

图 1. 启动 xnec2c 会给您一个非常无聊的起点。
xnec2c 的历史仍然影响着它今天的行为方式。当您查看输入文件的格式时,这一点最为明显。基本结构基于穿孔卡片的想法,其中 xnec2c 的每个“命令”都由命令卡给出——这是 FORTRAN 根源的明确遗留。幸运的是,xnec2c 的 GTK 前端提供了一种相当实用的方法来构建这些输入文件。
您的 xnec2c 安装应该附带几个示例文件。在我的 Ubuntu 发行版中,它们位于 /usr/share/doc/xnec2c/examples。这些输入文件的文件名以“.nec”结尾。选择一个作为起点来使用 xnec2c,然后继续进行必要的修改以满足您自己的项目需求。

图 2. 加载输入文件后,您首先看到相关天线导线、其他导体和任何接地平面的几何视图。
中央窗口窗格提供了实际天线结构的三维几何视图。您可以单击并拖动图表以旋转视图并从各个角度查看它。窗口顶部有两个较大的按钮,分别名为“电流”和“电荷”。交替选择它们将显示由驱动电流引起的电流分布或电荷分布。
一旦您确定物理布局正确,您就可以开始了解系统的电磁行为。在顶部的菜单栏上,有一个名为“视图”的条目。单击“辐射方向图”会弹出一个新窗口,您可以在其中查看电磁辐射方向图的样子。有几个不同的选项可用。第一个“增益方向图”提供了大多数人可能认为的辐射方向图。

图 3. 您可以轻松地模拟天线系统的辐射方向图。
同样,您可以单击并拖动图像以从各个角度更好地查看方向图。
在同一个窗口中,还有第二个显示选项。假设您的输入文件具有适当的条目,请单击“E/H 场”按钮以查看您的配置的电场和/或磁场视图。

图 4. 如果您的输入文件具有适当的条目,您可以看到电场和磁场的显示。
窗口顶部有几个选项可用。例如,您可以更改驱动电流的频率,以查看您的系统在不同频率下的行为。
第二个可用的主要显示显示了您的天线设计在一系列驱动频率下的行为方式。单击“视图”→“频率图”会弹出一个新窗口。

图 5. 您可以获得几个关于天线设计电气行为的详细图表。
第一个按钮显示增益在给定的频率扫描范围内如何变化。单击每个后续按钮会将新图形添加到同一窗口。例如,单击 VSWR 按钮以查看电压驻波比 (VSWR) 如何随频率变化。

图 6. 您可以看到堆叠在一起的电气行为的多个图表,以获得更好的天线配置的整体视图。
如果您想同时查看多个图形,您可能需要调整窗口大小。与之前的 E/H 场图一样,这些图是否按您的预期运行取决于您使用的输入文件。
示例文件提供了一个很好的起点,但它们不太可能完全符合您的情况。在这些情况下,您需要编辑输入文件以将系统配置为您需要的样子。
虽然您可以简单地在任何文本编辑器中打开输入文件,但 xnec2c 包含一个内置的编辑功能。单击“文件”→“编辑”菜单项会弹出一个新窗口,您可以在其中查看所有输入卡。

图 7. 您可以使用内置编辑器自定义输入文件以满足您的个人规范。
您可以更改现有卡的值,但此编辑器的最佳功能是您只需单击一个按钮即可添加新卡。如果您是 NEC2 及其输入格式的新手,您可能不一定记得各种类型输入卡的代码和格式。编辑器窗口对此有所帮助。甚至还有一些按钮,例如镜像和缩放,它们通过利用您天线中可能存在的对称性来帮助设计阶段。
在每个显示中,当涉及到保存结果时,您都有几个不同的选项。最简单的是单击“文件”→“另存为”。这使您可以将结果图像另存为 PNG 文件。如果您选择“文件”→“另存为 gnuplot”,则实际数据将导出到文件中,并且格式适合您可能想要输入到 gnuplot 中的数据类型。这样,您可以为您的特定情况定制生成的图形显示。
xnec2c 生成的结果不能直接与其他 NEC2 实现的结果进行比较。它的重点更多在于交互式功能。如果您想要更传统的输出,您可以使用 xnec2c 查看您的天线配置,然后使用 nec2c 生成您的最终结果。