vmec_jax.init_guessΒΆ

Initial guess construction.

VMEC builds its initial nested flux surfaces in profil3d, starting from boundary Fourier coefficients and (optionally) axis curves. The logic is:

  • For m>0 harmonics, scale boundary coefficients like rho**m with rho = sqrt(s).

  • For m=0 harmonics, blend linearly between axis and boundary values in s.

  • Lambda coefficients start at zero.

This module mirrors the profil3d behavior in VMEC2000 (external coefficient convention, i.e. wout-like), while keeping the code path differentiable and compatible with the rest of the JAX pipeline.

Functions

extract_axis_override_from_state(state, static)

Extract m=0 axis coefficients from a state in VMEC internal scaling.

initial_guess_from_boundary(static, boundary)

Build a VMECState initial guess from boundary coefficients.