desc.integrals.Bounce2D.compute_theta

static Bounce2D.compute_theta(eq, X=16, Y=32, rho=1.0, iota=None, clebsch=None, **kwargs)Source

Return DESC coordinates θ of (α,ζ) Fourier Chebyshev basis nodes.

Parameters:
  • eq (Equilibrium) – Equilibrium to use defining the coordinate mapping.

  • X (int) – Poloidal Fourier grid resolution to interpolate the poloidal coordinate. Preferably rounded down to power of 2.

  • Y (int) – Toroidal Chebyshev grid resolution to interpolate the poloidal coordinate. Preferably rounded down to power of 2.

  • rho (float or jnp.ndarray) – Shape (num rho, ). Flux surfaces labels in [0, 1] on which to compute.

  • iota (float or jnp.ndarray) – Shape (num rho, ). Optional, rotational transform on the flux surfaces to compute on.

  • clebsch (jnp.ndarray) – Shape (num rho * X * Y, 3). Optional, precomputed Clebsch coordinate tensor-product grid (ρ, α, ζ). FourierChebyshevSeries.nodes(X,Y,rho,domain=(0,2*jnp.pi)). If supplied rho is ignored.

  • kwargs – Additional parameters to supply to the coordinate mapping function. See desc.equilibrium.Equilibrium.map_coordinates.

Returns:

theta (jnp.ndarray) – Shape (num rho, X, Y). DESC coordinates θ sourced from the Clebsch coordinates FourierChebyshevSeries.nodes(X,Y,rho,domain=(0,2*jnp.pi)).