This repository was archived by the owner on Oct 12, 2026. It is now read-only.
Repository navigation
NECBOL v3.1.3 now available with pip
Version 3.0.0 laid the foundation for upcoming features including frequency sweeps, VSWR bandwidth optimisation, multi-model comparisons, and more advanced optimisation targets.
A key goal here is to have a single function for a given purpose, that you can use with no arguments if defaults are fine, but refine many features with optional arguments. Most if not all functions now operate directly on the model dataset, so there's no need to extract and remember parameters to pass to plotting routines etc.
Minor improvements:
- Added wire thickness to wire frame viewer - can be turned off / modified with optional arguments n_strands and alpha.
- Added wire_diameter_{units} as optional argument to the thin_sheet component. Wire diameter isn't critical for the dielectric sheet model and is set to a default value, but users might want to set this for a conducting wire mesh.
- Added optional taper_factor to helix (multiply radius by factor linearly applied as z increases from 0 to helix length)
- Deleted TO_DO and captured in GitHub issues
Objectives
- moving towards allowing several concurrent models in the same file
- preparing for detailed comparison of results, extraction of scattered fields from objects, delta dB plots etc
- moving towards adding a frequency sweep feature and add VSWR bandwidth as an optimisation target
- moving towards allowing gain parameters computed over a range of angles as optimiser targets (e.g. max vertical gain, min gain in a specified direction, front to back ratio)
- simplifying and automating gain pattern resolution and range settings
Key updates are to model 'global parameter' setting and plotting / data analysis functions. (see auto-generated docs and change history for more detail)