Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
441cb57
rename _Grid to AbstractGrid
daniel-dudt Aug 14, 2025
6ef6c6f
remove functionality from AbstractGrid
daniel-dudt Aug 15, 2025
43ab00e
merge with master
daniel-dudt Jan 2, 2026
c2f0011
reorganize grid file to subdirectory
daniel-dudt Jan 5, 2026
6587ee1
update flux grids
daniel-dudt Jan 5, 2026
ebf39af
test_grid is passing
daniel-dudt Jan 6, 2026
bace610
fix references in surface_integrals
daniel-dudt Jan 6, 2026
8ac82d2
edit Changelog
daniel-dudt Jan 6, 2026
afaa319
fix LinearGrid resolution getters
daniel-dudt Jan 7, 2026
1d17f22
set default surface_label='rho'
daniel-dudt Jan 7, 2026
6b410dc
fix typo in previous commit
daniel-dudt Jan 7, 2026
a6a816d
add source_grid back
daniel-dudt Jan 7, 2026
4102387
revert removal of source_grid test
daniel-dudt Jan 7, 2026
1fb537f
repairing tests
daniel-dudt Jan 7, 2026
4bbe81d
Merge branch 'master' into dd/grids
ddudt Jan 7, 2026
545c063
rename AbstractRTZGrid to AbstractGridFlux
daniel-dudt Jan 7, 2026
87d3a3b
check for flux grids in objectives
daniel-dudt Jan 7, 2026
d75f05e
update Basis coordinate references
daniel-dudt Jan 7, 2026
61c020c
Merge branch 'master' into dd/grids
ddudt Jan 8, 2026
f5c3e2f
Merge branch 'master' into dd/grids
ddudt Jan 8, 2026
9eb5d51
start adding curve grids
daniel-dudt Jan 12, 2026
686b986
Merge branch 'master' into dd/grids
ddudt Jan 13, 2026
7792e44
Merge branch 'master' into dd/grids
ddudt Jan 14, 2026
8336b1d
enforcing coils to use curve grids
daniel-dudt Jan 14, 2026
829ca0d
update curve/coil tests
daniel-dudt Jan 15, 2026
8a14706
Merge branch 'master' into dd/grids
ddudt Jan 15, 2026
99562c8
Merge branch 'master' into dd/grids
ddudt Jan 20, 2026
f761a58
fix broken test, zeta -> x2
daniel-dudt Jan 21, 2026
6aa931e
Merge branch 'master' into dd/grids
ddudt Jan 22, 2026
e463d18
update defaults for surface_label args
daniel-dudt Jan 26, 2026
958e6fc
update docstring types
daniel-dudt Jan 26, 2026
e596c94
other changes requested by Yigit and Rory
daniel-dudt Jan 26, 2026
bbb0241
super set up
daniel-dudt Jan 26, 2026
1a1a43c
changes requested by Yigit part 2
daniel-dudt Jan 27, 2026
c3e2fdf
CustomGridCurve and repairing tests
daniel-dudt Jan 27, 2026
cda41a1
Merge branch 'master' into dd/grids
ddudt Jan 27, 2026
af0af2e
fixing tests and correcting previous commits
daniel-dudt Jan 27, 2026
58bb052
scale weights to volume, even when not 3D coordinates
daniel-dudt Jan 27, 2026
426ddbc
special logic for alpha bounds/period
daniel-dudt Jan 27, 2026
9f98a11
fix particle test
daniel-dudt Jan 27, 2026
f082e0c
use CustomGridCurve in curve tests
daniel-dudt Jan 28, 2026
52c4070
remove period from create_meshgrid
daniel-dudt Jan 28, 2026
6919768
replace more tests with curve grids
daniel-dudt Jan 28, 2026
8cfc526
repairing more tests
daniel-dudt Jan 28, 2026
00a37cf
fix plotting grids
daniel-dudt Jan 29, 2026
6c97da4
curve grid in makegrid test
daniel-dudt Jan 29, 2026
640dab5
curve grid in coilset_geometry_optimization test
daniel-dudt Jan 29, 2026
af37ae2
update flux bounds and period
daniel-dudt Jan 29, 2026
4200563
generalize grid get_label() output
daniel-dudt Jan 29, 2026
99de6a1
generalize and remove checks from _get_grid_surface
daniel-dudt Jan 29, 2026
fd77c69
update line_label reference in line_integrals
daniel-dudt Jan 30, 2026
1c00411
initial commit of surface grids
daniel-dudt Jan 30, 2026
bf587ca
rename flux grids
daniel-dudt Jan 30, 2026
5eeccb6
revert some name changes in docs
daniel-dudt Jan 30, 2026
5574788
fix docs
daniel-dudt Jan 30, 2026
d4b5ee4
revert changes to html files
daniel-dudt Jan 30, 2026
3796976
fix docs again
daniel-dudt Feb 2, 2026
d9085a2
using surface grids
daniel-dudt Feb 3, 2026
9c3aae9
repair tests and notebooks with surface grids
daniel-dudt Feb 4, 2026
92393d5
updating notebooks
daniel-dudt Feb 4, 2026
fe18eab
update Changelog to highlight breaking changes
daniel-dudt Feb 4, 2026
ea97211
repairing more tests and notebooks
daniel-dudt Feb 5, 2026
47b7910
update master_compute_data
daniel-dudt Feb 5, 2026
5956ad6
Merge branch 'master' into dd/grids
ddudt Feb 5, 2026
5dd7e6a
repairing even more tests
daniel-dudt Feb 5, 2026
e41240e
Merge branch 'dd/grids' of https://github.com/PlasmaControl/DESC into…
daniel-dudt Feb 5, 2026
10ee59e
repairing more tests, again
daniel-dudt Feb 5, 2026
36ac54b
obj funs tests passing now
daniel-dudt Feb 6, 2026
fa60818
name change GridSurface -> GridToroidalSurface
daniel-dudt Feb 6, 2026
f8701f8
require nodes for all custom grids
daniel-dudt Feb 6, 2026
448f0d7
Merge branch 'master' into dd/grids
ddudt Feb 6, 2026
e10f202
fix last couple of tests
daniel-dudt Feb 6, 2026
c47bb45
changes requested by Yigit
daniel-dudt Feb 6, 2026
9ea8bb2
Merge branch 'dd/grids' of https://github.com/PlasmaControl/DESC into…
daniel-dudt Feb 6, 2026
b691b74
no sym for curve grids
daniel-dudt Feb 6, 2026
2007c11
resolve merge conflicts with master
daniel-dudt Feb 9, 2026
70b5cdc
new test comparing linear grids
daniel-dudt Feb 9, 2026
16321e9
fix line_integrals to work with spacing=0
daniel-dudt Feb 10, 2026
f589a97
type switch in plot_boundaries
daniel-dudt Feb 11, 2026
eac486c
do not plot surface with plot_surfaces
daniel-dudt Feb 11, 2026
5884b89
fix plots in notebooks again
daniel-dudt Feb 11, 2026
ea51f67
replace errors with deprecation warnings
daniel-dudt Feb 11, 2026
8573ae5
error if geometry classes do not compute on a grid
daniel-dudt Feb 12, 2026
684ca04
Merge branch 'master' into dd/grids
ddudt Feb 12, 2026
6e9559e
Merge branch 'master' into dd/grids
ddudt Feb 13, 2026
1510a29
Merge branch 'master' into dd/grids
YigitElma Feb 19, 2026
4e24756
merge with master
daniel-dudt Mar 9, 2026
65b8100
Merge branch 'master' into dd/grids
ddudt Mar 23, 2026
6be4f9f
Merge branch 'master' into dd/grids
ddudt Mar 31, 2026
336906c
fix grid for constant_offset_surface
daniel-dudt Mar 31, 2026
e09bdb1
Merge branch 'master' into dd/grids
ddudt Mar 31, 2026
cc782ec
Merge branch 'master' into dd/grids
YigitElma Apr 1, 2026
fce245b
changes requested by Yigit
daniel-dudt May 7, 2026
bfb2b3e
errorif_wrong_grid util function
daniel-dudt May 7, 2026
cedff58
resolve merge conflicts with master
daniel-dudt May 11, 2026
bd22630
Merge branch 'master' into dd/grids
ddudt May 11, 2026
8d8b75a
remove old test files
daniel-dudt May 12, 2026
7117ea3
Merge branch 'dd/grids' of https://github.com/PlasmaControl/DESC into…
daniel-dudt May 12, 2026
16ce1c2
repair tests from merge conflicts
daniel-dudt May 12, 2026
16340fb
repair more tests from merge conflicts
daniel-dudt May 12, 2026
1c98ec3
fix test from deflation PR
daniel-dudt May 12, 2026
ba92807
actually fix it this time
daniel-dudt May 12, 2026
ee5831c
_create_linear_nodes util function
daniel-dudt May 13, 2026
3345964
update grid documentation notebooks
daniel-dudt May 14, 2026
a293261
misc edits
daniel-dudt May 14, 2026
a65a787
pad nodes in CustomGrid if <3 cols
daniel-dudt May 14, 2026
31d31cb
misc edit
daniel-dudt May 15, 2026
67ee7d7
Merge branch 'master' into dd/grids
ddudt May 18, 2026
0c475d2
repair plot_boozer_modes
daniel-dudt May 18, 2026
555dc1e
Merge branch 'master' into dd/grids
YigitElma May 18, 2026
4c4058c
merge with master
daniel-dudt Jun 18, 2026
7ce452f
some changes requested by Yigit
daniel-dudt Jun 18, 2026
3320c08
Merge branch 'master' into dd/grids
ddudt Jun 18, 2026
297ede6
fix bugs Kaya found and add tests
daniel-dudt Jun 18, 2026
1fa125a
Merge branch 'master' into dd/grids
ddudt Jun 22, 2026
9c4007b
aliases and future warnings for deprecated attributes
daniel-dudt Jun 22, 2026
b561deb
Merge branch 'dd/grids' of https://github.com/PlasmaControl/DESC into…
daniel-dudt Jun 22, 2026
6b68c56
revert changes to tests/benchmarks
daniel-dudt Jun 22, 2026
a90a5f3
Merge branch 'master' into dd/grids
singh-jaydeep Jul 4, 2026
10a701c
update Changelog, remove bounds and period as io attributes
daniel-dudt Jul 15, 2026
5d06fd6
changes requested by Jaydeep
daniel-dudt Jul 15, 2026
cba9ffc
Merge branch 'master' into dd/grids
ddudt Jul 15, 2026
6459b00
make _coordinates an IO attr of only CustumGridFlux
daniel-dudt Jul 15, 2026
e1e1535
revert previous commit
daniel-dudt Jul 15, 2026
50ce64c
Merge branch 'master' into dd/grids
ddudt Jul 17, 2026
2794021
remove coordinates from IO attributes
daniel-dudt Jul 17, 2026
5b944c0
compatibility spelling error
daniel-dudt Jul 20, 2026
452e7b2
Merge branch 'master' into dd/grids
ddudt Jul 21, 2026
6e8c94b
changes requested by Jaydeep
daniel-dudt Jul 24, 2026
ccd9d5c
move CustomGridFlux to end of file
daniel-dudt Jul 24, 2026
3570008
set LMN attrs properly for jitable grids
daniel-dudt Jul 24, 2026
ea8b032
Merge branch 'master' into dd/grids
ddudt Jul 25, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 11 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
Changelog
=========

New Features

- Restructures the grid classes to allow for new grids in different coordinate systems besides flux coordinates. The old grid classes are aliased to the new grids of type ``AbstractGridFlux`` and are backwards compatable with the new API. ``Curve`` objects now expect a compute grid of type ``AbstractGridCurve``, and ``FourierRZToroidalSurface`` objects now expect a compute grid of type ``AbstractGridToroidalSurface``.

Performance Improvements

- Speeds up the ``"qr"`` trust-region subproblem and Newton-step solves in the least-squares optimizers by reusing the Jacobian QR factorization across the Levenberg-Marquardt parameter sweep. On ``jax >= 0.10.0`` this uses ``qr_multiply`` to additionally avoid forming ``Q`` explicitly; on older versions a fallback preserves the same results.
Expand All @@ -13,6 +17,10 @@ Bug Fixes
- Fixes ``VMECIO.save`` metadata for current-density variables and corrects the
asymmetric ``currvmns`` magnetic-axis extrapolation.

Deprecations

- ``Curve`` and ``FourierRZToroidalSurface`` objects now expect grids of type ``AbstractGridCurve`` and ``AbstractGridToroidalSurface``, respectively. Their support for grids of type ``AbstractGridFlux`` is deprecated and will be removed in a future release.


v0.17.2
-------
Expand Down Expand Up @@ -61,7 +69,6 @@ Bug Fixes
- Fixes incorrect units in the documentation of some curvature variables.



v0.17.0
-------

Expand Down Expand Up @@ -129,8 +136,6 @@ New Features
- Coil objectives accept pytree inputs for `target`, `bounds`, and `weight`.
- Able to set weights to zero, excluding certain coils from the objective.



Bug Fixes

- Fixes straight field line equilibrium conversion, see #1880
Expand Down Expand Up @@ -188,6 +193,7 @@ Backend
- Significant changes to how DESC handles static attributes during JIT compilation. Going forward if any class/object has attributes that should be treated as static by `jax.jit`, these should be declared at the class level like `_static_attrs = ["foo", "bar"]`. Generally, non-arraylike attributes such as functions, strings etc should be marked static, as well as any attributes used for control flow. Previously this was done automatically, but in a way that caused a lot of performance bugs and unnecessary recompilation. These changes have been implemented for all classes in the `desc` repository, but if you have custom objectives or other local objects that subclass from `desc` you may need to add this yourself. JAX error messages usually do a good job of alerting you to things that need to be static, and feel free to open an issue with `desc` if you have any questions.
- No longer closes over the field in ``desc.magnetic_fields._core.field_line_integrate``, which can dramatically reduce compile times when the field being traced has large size attributes (for example, when using a ``desc.magnetic_fields._core.SplineMagneticField`` object).


v0.14.2
-------

Expand Down Expand Up @@ -297,7 +303,6 @@ Breaking Changes
- Adds support for Python 3.13 and removes support for 3.9 since new JAX versions require minimum Python 3.10.



v0.13.0
-------

Expand All @@ -322,14 +327,14 @@ New Features
- Add ``desc.coils.initialize_modular_coils`` and ``desc.coils.initialize_saddle_coils`` for creating an initial guess for stage 2 optimization.
- Adds ``rotate_zeta`` function to ``desc.compat`` to rotate an ``Equilibrium`` around Z axis.


Bug Fixes

- Fixes bug that occurs when taking the gradient of ``root`` and ``root_scalar`` with newer versions of JAX (>=0.4.34) and unpins the JAX version.
- Changes ``FixLambdaGauge`` constraint to now enforce zero flux surface average for lambda, instead of enforcing lambda(rho,0,0)=0 as it was incorrectly doing before.
- Fixes bug in ``softmin/softmax`` implementation.
- Fixes bug that occured when using ``ProximalProjection`` with a scalar optimization algorithm.


v0.12.3
-------

Expand Down Expand Up @@ -358,8 +363,6 @@ Deprecations
- ``deriv_mode="looped"`` in ``ObjectiveFunction`` is deprecated and will be removed in a future version in favored of ``deriv_mode="batched"`` with ``jac_chunk_size=1``,




v0.12.2
-------

Expand Down Expand Up @@ -535,6 +538,7 @@ Breaking Changes
to avoid confusion with the common shorthand for `Equilibrium`.
- Minimum Python version is now 3.9


v0.10.4
-------

Expand Down
Loading
Loading