DisruptionPy: An open-source physics-based Scientific Framework for Disruption Analysis of Fusion Plasmas
Authors/Creators
- 1. Massachusetts Institute of Technology
Contributors
Project leader:
Project members:
- 1. Massachusetts Institute of Technology
Description
An interoperable Python package for plasma disruption analysis and prediction using ML.
Abstract
A key element to ensure steady state operations in magnetically-confined tokamak devices is the prediction and avoidance of disruptions. These are sudden losses of the thermal and magnetic energy stored within the plasma, which can occur when tokamaks operate near stability boundaries or because of hardware anomalies. The energy stored in the plasma and released during disruptions over milliseconds can cause severe damage to plasma-facing components, limiting experimental operations and the device's lifespan [1]. Disruptions still pose a serious challenge to next-generation fusion devices such as ITER or SPARC, which will have to operate near some of the limits of plasma stability to achieve intended performance and will do so at for long and frequent intervals. Fusion science currently lacks first-principle, theoretical solutions to fully predict and avoid disruptions. However, previous work [2, 3] has shown the usefulness of machine-learning (ML) algorithms for disruption prevention for both DIII-D and EAST operations. DisruptionPy provides a standardized analysis pipeline across different fusion devices to build ML-ready datasets.
Technical info
C-MOD
- Improve C-MOD Te width computation #402
- Improve docstring of C-MOD physics methods #412
DIII-D
- Remove dipprog_dt_rt from DIII-D XFAIL column #399
EAST
- Add initial framework support for EAST #386
- Add EAST physics methods #393
- Fix column name typo in EAST configuration #409
Framework
- Allow quick exclusion from run_methods #368
- Log physics method time in decorator #391
- Fix BatchedCSVOutputSetting #389
- Re-sort all TOML files #398
- Simplify lint jobs with matrix #400
- Replace all occurrences of np.empty #404
Testing
- Python test improvements #388
- Fix test for methods and columns #395
Documentation
- LaTeX support for documentation #390
- Cycle cache example #381
- Drop py3.10 from docs, add east snippet #403
Dependencies
- Pin py3.10 and update deps to Jan 2025 #392
- Drop python 3.10, support PEP 621 and uv #385
- Update deps to Feb 2025 #413
Files
Files
(111.9 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:3a346f6acbec5ade60cdb43f7dffbdb6
|
111.9 kB | Download |
Additional details
Funding
Software
- Repository URL
- https://github.com/MIT-PSFC/disruption-py/
- Programming language
- Python
- Development Status
- Active