simsopt.geo

Submodules

simsopt.geo.biotsavart module

class simsopt.geo.biotsavart.BiotSavart(coils, coil_currents)

Bases: object

B(compute_derivatives=0)
B_and_dB_vjp(v, vgrad)
clear_cached_properties()
compute(points, compute_derivatives=0)
d2B_by_dXdX(compute_derivatives=2)
d2B_by_dXdcoilcurrents(compute_derivatives=1)
d3B_by_dXdXdcoilcurrents(compute_derivatives=2)
dB_by_dX(compute_derivatives=1)
dB_by_dcoilcurrents(compute_derivatives=0)
set_points(points)

simsopt.geo.config module

simsopt.geo.curve module

class simsopt.geo.curve.Curve

Bases: object

dfrenet_frame_by_dcoeff()
dincremental_arclength_by_dcoeff_vjp(v)
dkappa_by_dcoeff_impl(dkappa_by_dcoeff)
dkappa_by_dcoeff_vjp(v)
dkappadash_by_dcoeff()
dtorsion_by_dcoeff_impl(dtorsion_by_dcoeff)
dtorsion_by_dcoeff_vjp(v)
frenet_frame()
kappa_impl(kappa)
kappadash()
plot(ax=None, show=True, plot_derivative=False, closed_loop=True, color=None, linestyle=None)
torsion_impl(torsion)
class simsopt.geo.curve.JaxCurve(quadpoints, gamma_pure)

Bases: simsgeopp.Curve, simsopt.geo.curve.Curve

dgamma_by_dcoeff_impl(dgamma_by_dcoeff)
dgamma_by_dcoeff_vjp(v)
dgammadash_by_dcoeff_impl(dgammadash_by_dcoeff)
dgammadash_by_dcoeff_vjp(v)
dgammadashdash_by_dcoeff_impl(dgammadashdash_by_dcoeff)
dgammadashdash_by_dcoeff_vjp(v)
dgammadashdashdash_by_dcoeff_impl(dgammadashdashdash_by_dcoeff)
dgammadashdashdash_by_dcoeff_vjp(v)
dkappa_by_dcoeff_vjp(v)
dtorsion_by_dcoeff_vjp(v)
gamma_impl(gamma)
gammadash_impl(gammadash)
gammadashdash_impl(gammadashdash)
gammadashdashdash_impl(gammadashdashdash)
class simsopt.geo.curve.RotatedCurve(curve, theta, flip)

Bases: simsgeopp.Curve, simsopt.geo.curve.Curve

dgamma_by_dcoeff_impl(dgamma_by_dcoeff)
dgamma_by_dcoeff_vjp(v)
dgammadash_by_dcoeff_impl(dgammadash_by_dcoeff)
dgammadash_by_dcoeff_vjp(v)
dgammadashdash_by_dcoeff_impl(dgammadashdash_by_dcoeff)
dgammadashdash_by_dcoeff_vjp(v)
dgammadashdashdash_by_dcoeff_impl(dgammadashdashdash_by_dcoeff)
dgammadashdashdash_by_dcoeff_vjp(v)
gamma_impl(gamma)
gammadash_impl(gammadash)
gammadashdash_impl(gammadashdash)
gammadashdashdash_impl(gammadashdashdash)
get_dofs()
num_dofs()
set_dofs_impl(d)
simsopt.geo.curve.incremental_arclength_pure(d1gamma)
simsopt.geo.curve.incremental_arclength_vjp(d1gamma, v)
simsopt.geo.curve.kappa_pure(d1gamma, d2gamma)
simsopt.geo.curve.kappagrad0(d1gamma, d2gamma)
simsopt.geo.curve.kappagrad1(d1gamma, d2gamma)
simsopt.geo.curve.kappavjp0(d1gamma, d2gamma, v)
simsopt.geo.curve.kappavjp1(d1gamma, d2gamma, v)
simsopt.geo.curve.torsion_pure(d1gamma, d2gamma, d3gamma)
simsopt.geo.curve.torsionvjp0(d1gamma, d2gamma, d3gamma, v)
simsopt.geo.curve.torsionvjp1(d1gamma, d2gamma, d3gamma, v)
simsopt.geo.curve.torsionvjp2(d1gamma, d2gamma, d3gamma, v)

simsopt.geo.fouriercurve module

class simsopt.geo.fouriercurve.FourierCurve(quadpoints, order)

Bases: simsgeopp.FourierCurve, simsopt.geo.curve.Curve

get_dofs(self: simsgeopp.FourierCurve)List[float]
set_dofs(self: simsgeopp.FourierCurve, arg0: List[float])None
class simsopt.geo.fouriercurve.JaxFourierCurve(quadpoints, order)

Bases: simsopt.geo.curve.JaxCurve

A Python+Jax implementation of the FourierCurve

get_dofs()
num_dofs()
set_dofs_impl(dofs)
simsopt.geo.fouriercurve.jaxfouriercurve_pure(dofs, quadpoints, order)

simsopt.geo.jit module

simsopt.geo.jit.jit(fun)

simsopt.geo.magneticaxis module

class simsopt.geo.magneticaxis.JaxStellaratorSymmetricCylindricalFourierCurve(quadpoints, order, nfp)

Bases: simsopt.geo.curve.JaxCurve

This class can for example be used to describe a magnetic axis.

get_dofs()
num_dofs()
set_dofs_impl(dofs)
class simsopt.geo.magneticaxis.StellaratorSymmetricCylindricalFourierCurve(quadpoints, order, nfp)

Bases: simsgeopp.StellaratorSymmetricCylindricalFourierCurve, simsopt.geo.curve.Curve

get_dofs(self: simsgeopp.StellaratorSymmetricCylindricalFourierCurve)List[float]
set_dofs(self: simsgeopp.StellaratorSymmetricCylindricalFourierCurve, arg0: List[float])None
simsopt.geo.magneticaxis.stellaratorsymmetriccylindricalfouriercurve_pure(dofs, quadpoints, order, nfp)

simsopt.geo.objectives module

class simsopt.geo.objectives.CurveLength(curve)

Bases: object

J()
dJ()
class simsopt.geo.objectives.LpCurveCurvature(curve, p, desired_length=None)

Bases: object

J()
dJ()
class simsopt.geo.objectives.LpCurveTorsion(curve, p)

Bases: object

J()
dJ()
simsopt.geo.objectives.Lp_curvature_pure(kappa, gammadash, p, desired_kappa)
simsopt.geo.objectives.Lp_torsion_pure(torsion, gammadash, p)
class simsopt.geo.objectives.MinimumDistance(curves, minimum_distance)

Bases: object

J()
dJ()
simsopt.geo.objectives.curve_length_pure(l)
simsopt.geo.objectives.distance_pure(gamma1, l1, gamma2, l2, minimum_distance)

simsopt.geo.parameterfreecurve module

class simsopt.geo.parameterfreecurve.ParameterFreeCurve(xyz)

Bases: simsgeopp.Curve, simsopt.geo.curve.Curve

This class can for example be used to describe a magnetic axis.

get_dofs()
num_dofs()
set_dofs_impl(dofs)

Module contents