Skip to main content

Crate endf_mat

Crate endf_mat 

Source
Expand description

ENDF material data: element symbols, MAT numbers, and natural abundances.

A standalone, zero-dependency crate providing lookup tables for nuclear data:

  • Element data: Symbols and names for Z=0 (neutron) through Z=118 (Oganesson)
  • MAT numbers: ENDF material identifiers for 535 ground-state isotopes
  • Natural abundances: IUPAC 2016 isotopic compositions for 289 isotopes
  • ZA utilities: ENDF ZA encoding/decoding (ZA = Z×1000 + A)

All data is compiled into static arrays — no file I/O, no external dependencies.

§Examples

// Element lookup
assert_eq!(endf_mat::element_symbol(92), Some("U"));
assert_eq!(endf_mat::symbol_to_z("Fe"), Some(26));

// MAT number lookup
assert_eq!(endf_mat::mat_number(92, 235), Some(9228));
assert_eq!(endf_mat::isotope_from_mat(9228), Some((92, 235)));

// Natural abundances
let u238 = endf_mat::natural_abundance(92, 238).unwrap();
assert!((u238 - 0.992742).abs() < 1e-6);

// ZA encoding
assert_eq!(endf_mat::za(92, 238), 92238);
assert_eq!(endf_mat::z_from_za(92238), 92);

Functions§

a_from_za
Extract mass number A from an ENDF ZA value.
element_name
Element name from atomic number Z.
element_symbol
Element symbol from atomic number Z.
has_endf_evaluation
Whether the ENDF/B-VIII.0 neutrons sublibrary has an evaluation for (Z, A).
isotope_from_mat
Reverse lookup: MAT number → (Z, A).
known_isotopes
All mass numbers with ENDF/B-VIII.0 evaluations for element Z.
mat_number
Look up the ENDF MAT number for a ground-state isotope (Z, A).
natural_abundance
Natural isotopic abundance (mole fraction) for a given isotope.
natural_isotopes
All naturally occurring isotopes for element Z, as (A, fraction) pairs.
symbol_to_z
Atomic number Z from element symbol (case-insensitive for elements Z≥1).
z_from_za
Extract atomic number Z from an ENDF ZA value.
za
Encode an isotope as ENDF ZA = Z×1000 + A.