There is a newer version of the record available.

Published November 7, 2025 | Version v0.12.0
Software Open

DisruptionPy: An open-source physics-based Scientific Framework for Disruption Analysis of Fusion Plasmas

  • 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 [FST2023]. 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 [NF2019, NF2021] 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

  • Refactor C-MOD get_n_equal_1_amplitude #460
  • Fix C-MOD te_width_ece unphysical values #466

DIII-D

  • Fix DIII-D physics methods' errors #479

EAST

  • Improve docstring of EAST physics methods #456
  • Remove previously added XFAILs due to east/east_1 tree issues #461
  • Suppress EAST errors #482

HBT-EP

  • Implement HBT-EP physics methods #476

Framework

  • Remove shorten_path #462
  • Change domain settings to physics methods #433
  • Add option to choose the new "disruption" efit21 tree #470
  • Auto initialize dummy DB if SQL server is missing #473
  • Add mdsthin as fallback from MDSplus #471
  • Cast all quantities to single precision by default #472

Dependencies

  • Update deps to May 2025 #459
  • Update deps to Jun 2025 #463
  • Update deps to Jul 2025 #465
  • Update deps to Aug 2025 #469
  • Update deps to Sep 2025 #475
  • Bump actions/stale from 9 to 10 #477
  • Update deps to Oct 2025 #483

Automation

  • Pin GH actions to use py3.12 #480
  • Add Install workflow #484
  • Add release target in makefile #485

Documentation

  • Update workflow figure #464
  • Remove FAQs #478
  • Fix path for user config #481
  • Create new References page #474
  • Minor documentation tweaks #486

Files

Files (117.3 kB)

Name Size Download all
md5:189d51d397cdc8d8bb8edbd1b52e65d1
117.3 kB Download

Additional details

Funding

United States Department of Energy
Open and FAIR Fusion for Machine Learning Applications DE-SC0024368

Software

Repository URL
https://github.com/MIT-PSFC/disruption-py/
Programming language
Python
Development Status
Active