NEC++ 项目使用教程
1. 项目的目录结构及介绍
NEC++ 项目的目录结构如下:
necpp/
├── necpp/
│ ├── __init__.py
│ ├── necpp.py
│ └── necpp_src/
│ ├── ...
├── PyNEC/
│ ├── __init__.py
│ ├── PyNEC.py
│ └── ...
├── example/
│ ├── example.py
│ └── ...
├── LICENSE.txt
├── Makefile
├── README.md
├── build_wheels.sh
├── dev-requirements.txt
└── ...
目录介绍
necpp/: 包含使用 SWIG 封装的 C 接口的 Python 模块。PyNEC/: 包含 C++ 接口的 Python 模块。example/: 包含一些示例代码,展示如何使用 NEC++ 进行天线模拟。LICENSE.txt: 项目的许可证文件。Makefile: 用于构建项目的 Makefile。README.md: 项目的说明文档。build_wheels.sh: 用于构建 wheel 包的脚本。dev-requirements.txt: 开发依赖文件。
2. 项目的启动文件介绍
项目的启动文件主要是 example/example.py,该文件展示了如何使用 NEC++ 进行天线模拟。以下是 example.py 的部分代码:
import necpp
def handle_nec(result):
if (result != 0):
print(necpp.nec_error_message())
def impedance(frequency, z0, height):
nec = necpp.nec_create()
handle_nec(necpp.nec_wire(nec, 1, 17, 0, 0, z0, 0, 0, z0+height, 0.1, 1.0, 1.0))
handle_nec(necpp.nec_geometry_complete(nec, 1, 0))
handle_nec(necpp.nec_gn_card(nec, 1, 0, 0, 0, 0, 0, 0, 0))
handle_nec(necpp.nec_fr_card(nec, 0, 1, frequency, 0))
handle_nec(necpp.nec_ex_card(nec, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0))
handle_nec(necpp.nec_rp_card(nec, 0, 90, 1, 0, 5, 0, 0, 0, 90, 1, 0, 0, 0))
result_index = 0
z = complex(necpp.nec_impedance_real(nec, result_index), necpp.nec_impedance_imag(nec, result_index))
necpp.nec_delete(nec)
return z
if __name__ == '__main__':
z = impedance(frequency=34.5, z0=0.5, height=4.0)
print("Impedance \t(%6.1f %+6.1fI) Ohms" % (z.real, z.imag))
启动文件介绍
example.py: 该文件展示了如何创建 NEC++ 实例,定义天线结构,设置模拟参数,并获取模拟结果。
3. 项目的配置文件介绍
NEC++ 项目没有明确的配置文件,但可以通过修改 example/example.py 中的参数来调整模拟设置。例如,可以修改频率、天线高度等参数。
配置参数介绍
frequency: 模拟的频率。z0: 天线的初始高度。height: 天线的总高度。
通过修改这些参数,可以进行不同的天线模拟实验。
以上是 NEC++ 项目的基本使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些信息能帮助你更好地理解和使用 NEC++ 项目。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



