Recent Releases of vmecpp
vmecpp - v0.4.6
Bugfix
- Fix makegrid's write to NetCDF file method by @jons-pf in https://github.com/proximafusion/vmecpp/pull/364
- CLI main script terminates gracefully by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/365
New Features
- exact profile evaluation by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/370
What's Changed
- Faster cibuildwheel, Add UV to pypi_publish CI by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/369
- Human readable termination reason by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/366
- Added missing lasym terms to VmecWout by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/368
- Backwards compatibility with very old VMEC files by @jurasic-pf in https://github.com/proximafusion/vmecpp/pull/371
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.5...v0.4.6
- C++
Published by jurasic-pf 7 months ago
vmecpp - v0.4.5
What's Changed
- default constructible VmecInput (no need for the default() method anymore) by @jurasic-pf
- improved documentation by @jurasic-pf
- Preparatory work for asymmetric support by @krystophny in https://github.com/proximafusion/vmecpp/pull/360
New Contributors
- @krystophny made their first contribution in https://github.com/proximafusion/vmecpp/pull/360
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.4...v0.4.5
- C++
Published by jurasic-pf 7 months ago
vmecpp - v0.4.4
What's Changed
- Added docstrings for the majority of WOut quantities
- Disable SZIP support in HDF5: not needed here
- Add a naming guide for VMEC++
- Consolidate algorithmic constants into comprehensive constants header by @jons-pf in https://github.com/proximafusion/vmecpp/pull/340
- Various cleanups and additional documentations by @jons-pf
- Make FourierBasisFastToroidal consistent with FourierBasisFastPoloidal. by @jons-pf in https://github.com/proximafusion/vmecpp/pull/349
- Fix issue in simsopt_compat when boundary surface mpol and ntor differs from vmec indata mpol and ntor by @landreman in https://github.com/proximafusion/vmecpp/pull/352
- Indata2json update to fix gfortran14 errors
vmecppcan now be called directly as CLI, withoutpython -m vmecpp- Added radial, vertical and lambda force residual as well as reset reasons and delbsq to the diagnostics quantities in wout. Added an example of how to plot the convergence of a run
- Better error messages for free boundary and the
FATAL ERRORmessage on failed convergence
New Contributors
- @landreman made their first contribution in https://github.com/proximafusion/vmecpp/pull/352
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.3...v0.4.4
- C++
Published by jurasic-pf 8 months ago
vmecpp - v0.4.3
Feature
- Skip gradual vacuum pressure activation on hot-restart, speeding up hot-restart free-boundary convergence significantly
Bugfix
- Output object didn't serialize correctly to json due to a bug in
int32/int64handling
Minor Changes
- Restricted versions of our dependencies to fix compatibility issues with older library versions (
jaxtyping,jax,pydantic) - Pass on verbose flag to correctly silence free-boundary outputs
- Expanded
VmecInputdocstrings
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.2...v0.4.3
- C++
Published by jurasic-pf 10 months ago
vmecpp - v0.4.2
Minor Changes
- Generalized
wouthandling, loading and saving supports arbitrary extra fields now.VmecWOutshould now be compatible with wout files produced by any VMEC version or codes with similar output formats. - Improved
vmecppimport time again by reducing required dependencies (Improved CLI experience) - None handling for ensure_vmec2000
- Added more missing quantities, improving compatibility
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.1...v0.4.2
- C++
Published by jurasic-pf 10 months ago
vmecpp - v0.4.1
Minor Change
- Pass Magnetic response table to Python layer by reference instead of value
- Make the response table elements writable, so the field can be modified in place, instead of copied around.
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.4.0...v0.4.1
- C++
Published by jurasic-pf 10 months ago
vmecpp -
Breaking Changes
- Added Pydantic models for free boundary related Quantities (Mgrid). The pybind11 internal types are no longer required to call
vmecpp::runfor free-boundary equilibria - Added progress/convergence quantities to output
fsqt,wdot
Bugfix
- [flow control] Converted two while to for loops, this should resolve rare instances when VMEC++ didn't terminate
Minor Changes
- Added Py3.13 to the CI matrix, since it is officially supported
- All dependencies are now built from source in
bazel@jons-pf - Return status code/Python Exception instead of terminating when coils file is missing
- Ported Proxima internal way of dealing with Pydantic+Numpy models to open source repo, to replace numpydantic and get more robust type + shape annotations
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.3.5...v0.4.0
- C++
Published by jurasic-pf 10 months ago
vmecpp - v0.3.5
Minor Changes
- Added a
VmecInput.default()factory method for Python API users - Error handling and checking for mgrid files
- The correct default for mgrid_file is NONE
- Raise error if mgrid mirror != NIL
- Improvements to type hints
- Fixed CI issues due to a changed SHA256 hash of the Eigen release on GitLab
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.3.4...v0.3.5
- C++
Published by jurasic-pf 10 months ago
vmecpp -
Minor Changes
- Require keyword arguments for optional
vmecpp::runarguments, to avoid confusion - More robust
VmecWOutdefault value handling - added output quantity
input_extensionfor better wout compatibility - Improved error handling for mgrid files
- Docker build in CI
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.3.3...v0.3.4
- C++
Published by jurasic-pf 11 months ago
vmecpp -
Bugfix
- isvmec2000 supports fortran comments and blank lines
Minor changes
- Added a number of output quantities to the
woutoutputs, and fixed minor differences to VMEC2000 wout file format. - Added free boundary casess to pytest, so
git lfs pullis required for the test suite to complete - CI improvements
- Internal Refactorings
- General improvements to exception handling
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.3.2...v0.3.3
- C++
Published by jurasic-pf 11 months ago
vmecpp - v0.3.2
Deprecate HDF5 save function on the OutputQuantities object in the _vmecpp namespace.
Bugfix
- Fix PyPI CI by removing a blocking unit test (HDF5)
Known bugs
- HDF5 writing in wheels build for linux is broken since v0.1.0, because of the old HDF5 version used in manylinux2014
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.3.1...v0.3.2
- C++
Published by jurasic-pf 11 months ago
vmecpp - v0.3.0
Breaking changes:
simsopt_compat.Vmecobject uses high level CPP API, similar tovmecpp.runnowvmec.output_quantitiesare no longer of typeOutputQuantitiesvmec.woutisVmecWOutinstead ofFortranWoutAdapter
Bugfix:
- Fixed typo in output quantities:
ac_aux_fwas calledaic_aux_f
Minor changes
- Changes to the build system enabled support for editable installs
- Various CI improvements
- Removed
&ENDterminator when converting input to Fortran namelist files, only use the/terminator instead. - All our data models now support
model_dump_json()andmodel_dump()for serializationjaxtypingreplaced withnumpydantic
- Various CI improvements
- Removed test_files from the released wheel and sdist packages
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.2.1...v0.3.0
- C++
Published by jurasic-pf 11 months ago
vmecpp - v0.2.0
What's Changed
- Many large improvements to the build system
- Added an option to return output quantities even if run did not converge
- Bug fix: #174
New Contributors
- @cianciosa made their first contribution in https://github.com/proximafusion/vmecpp/pull/113
- @djs55 made their first contribution in https://github.com/proximafusion/vmecpp/pull/120
- @jurasic-pf made their first contribution in https://github.com/proximafusion/vmecpp/pull/131
- @ahnaf-tahmid-chowdhury made their first contribution in https://github.com/proximafusion/vmecpp/pull/134
Full Changelog: https://github.com/proximafusion/vmecpp/compare/v0.1.0...v0.2.0
- C++
Published by eguiraud-pf 12 months ago