MRX documentation
MRX is a framework for performing 3D MHD equilibrium solves
without the assumption of nested flux surfaces.
The design of MRX is guided by several principles:
Thorough unit testing, regression testing, and continuous integration.
Extensibility: It should be possible to add new codes and terms to the objective function without editing modules that already work, i.e. the open-closed principle. This is because any edits to working code can potentially introduce bugs.
JAX-based: Everything is written in a way that is compatible with JAX and jit-compilation.
MRX is fully open-source, and anyone is welcome to use it,
make suggestions, and contribute.
We gratefully acknowledge funding from the Simons Foundation’s Hidden
symmetries and fusion energy project.
MRX is one of several available codes for performing stellarator
optimization. Others include VMEC,
DESC, and
SPEC.
The main difference is that MRX does not assume nested flux surfaces,
and is designed to be used in a JAX-based optimization framework.
Contents
API Reference
- MRX API Reference
- Module contents
DESCWrapperDerivativeSplineDifferentialFormDiscreteFunctionLazyBoundaryOperatorLazyDerivativeMatrixLazyDoubleCurlMatrixLazyDoubleDivergenceMatrixLazyExtractionOperatorLazyMassMatrixLazyMatrixLazyProjectionMatrixLazyStiffnessMatrixProjectorPullbackPushforwardQuadratureRuleSplineBasisTensorBasisappend_to_trace_dict()converge_plot()curl()div()get_1d_grids()get_2d_grids()get_3d_grids()get_xi()grad()interpolate_B()inv33()is_running_in_github_actions()jacobian_determinant()l2_product()newton_solver()picard_solver()poincare_plot()pressure_plot()project_desc_equilibrium()trace_plot()update_config()
- Module contents
Indices and tables
Tutorials
Examples
Tutorial Scripts
Tutorial Scripts:
Configuration Scripts
Configuration Scripts: