Skip to content

ERMETE-Lab/NuSHRED

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

72 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Shallow Recurrent Decoder for Nuclear Reactors Applications (NuSHRED)

License Python Data YouTube

This repository collects the codes regarding the application of the Shallow REcurrent Decoder (SHRED) method to Nuclear Reactors systems πŸ­βš›οΈ


πŸ“„ Related Publications

This repository serves as complementary code to the following papers:

  • [P1] Riva, S., Introini, C., Cammi, A., & Kutz, J. N. (2025). Robust State Estimation from Partial Out-Core Measurements with Shallow Recurrent Decoder for Nuclear Reactors. Progress in Nuclear Energy, vol. 189, pp. 105928 arXiv

  • [P2] Riva, S., Introini, C., Kutz, J. N. & Cammi, A. (2025). Towards Efficient Parametric State Estimation in Circulating Fuel Reactors with Shallow Recurrent Decoder Networks arXiv

  • [P3] Riva, S., Missaglia A., Introini, C., Kutz, J. N. & Cammi, A.(2026). From Models To Experiments: Shallow Recurrent Decoder Networks on the DYNASTY Experimental Facility arXiv

  • [P4] Riva, S., Introini, C., Cammi, A., & Kutz, J. N. (2025). Constrained Sensing and Reliable State Estimation with Shallow Recurrent Decoders on a TRIGA Mark II Reactor. arXiv

  • [P5] Riva, S., Introini, C., Kutz, J. N. & Cammi, A., (2026). Multi-Fidelity Learning with Shallow Recurrent Decoders for Reactor Physics Applications. arXiv

Upcoming works: two preprints on arxiv have been submitted on the application of SHRED to Fusion MHD systems (code will be released soon).


πŸ“Š Simulation Data

The compressed simulation datasets are available on Zenodo:

DOI

  • [D1] Molten Salt Fast Reactor (MSFR) in the accidental scenario Unprotected Loss Of Fuel Flow (ULOFF) - Single Transient (Reconstruction mode)
  • [D2] Molten Salt Fast Reactor (MSFR) in the accidental scenario Unprotected Loss Of Fuel Flow (ULOFF) - Parametric Transients
  • [D3] DYNASTY Experimental Facility - Single Transient (Reconstruction & Prediction mode) and Parametric Transients
  • [D4] CFD model of TRIGA Mark II Reactor - Single Transient (Reconstruction mode)
  • [D5] Neutronics Model using Diffusion and Point Kinetics LRA benchmark reactor

πŸŽ₯ If you want to know more about the SHRED method for nuclear reactors, check out this YouTube video!

You can use the script Code/download_datasets.py to download the datasets (if files argument is not specified, all datasets will be downloaded):

python Code/download_datasets.py --files D1 D2

πŸ—οΈ Foundations of SHRED

The SHRED method was first proposed and developed in this paper:

  • J. Williams, O. Zahn and J. N. Kutz, Sensing with shallow recurrent decoder networks, Proc. R. Soc. A, 2024

πŸ“Œ The original code base is available here: github.com/Jan-Williams/pyshred.

This repository also builds upon a related implementation:

  • Matteo Tomasetto, Jan P. Williams, Francesco Braghin, Andrea Manzoni, J. Nathan Kutz, Reduced Order Modeling with Shallow Recurrent Decoder Networks, Nature Communications, 2025

πŸ“Œ Improvements for parametric datasets are available here (collaborative between Matteo Tomasetto and Stefano Riva): github.com/MatteoTomasetto/SHRED-ROM

Additionally, the pyforce package is used for sensor placements and EIM/GEIM comparison in P1. See:


πŸ“‚ Repository Structure

πŸ“ shred/ β†’ Modules for the implementation of the SHRED network from github.com/Jan-Williams/pyshred and github.com/MatteoTomasetto/SHRED-ROM

πŸ“ Code/ β†’ Subfolders corresponding to the applications of SHRED in nuclear reactor concepts, with datasets associated as follows:

MSFR-ULOFF D1 MSFR-ULOFF D2 DYNASTY D3 TRIGA D4 LRA D5
P1 βœ…
P2 βœ…
P3 βœ…
P4 βœ…
P5 βœ…

▢️ How to Execute

1️⃣ Clone or download the repository.

2️⃣ Download the datasets and move them into the appropriate directory.

3️⃣ Install the required dependencies:

Base install:

pip install -r requirements.txt

P1 additionally requires an older version of pyforce (not compatible with v1.0.0), available at github.com/ERMETE-Lab/ROSE-pyforce for some notebooks. For assistance running P1, please contact stefano.riva@polimi.it directly.

P5 additionally requires FEniCSx (dolfinx v0.10.0) and its dependencies (gmsh, mpi4py, petsc4py, ufl, basix, pyvista) if you want to generate the data yourself. Install via conda:

conda install -c conda-forge fenics-dolfinx=0.10.0 gmsh mpi4py pyvista

See the P5 README for further details.

Note: All the SHRED-related code require the base pip install -r requirements.txt only.

Two simple tutorials are available in the Tutorial/ folder for Kolmogorov 2D Flow for single and multiparametric datasets, which can be executed as Jupyter notebooks.


πŸ“¬ Contact Information

For inquiries, please contact: πŸ“§ stefano.riva@polimi.it, carolina.introini@polimi.it, antonio.cammi@polimi.it, kutz@uw.edu.

For issues or bugs, refer to the GitHub Issues section of this repository.


πŸ“Š Results

πŸ“Œ Paper 1

Fast Flux $\phi_1$ Temperature $T$ Velocity $\mathbf{u}$

πŸ“Œ Paper 2

Out-Core Sensing (Fast Flux)

Fast Flux $\phi_1$ Temperature $T$ Velocity $\mathbf{u}$ Precursors Group 1 $c_1$

Mobile Sensors (First Group of Precursors)

Fast Flux $\phi_1$ Temperature $T$ Velocity $\mathbf{u}$ Precursors Group 1 $c_1$

Mobile Probes (only position measaured)

Fast Flux $\phi_1$ Temperature $T$ Velocity $\mathbf{u}$ Precursors Group 1 $c_1$

πŸ“Œ Paper 3

Case Visualization
Parametric Verification
Parametric Validation
Prediction Validation

πŸ“Œ Paper 4

Temperature $T$ Velocity $\mathbf{u}$

πŸ“Œ Paper 5

About

Shallow Recurrent Decoder for Nuclear Reactors applications

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages