pyAQSC
Welcome to pyAQSC documentations!

PyAQSC directly constructs globally quasi-symmetric, anisotropic stellarator equilibria without costly optimization using the method of near-axis expansion (NAE). The construction procedure is GPU accelerated and fully auto-differentiable.
PyAQSC is the first NAE code incorporating pressure anisotropy. It can explore new design spaces for equilibria with good quasisymmetry and small pressure anisotropy. It can also model higher order () physical quanties unavailable to scalar-pressure NAE (such as magnetic shear ) without special parameter choices.
For an intriduction on near-axis expansion and the formulation behind pyAQSC, see backgrounds.
For a quick example, see quick start.
Installation and dependencies
pyAQSC requires Numpy, Matplotlib, Scipy, JAX, and interpax. To install a JAX version matching your hardware, see the official JAX installation guide.
After installing JAX, install pyAQSC by:
pip install aqsc
Some unit tests uses Matt Landreman's pyQSC. The code does not require pyQSC to function. PyQSC import is disabled by default, and can be enabled in config.py when needed.
Notebooks in MHD_recursion_relations/ and magnetic_recursion_relations/ requires wxMaxima to view. The notebooks are not required to
run pyAQSC, but contains source expressions that pyAQSC evaluates.
Importing
To use pyAQSC, simply run
import aqsc
Contact
Please contact Lanke Fu at PPPL for questions and bug reports.
References
- Weakly Quasisymmetric Near-Axis Solutions to all Orders
- Solving the problem of overdetermination of quasisymmetric equilibrium solutions by near-axis expansions. I. Generalized force balance
- Solving the problem of overdetermination of quasisymmetric equilibrium solutions by near-axis expansions. II. Circular axis stellarator solutions
-
Direct construction of optimized stellarator shapes. Part 1. Theory in cylindrical coordinates
- Optimized quasisymmetric stellarators are consistent with the Garren–Boozer construction