OpenMC Fusion Depletion Chain Generator
Creates a reduced OpenMC depletion chain for fusion blanket materials.
The generator reads the nuclides in an OpenMC materials.xml, checks that
each nuclide has neutron data in the selected cross_sections.xml, and
combines them with the lithium breeder reaction paths.
The generated chain includes:
- Li-6
(n,t)production of H-3 - Li-7 MT=205
(n,Xt)tritium production - H-3 beta-minus decay to He-3
- All nuclides found in the supplied materials file and their complete decay/reaction daughter closure
Requirements
- OpenMC 0.16 or newer
- Python with the OpenMC package available
- A base OpenMC depletion-chain XML file
- An OpenMC
materials.xmlfile - An OpenMC
cross_sections.xmlfile
Installation
Install the released package with:
pip install openmc-fusion-chain-generator
For development from a local checkout:
pip install -e .
OpenMC is installed separately because it is distributed through conda-forge rather than the PyPI package index used for this project:
conda install -c conda-forge openmc
After installation, the generator can be imported from any working directory:
import openmc_fusion_chain_generator
Python API
The main user-facing function is build_chain:
from pathlib import Path
from openmc_fusion_chain_generator import build_chain
build_chain(
base_file=Path("/path/to/chain_endfb81_fast.xml"),
materials_file=Path("/path/to/materials.xml"),
cross_sections_file=Path("/path/to/cross_sections.xml"),
output_file=Path("chain_fusion_breeder.xml"),
include_all_nuclides=False,
)
To retain every nuclide from the base chain, independently of the nuclides
listed in materials.xml, use:
build_chain(
base_file=Path("chain_endfb81_fast.xml"),
materials_file=Path("materials.xml"),
cross_sections_file=Path("cross_sections.xml"),
output_file=Path("chain_all_nuclides.xml"),
include_all_nuclides=True,
)
The helper functions are also available:
from openmc_fusion_chain_generator import (
read_material_nuclides,
read_neutron_library,
check_neutron_data,
)
nuclides = read_material_nuclides(Path("materials.xml"))
library = read_neutron_library(Path("cross_sections.xml"))
check_neutron_data(nuclides, Path("cross_sections.xml"))
build_chain recursively includes every decay daughter, neutron-reaction
target, and tracked light-particle secondary reachable from the material
nuclides. It validates neutron-data availability for every retained nuclide
that has neutron reactions before writing the output. It raises RuntimeError
with the missing nuclide or data-file paths when the selected library is
incomplete.
The equivalent command-line option is:
openmc-fusion-chain-generator \
--materials /path/to/materials.xml \
--base /path/to/chain.xml \
--cross-sections /path/to/cross_sections.xml \
--output chain_all_nuclides.xml \
--include-all-nuclides
Using the generated chain
MT=205 is represented by the custom (n,Xt) reaction. Import the generator
module before creating the depletion operator so that this reaction is
registered with OpenMC:
import sys
sys.path.insert(0, "/path/to/OpenMC-Fusion-Depletion-Chain-Generator")
import openmc_fusion_chain_generator # registers (n,Xt)
operator = openmc.deplete.CoupledOperator(
model,
"chain_fusion_breeder.xml",
normalization_mode="energy-deposition",
)
The generator does not modify the input materials, cross-section library, or base chain files.
Citation
Citation metadata is provided in CITATION.cff.
Metadata
Release files for openmc-fusion-chain-generator 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openmc_fusion_chain_generator-0.1.0.tar.gz | 8.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openmc_fusion_chain_generator-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.6 kB
Release files / openmc_fusion_chain_generator-0.1.0.tar.gz
| Download URL | openmc_fusion_chain_generator-0.1.0.tar.gz |
|---|---|
| Size | 8.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
91a2351dca915050544954726c6468d1c29ef5df417058f32c5aa1128fdcb007
|
|
BLAKE2b-256 checksum How to use checksums |
7d362ef9aaa7d861e80250a3d4772938e1a9fcd65da8e381aaee85daaa019c16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / openmc_fusion_chain_generator-0.1.0-py3-none-any.whl
| Download URL | openmc_fusion_chain_generator-0.1.0-py3-none-any.whl |
|---|---|
| Size | 7.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5db84ef7a4b04c4af6f8baeca251f554cf783295f2528a2e2b9b3b062434f48e
|
|
BLAKE2b-256 checksum How to use checksums |
5ca688f4e7001a08b1993400c60f28deecf0949dbad460612c69cf565fde0f6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency log