Skip to content

Comments

Adding support for umbilic curves#2081

Draft
singh-jaydeep wants to merge 11 commits intoPlasmaControl:rg/NFP_facfrom
singh-jaydeep:NFP_fac_testing
Draft

Adding support for umbilic curves#2081
singh-jaydeep wants to merge 11 commits intoPlasmaControl:rg/NFP_facfrom
singh-jaydeep:NFP_fac_testing

Conversation

@singh-jaydeep
Copy link
Collaborator

@singh-jaydeep singh-jaydeep commented Feb 7, 2026

This PR is meant to update the umbilic curve PR and address some of the TODOs listed there. The changes are based on my understanding of the paper/original PR, so if anything isn't quite right I can revert it.

Overview:

  • Cosmetic changes (update docstrings, make variables uniform, removing some unused functions)
  • Rename base UmbilicCurve class to FluxSurfaceCurve, allowing for future representations of curves which by construction lie in a flux surface. Subclasses include FourierUmbilicCurve, which is the particular parameterization of umbilic curves used in the original paper.
  • Add a parameter m_umbilic to FourierUmbilicCurve, so that the class can represent all curves in the original paper.
  • Rename NFP_umbilic_factor to n_umbilic when used internally in FourierUmbilicCurve, and to N_scaling when used externally in basis and grid classes. Wanted a name which doesn't require knowing about umbilic curves when just working with bases or grids.
  • Separate compute functions for some of the operations happening in the UmbilicHighCurvature objective.
  • Add tests for the curve class and objective.

Notes:

  • when we update an i/o attribute, is there a way to regenerate the test examples so it doesn't throw warnings when I run the tests? To avoid those warnings I didn't include N_scaling in i/o attributes for grid and basis, and left if for the curve itself to update these in its _set_up().

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant