VMEX 0.2.0
First release under the VMEX name (formerly vmec-jax).
Install: pip install vmex · Docs: https://vmex.readthedocs.io
Highlights
- Renamed
vmec_jax → vmex—import vmex,vmexCLI (withvmecalias), and avmec_jaximport shim (DeprecationWarning) for one release. VMEC file conventions (wout_*.nc,boozmn_*.nc,Vmec*classes) unchanged. vmex.mirror— open and closed magnetic-mirror equilibria (differentiable, spline-native): fixed-boundary open mirrors (divergence 6.6e-15), free-boundary β scan 0–10% (implicit gradient 1.1e-10 vs reconverged FD), one-callsolve_fixed_boundary_from_radius.vmex.parallel— concurrent ensembles of independent solves (bit-identical to serial, ~3.3× at 8 workers).- Optimization — traceable
l_grad_bobjective and a five-campaign objectives showcase; cold-start single-stage plasma+coil benchmark (vacuum + finite β). - Speed — NESTOR free-boundary loop fused into jitted lanes; warm solves now beat VMEC2000 on every benchmark row.
- Robustness — typed
VmecErrors propagate through thejax.pure_callbackboundary; ruff+mypy lint gate in CI.
See CHANGELOG.md for the full list.