Full text
README for Zenodo Deposit Reproducible Python Implementation of an SCS–Hill–Wheeler Statistical Model for Nuclear Fission Charge Yields (ENDF/B-VIII.0) H. Maruyama December 16, 2025 1 Overview This deposit provides a reproducible Python codebase for computing and fitting fission-product charge-yield distributions Y(Z) using a statistical framework that combines: •the Selective Channel Scission (SCS) model, and •Hill–Wheeler (logistic) barrier penetrability. The workflow estimates and visualizes: •charge-yield distributions Y(Z), •effective scission (fission) distance indicators Reff (Z) (a.k.a. dw(Z) in related notation), •channel-dependent “Fermi energy” profiles Ex(Z). Target nuclides (9): 232Th, 233U, 235U, 238U, 237Np, 239Pu, 240Pu, 242Pu, 241Am. Incident neutron-energy conditions: thermal, 500 keV, 14 MeV. Thermal-neutron fission is not available for some nuclides in the provided Y(Z) tables (e.g., 232Th and 238U), and such cases are skipped by design. Zenodo DOI: 10.5281/zenodo.17946882 2 Repository Structure (Typical) After extracting the ZIP archive, the project directory is organized as follows: <project-root>/ README.md requirements.txt src/ scs_hw/ __init__.py pipeline.py model_hw.py model_m11.py 1
yz_io.py ame2020_mass.py stable_ranges.py cases/ cases_endfb8_0.yaml cases_endfb8_0.json cases_endfb8_0_fit_ex.yaml cases_endfb8_0_fit_ex.json _tmp_single.yaml ... notebooks/ run_all_9nuclides.ipynb run_all_9nuclides_with_fermi.ipynb data/ mass/ mass.mas20 yz/ endfb8_0/ <Nuclide>/ Yz_<Nuclide>_<energy>.csv results/ endfb8_0/ (generated CSV/PNG will appear here) 3 Requirements •Python: recommended 3.10–3.12 •Main dependencies: numpy,scipy,matplotlib,pandas,pyyaml •For notebook execution: jupyter (recommended) 4 Setup (Recommended: Virtual Environment) Windows (PowerShell) python -m venv .venv .venv\Scripts\Activate.ps1 python -m pip install -U pip pip install -r requirements.txt pip install jupyter macOS / Linux python3 -m venv .venv source .venv/bin/activate python -m pip install -U pip pip install -r requirements.txt pip install jupyter 2
5 Input Data 5.1 Charge-yield tables The workflow reads preprocessed charge-yield tables Y(Z) from: data/yz/endfb8_0/<Nuclide>/Yz_<Nuclide>_<energy>.csv The Y(Z) tables are prepared from evaluated data (ENDF/B-VIII.0) and normalized so that the total yield is approximately 200. 5.2 Atomic masses Atomic masses are provided in AME2020 mass.mas20 format: data/mass/mass.mas20 These masses are used for computing Q-values and neutron separation energies required by the model logic. 6 Usage Example (Recommended: Jupyter Notebook) 6.1 Launch From the project root directory, run: jupyter lab 6.2 Notebook to run Open one of the following notebooks and execute Run All: •notebooks/run all 9nuclides.ipynb A lightweight batch run for the 9 nuclides across available energies (useful for quick checks). •notebooks/run all 9nuclides with fermi.ipynb Full workflow including Ex(Z) fitting and the main visualization outputs. 7 Outputs (Typical) After completion, results are generated under results/. Typical outputs include: •charge-yield comparison plots (evaluated Y(Z) vs fitted model), •estimated effective scission distances Reff (Z) (plotted as points; no smoothing curve), •estimated Ex(Z) profiles, •a Table-3-like summary CSV where the mean indicator is defined using only thermal and 500 keV conditions (14 MeV treated separately as a high-excitation regime). 8 Configuration Notes (Important) Case settings are specified in YAML/JSON files under cases/. The main configuration file points to input paths and provides per-nuclide settings (e.g., Z-range cutoffs and incident-energy cases). 3
8.1 Low-yield cutoff (to stabilize Exat the tails) To mitigate numerical instability in Ex(Z) estimation near distribution tails, the fitting stage may exclude points with very small experimental yield via a threshold (e.g., ex min yield ∼10−3). Adjust as needed, possibly per nuclide or per energy case. 8.2 Z-range cutoff (z fit start / “dataStart” equivalent) A lower bound such as z fit start can be used to exclude very-low-yield tails, improving robustness of the fits. The opposite-side cutoff is typically taken as Ztotal −z fit start. 9 Common Issues •No figures / empty outputs: verify that data/ contains the required inputs and that the selected case file is correct. •No thermal results for some nuclides: thermal-induced fission may not be applicable (or not provided in the Y(Z) tables) for certain nuclides, so thermal plots may not be produced by design. 10 How to Cite Please cite this deposit as: H. Maruyama, “Reproducible Python Implementation of an SCS–Hill–Wheeler Statistical Model for Nuclear Fission Charge Yields (ENDF/B-VIII.0),” Zenodo, 10.5281/zenodo.17946882. 11 License This deposit is released under the Creative Commons Attribution 4.0 International license (CC BY 4.0). See the license information on the Zenodo record page. 4