armi.nucDirectory.thermalScattering module
Handle awareness of Thermal Scattering labels for ENDF/B-VIII and ACE.
The information below is based on Parsons, LA-UR-18-25096, https://mcnp.lanl.gov/pdf_files/la-ur-18-25096.pdf
Scattering law labels are currently available for a variety of classifications:
Element in Compound (H in H2O, Be in BeO)
Element in structure (C in Graphite, Be in metal)
Can be separated as crystalline, 30% porous, 10% porous, etc.
Element in spin isomer (para H, ortho H, para D, ortho D, etc.)
Compound in phase (solid CH4, liquid CH4, SiO2-alpha, SiO2-beta).
Just compound (benzene)
Just isotope (Fe56, Al27)
The labels for these vary across evaluations (e.g. ENDF/B-VII, ENDF/B-VIII, etc.). We provide ENDF/B-III.0 and ACE labels. Other physics kernels will have to derive their own labels as appropriate in client code.
- class armi.nucDirectory.thermalScattering.ThermalScatteringLabels(name: str, compound: str, endf8Label: str, aceLabel: str)[source]
Bases:
objectContainer for the labels for a particular nuclide/compound combination.
- Variables:
name (str) – Name of the nuclide. This should match the string in the “byName” field in nuclideBases.
compound (str) – Label indicating what the subjects are in (e.g.
"Graphite"or"H2O". Can be left off for, e.g. Fe56.endf8Label (str) – Label for ENDF/B-VIII evaluation.
aceLabel (str) – Lavel for ACE.
- armi.nucDirectory.thermalScattering.fromNameAndCompound(name: str, compound: str)[source]
The standard interface for getting ENDF/B-VIII and ACE labels for a given nuclide.
- Parameters:
- Returns:
An instance of the data class used to contain the ENDF/ACE labels for this nuclide/componound combination.
- Return type:
- Raises:
ValueError – ARMI does not store a large data set of labels. If the user requests one ARMI does not have, they get an error.