hmatuschek / necpp

NEC2++ is a C++ rewrite of the Numerical Electromagnetics Code (NEC-2) with many new features like automatic error detection when you specify the structure incorrectly and much faster execution. Nec2++ can analyse radiating as well as scattering properties of structures. The simulation engine in Nec2++ is compiled into a library for easy integration into automatic antenna design systems or GUI tools. Examples are included for using Nec2++ from C/C++, Ruby and Python.

Home Page:http://elec.otago.ac.nz/w/index.php/Necpp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NEC2++ Numerical Electromagnetic Code in C++

This is a free (GPL) electromagnetic simulation software compatable with NEC-2. It has been rewritten from the ground up.

Nec2++ consists of a library that can be called from C++, C, python and Ruby, and so it can incorporated into other projects like GUI tools and automatic antenna optimization systems.

There is also an executable necpp that can read antenna description files (like the original). Nec2++ is developed on Debian linux, but will work on a variety of other operating systems.

Features

  • NEC-2 syntax compatable.
  • C, C++, Python and Ruby libraries included. Ideal for antenna optimization.
  • Large designs can be simulated with tens of thousands of elements (to the limit of 64-bit address space)
  • Geometry error detection. Throws exceptions if wires intersect or lie too close to one another.
  • Simulate in different media (for example antennas in seawater) by modifying the dielectric properties.
  • Uses fast numerical routines (BLAS and LAPACK). Can use the Intel MKL or OpenBLAS.

Citing NEC2++

If you use nec2++, please cite it as follows:

Timothy C.A. Molteno, ''NEC2++: An NEC-2 compatible Numerical Electromagnetics Code'', Electronics Technical Reports No. 2014-3, ISSN 1172-496X, October 2014.

Documentation

Online documentation built form the source code is available at http://tmolteno.github.io/necpp/. A guide to using nec2++ from python.

Installation

Instructions are in the file INSTALL.md.

Links

About

NEC2++ is a C++ rewrite of the Numerical Electromagnetics Code (NEC-2) with many new features like automatic error detection when you specify the structure incorrectly and much faster execution. Nec2++ can analyse radiating as well as scattering properties of structures. The simulation engine in Nec2++ is compiled into a library for easy integration into automatic antenna design systems or GUI tools. Examples are included for using Nec2++ from C/C++, Ruby and Python.

http://elec.otago.ac.nz/w/index.php/Necpp

License:GNU General Public License v2.0


Languages

Language:C++ 61.3%Language:C 17.0%Language:Fortran 15.5%Language:Ruby 2.8%Language:GAP 1.3%Language:Python 1.0%Language:Makefile 0.7%Language:M4 0.2%Language:Roff 0.1%Language:Shell 0.1%Language:CMake 0.0%