Evaluated nuclear data

The bundled example uses NNDC ENDF/B-VIII.0 H-1, not a fitted analytic curve. Its raw ENDF file is retained in the repository. The browser downloads a 9,808-byte compact binary and a provenance manifest.

The converter checks MF=2 has no unresolved or resolved resonance parameters requiring reconstruction, validates the reaction inventory, and retains MF=3 interpolation laws. H-1's capture representation uses log-log interpolation over its low-energy intervals. A union grid includes angular-law knots. The current shipped evaluation needs no approximate resonance reconstruction.

Rebuild the example

python3 -m venv /tmp/mc-data
/tmp/mc-data/bin/pip install -r scripts/data-requirements.txt
/tmp/mc-data/bin/python scripts/prepare-data.py

The script uses endf-parserpy, an established ENDF parser outside the browser. Its supported subset is explicit. It rejects other reaction inventories, unsupported angular/interpolation laws, and resonance-bearing evaluations rather than attempting a partial evaluator in WGSL. General isotopes require proper reconstruction and temperature processing with NJOY or equivalent before conversion; they cannot be made supported by renaming their files.

scripts/openmc-reference.py demonstrates independent offline processing through OpenMC's NJOY interface and exports an HDF5 library used only by the reference calculation. OpenMC and NJOY are development tools, not browser dependencies. This release does not offer a general ENDF/ACE/OpenMC-HDF5 importer. Add a tested converter for each law before expanding the accepted subset.

Local import format

The configuration editor accepts version 1 CEDataset JSON. Arrays energy, scatter, capture, fission, and nu share a strictly ascending grid. Cross sections are microscopic barns, energy is eV, and the atomic-weight ratio uses neutron mass. Metadata must identify provenance, source URL, raw SHA-256, license notice, temperature, angular law, and fission law. At most one nuclide is supported per CE material; multiple regions can have different supported datasets. CE isotope mixtures are not implemented.

mixed-2-5 data include a per-interval interpolation law for each reaction. legendre-cm includes up to eight coefficients at every grid point. A fission-bearing dataset must use tabulated-independent emission, a strictly ascending emitted-energy array, and a normalized nondecreasing CDF covering supported energies. This CDF represents linear inverse sampling and isotropic emission; other laws require a different implementation and validation.

The MCND-1 binary contains a 16-byte little-endian header (magic, version, point count, angular order), then 64 bytes per point: energy, three reaction cross sections, ν, three interpolation laws, and eight Legendre coefficients. The JSON manifest carries the remaining metadata and SHA-256. The loader verifies the digest before constructing GPU buffers.

Retain the evaluation attribution. See the nuclear-data license notice and OpenMC data processing.