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: object

Container 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.

name: str
compound: str
endf8Label: str
aceLabel: str
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:
  • name (str) – Name of the nuclide.

  • compound (str) – Name of the compound (can be None).

Returns:

An instance of the data class used to contain the ENDF/ACE labels for this nuclide/componound combination.

Return type:

ThermalScatteringLabels

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.