Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Set up OpenMC nuclear data

Install nuclear-data libraries, windowed multipole data, and depletion chains; check the resulting file layout.

Set up OpenMC nuclear data
├── Disk-space requirements
├── Expected directory structure
├── Sources
├── Downloads and extracted files
├── 1. Install the preprocessed HDF5 libraries
├── 2. Convert FENDL-3.2c neutron ACE data
├── 3. Install WMP data
├── 4. Install depletion chains
└── 5. Check the installed files

This notebook installs nuclear-data libraries for use with OpenMC. The libraries reside outside the repository, in the directory specified by data_root.txt. Before running the notebook, follow the Nuclear-data paths instructions to set that directory and make openmc_workbench_config available in your Jupyter Python environment. You will also need OpenMC and tqdm (%pip install tqdm if needed).

A standalone alternative, 0_0_set_up_nuclear_data.py, is exported from this notebook. Run either the notebook or the Python script, not both.

The installation includes preprocessed HDF5 libraries, windowed multipole (WMP) data, and fast-spectrum depletion chains. FENDL-3.2c requires an additional step: its neutron ACE files are converted to OpenMC HDF5 format. The published OpenMC nuclear-data page offers FENDL-3.2 data, which is different from FENDL-3.2c.

Before starting:

  1. Review the disk-space requirements below. Downloaded archives can expand to much larger files.

  2. Download FENDL-3.2c → Neutron → ACE from the IAEA and save the ZIP file locally. Set LOCAL_ARCHIVES["fendl-3.2c"] in the code below to its path. Other entries can remain None for automatic downloads.

  3. Run once with APPLY = False to see the planned downloads and conversions. Set APPLY = True and rerun to install the files.

Libraries that already have a cross_sections.xml index are skipped. Downloads and conversions may take considerable time; progress bars show download and checksum progress.

Disk-space requirements

Compressed archives can require substantially more space once extracted. Check the available disk space before setting APPLY = True.

The following installed sizes were measured using du -h for this setup. They are approximate and may differ between releases or filesystems.

Library or dataInstalled disk spaceMain contributor
ENDF/B-VIII.143 GiBThermal data: 37 GiB
JEFF-4.051 GiBThermal data: 45 GiB
JENDL-531 GiBThermal: 17 GiB; neutron: 14 GiB
FENDL-3.2c907 MiBNeutron HDF5 files
WMP v1.116 MiBWMP HDF5 files
Depletion chains123 MiBXML files

Allow approximately 126 GiB for the installed data, plus space for downloaded archives in _downloads/ and extracted files in _staging/. The converted FENDL HDF5 files are installed separately, while the original ACE files remain in staging. The highest disk-space use during installation will therefore exceed the table total. Any pre-existing ENDF/B-VIII.0 files also require additional space.

The notebook does not delete downloaded archives or staging files automatically. Remove them only after checking the installation.

Expected directory structure

The nuclear-data directory specified by data_root.txt will contain the following folders:

DATA_ROOT/
├── endf-b8.1/
│   ├── cross_sections.xml
│   ├── neutron/
│   ├── photon/
│   └── thermal/
├── fendl-3.2c/
│   ├── cross_sections.xml
│   └── neutron/
├── jeff-4/
│   ├── cross_sections.xml
│   ├── neutron/
│   ├── photon/
│   └── thermal/
├── jendl-5/
│   ├── cross_sections.xml
│   ├── neutron/
│   ├── photon/
│   └── thermal/
├── wmp/
│   └── WMP_Library/
├── chains/
│   ├── chain-endf-b8.1-fast.xml
│   ├── chain-jeff-4-fast.xml
│   └── chain-jendl-5-fast.xml
├── _downloads/    # downloaded archives; may be retained
└── _staging/      # extracted archives; may be removed after checking

WMP data and depletion chains are kept separate from the neutron, photon, and thermal libraries. The available subdirectories depend on the contents of each published archive.

Sources

The preprocessed HDF5 libraries and fast-spectrum depletion chains are available from OpenMC nuclear data. If a download is blocked, save the archive using a browser and enter its location in LOCAL_ARCHIVES.

Download FENDL-3.2c → Neutron → ACE from the IAEA FENDL page, then enter the saved ZIP path in LOCAL_ARCHIVES. This archive contains neutron ACE data at the supplied temperature; it is not the FENDL-3.2 HDF5 library.

WMP v1.1 is available from the MIT WMP Library release. WMP data and depletion chains are selected separately when preparing an OpenMC calculation.

Downloads and extracted files

Archives are extracted into _staging/, then the installed data are placed in their final directories. Existing installation directories are not overwritten. The notebook retains the staging files so that incomplete installations can be inspected. After checking the installed files, you may remove staging files to recover disk space.

If a published SHA-256 checksum is entered in EXPECTED_SHA256, the notebook compares it with the downloaded or local archive and stops if it differs. Without a published reference checksum, the calculated value is recorded but not verified. Values are saved in _downloads/sha256.json. Libraries already installed are skipped without checking their original archives again.

1. Install the preprocessed HDF5 libraries

The ENDF/B-VIII.1, JEFF-4.0, and JENDL-5 archives already contain HDF5 files for OpenMC. This step downloads and installs them; it does not process raw evaluated nuclear data.

2. Convert FENDL-3.2c neutron ACE data

OpenMC reads the processed ACE tables and converts them to HDF5. This is not a conversion from raw ENDF files. If an error stops the conversion, a partial directory may remain and should be inspected before trying again.

Some FENDL ZIP archives use Deflate64 compression, which Python’s zipfile cannot extract. In that case, the notebook uses the command-line unzip utility.

The IAEA archive stores ACE tables without filename extensions under neutron/ace/. The .xsd files contain metadata and are not converted. An earlier extraction is reused only if its file list and file sizes match those in the ZIP archive.

3. Install WMP data

WMP v1.1 is installed separately from the cross-section libraries. The files are placed under wmp/WMP_Library/.

4. Install depletion chains

This step installs the published fast-spectrum depletion chains under chains/. The chain used in a calculation depends on the model and nuclear-data library. Chain files are separate from cross_sections.xml.

5. Check the installed files

This final step checks that each installed cross_sections.xml index contains entries and that its referenced files exist. It also lists the WMP HDF5 files and depletion-chain files found. These are file checks, not validation of the nuclear data or physical results.

Subsequent notebooks can import paths such as ENDF_B81 from openmc_workbench_config. The names are discovered from the directories under DATA_ROOT when the configuration module is imported.