Skip to main content

A plain language Python wrapper for NEC

Project description

NECBOL V2.0.2

NECBOL is a Python library that provides a geometry-first interface for building antenna models using the NEC (Numerical Electromagnetics Code) engine.

⚠️ VERSION V2.0.0 introduced some limited function name and module name changes

If you have been using V1.0.0 with your own python files, you'll need to change the import statements and the name of the wire viewer function. See the file CHANGES from V1.0.0.md for details.

Features

  • Component-based antenna construction: Easily create antennas using predefined components.
  • Flexible length units: Specify antenna dimensions in mm, m, cm, ft or in as needed.
  • Automatic wire joining: Automatically connects wires that intersect, simplifying model creation.
  • Flexible connector placement: Add connectors between specific points on different objects.
  • Configurable simulation parameters: Set frequency, ground type, and pattern observation points.
  • Current component library: Helix, circular arc/loop, rectangular loop, straight wire, straight connector
  • Easy to place: feedpoint, series RLC load(s), prarallel RLC load(s) specified in ohms, uH and pF
  • Dielectric sheet model: currently experimental, not validated, built in to a flat sheet geometry component
  • Optimiser: Optimise VSWR and / or Gain in a specified direction
  • More coming soon: See next steps/future plans
  • Extensible design: It's written in Python, so you can use the core and add your own code
  • Example files: Simple dipole, Hentenna with reflector with example parameter sweep, Circular version of Skeleton Slot Cube with Optimiser code

Capture

⚠️ Note: NECBOL is a very new project, and my first released using pip. Code comments are work in progress, and I have yet to decide how to add a user guide.

🛠 Installation

Install using pip: open a command window and type

pip install necbol

User Guide

Copies of the files installed by pip are in the necbol folder) on this repository. There are several example files intended to highlight different aspects of necbol and different ways of doing similar things. You can copy these examples and modify to see how they work, or start your own from scratch.

Tip: Look inside necbol/components.py to see which antenna components and modification methods are currently available. I'm planning to make an automated help file from the comments inside this file (and then the others).

For a quick and basic overview, see the file example_dipole_with_detailed_comments.py for a minimal explanation of how to use this framework.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

necbol-2.0.3.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

necbol-2.0.3-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file necbol-2.0.3.tar.gz.

File metadata

  • Download URL: necbol-2.0.3.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for necbol-2.0.3.tar.gz
Algorithm Hash digest
SHA256 0affdf5f0767ac88051c42c67c1633f45862851cb366d8b50966f15cf0f42691
MD5 97111d8d741bef4d2e1610b655254b2f
BLAKE2b-256 5e5224ccfca46942b8294e30b651046f6d7ee0fcd5bb291b5f8a8252abfe44dd

See more details on using hashes here.

File details

Details for the file necbol-2.0.3-py3-none-any.whl.

File metadata

  • Download URL: necbol-2.0.3-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for necbol-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 4b8230386ccbc39458f9742c674a57ec5c042e6975c297dbdc0d0bc5111849b6
MD5 3adf993a276c1f6782397c9c8c5b858e
BLAKE2b-256 d7fe77dcf29b420e3d9326e76b885130eaf72d38cf3709ff58ee72a1d69b4cc3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page