Skip to content
Open-source · Modelica · Nuclear power systems

An open-source Modelica library for nuclear power plant simulation.

ON gives you the parts of a nuclear power plant, written in the Modelica language, and you connect them into a plant that runs in time.

Illustrative cutaway of a pool-type fast reactor vessel, with the core in blue
Reactor concept Illustrative cutaway

Neutron kinetics and decay heat, fuel rods and cladding, coolant thermal-hydraulics, pressurizers and steam generators, pumps, valves and accumulators, turbines and generator shafts, trip logic and control rods.

Explore the physics

Checking the published library snapshot…

Catalogue and recorded cases

Catalogue counts describe the identified accepted library revision. Simulation curves below are preserved recorded runs, with their own date and toolchain; they are not silently relabelled as results from the current revision. A model inventory is not a simulation or qualification verdict.

An interactive sketch

Explore neutron multiplication.

Switch between subcritical, critical and supercritical behaviour in this illustrative chain reaction.

Continue to the simulated plant cases
critical · steady
A recorded simulation case

 

Cutaway of a pool-type fast reactor vessel, with the core in blue
01

Recorded simulation cases

These recorded runs use the library of 12 August 2026, OpenModelica 1.26.3 and MSL 4.1.0. Curves and operating-point values are retained from those runs. They illustrate model behaviour at that revision, not the validation status of the current catalogue.

02

What physics is ON built on

Model families represented in the library. The catalogue and verification pages identify the accepted revision and its attached evidence; this overview is not a qualification claim.

Cutaway of a heterogeneous core lattice, with the two-group flux above it
Neutronics
Point kinetics with six delayed groups. One-group and two-group axial diffusion, with and without delayed neutrons, and a two-group form that follows the state of the core. Cartesian two-group k-eigenvalue, homogeneous and heterogeneous. Nodal methods: transverse-integrated polynomial moments, discontinuity factors at the interface, intranodal reconstruction, and a two-node current balance. Iodine and xenon 135. Decay heat from the Borst-Wheeler correlation, with the irradiation time.
A fuel rod cut along its length, from pellet to gap to cladding
Fuel and heat
Fuel rods resolved along the axis, radial conduction through the pellet, the gap and the cladding, and the heat flux at the cladding surface from the linear heat rate. Cylindrical and two-dimensional walls. An axial cosine power shape. Heat capacity of the fuel after shutdown, and a heat sink that can become unavailable.
A heated channel cut open, with the coolant rising through it
Thermal-hydraulics
Single-phase channels resolved along their length, water and steam pipes that carry flow in both directions, layered columns, and channels with elevation and a signed gravity head. Friction closures, one of them bounded by CFD for a length over diameter of ten. Film condensation on a vertical surface, in the Nusselt form and the laminar wavy form. Counterflow heat exchangers and steam generators with an axial wall.
Seven coolants side by side, at their working temperature
Coolants and materials
Liquid lead and lead-bismuth, for fast reactors. Sodium. FLiBe molten salt. Water and steam with the IF97 formulation, and two phases. Helium-xenon as an ideal gas, including the mixture with 72 % helium by mole. The pseudocritical temperature of carbon dioxide. AISI 304 steel with properties that follow the temperature.
How each part is checked. Verification requirements identify what is checked, by which method, and with which evidence. Structural inspection, analytic comparison and cross-code checks are distinct; a catalogue entry alone does not pass any of them. What is checked, and against what.

What this library is not. It is not a neutron transport code and it is not a system code. It does not replace RELAP, TRACE, or Serpent. It provides components for plant-system models, subject to the operating ranges and limitations of their evidence. No model here is meant for licensing, for safety analysis, or for plant qualification.
03

The example catalogue

Browse the example models present in the accepted library revision. Filter by area or search by name. Being listed here is not a claim that every example has been simulated successfully on the current revision.

⋅ search
04

From four parts to a plant

You do not write equations. You choose parts, you say what connects to what, and Modelica writes the equations for you.

STEP 01
Take a volume of coolant
It holds mass and energy. You tell it which fluid it holds, and lead is one of them.
Components · FixedPropertyVolume
Media · Pb, LBE, Sodium, FLiBe
STEP 02
Push flow through it
A boundary sets the flow at the inlet, another sets the pressure at the outlet. The fluid enters cold and leaves hot.
Components · FixedMassFlowBoundary
Components · FixedPressureBoundary
STEP 03
Put the core power in
A heat boundary adds the thermal power through a heat port. Or you put point kinetics there, and the power follows the reactivity.
Components · FixedHeatFlowBoundary
Physics · PointKineticsSixGroup
STEP 04
Read what comes out
Inspect the temperature rise, thermal power and energy residual. Judge balance closure against the case’s declared tolerances, not an assumed exact zero.
Systems · LeadPrimaryLoopReference
A composition example
Four parts joined by one pipe into a closed loop
Every parameter is yours. The loop states no plant design of its own, so you put your own operating point in it.
05

Take it and run it

One free tool runs everything on this page. No commercial licence is needed, at any step.

OpenModelica
Version 1.26.3 with the Modelica Standard Library 4.1.0. This is the same toolchain that produced every curve on this page.
Free · open source
BSD-3-Clause
Use it in your own work, open or closed. Keep the notice, and the library is yours to build on.
License
Readable Modelica source
Models, nested classes and package declarations are plain text. Inspect the equations, parameters and annotations in their source files.
Readable
Published versions
Inspect versioned releases and their evidence in the Cockpit. Access and downloads require an authorised account.
If you find an error, tell us. Say which model and which value, and what you expected. An institution can also check a part of the library and publish what it found, with its own name on it.
06

Cite it

A paper on the library is in preparation. Until it appears, cite the software itself.

The software
ON: an open-source Modelica library for nuclear power plant simulation. Tradenet Services srl, 2026. BSD-3-Clause.
DOI coming soon
The paper
The method describes how model requests become acceptance contracts, candidates, evidence and published library revisions.
in preparation
Ask for the entry
Write to us and we will send the current citation entry, and tell you when the paper and the repository are public.
Contact