Skip to content

Extend chartmap spline boundary range beyond [0.1, 0.99] #289

@krystophny

Description

@krystophny

Priority: High

Problem

Chartmap splines are currently restricted to the range [0.1, 0.99] in rho (equivalently [0.01, 0.98] in s). This limitation exists because VMEC coordinate inversion fails at exact boundary values.

Particles that venture beyond rho=0.99 use extrapolated spline values, which may be inaccurate.

Current Workaround

In field_splined.f90:create_splined_field:

real(dp), parameter :: RHO_SPLINE_MIN = 0.1_dp
real(dp), parameter :: RHO_SPLINE_MAX = 0.99_dp

Impact

  • Boundary layer physics may be less accurate
  • Loss detection based on rho=1.0 uses extrapolated field values
  • Recently changed from 0.9 to 0.99 which improved accuracy

Proposed Solution

  1. Improve VMEC coordinate inversion near separatrix (related to #TBD)
  2. Consider hybrid approach: use VMEC directly near boundary, splines in interior
  3. Add warning when particles access extrapolated region

Related

  • VMEC from_cyl Newton iteration robustness issue
  • See DOC/coordinates-and-fields.md Appendix A.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions