v0.10.1
Improvements
- Adds second derivatives of contravariant basis vectors to the list of quantities we can compute.
- Refactors most of the optimizer subproblems to use JAX control flow, allowing them
to run more efficiently on the GPU. - Adds
'shear'as a compute quantity andShearas an objective function. - Adds a new objective
Pressureto target a pressure profile as a function of rho instead
of spectral coefficients likeFixPressure. Can also be used when optimizing kinetic equilibria. - Allows all profile objectives to have callable bounds and targets.
- All objective function values should now be approximately independent of the grid
resolution. Previously this was only true when objectives hadnormalize=True Objective.print_valueNow prints max/min/avg for most objectives, and it should be
clear whether it is printing the actual value of the quantity or the error between
the objective and its target.- Adds new options to
plot_boozer_modesto plot only symmetry breaking modes (when
helicity is supplied) or only the pointwise maximum of the symmetry breaking modes. - Changes default
Gridsorting to False, to avoid unintentional sorting of
passed-in nodes. Must explicitly specifysort=TruetoGridobject to sort now.
Breaking Changes
- Removes
gridattribute fromProfileclasses,gridshould now be passed
in when callingProfile.compute.
Bug Fixes
- Fixes bug where running DESC through the command line interface with the
-gflag
failed to properly utilize the GPU
Full Changelog: v0.10.0...v0.10.1