armi.physics.neutronics.crossSectionSettings module¶
The data structures and schema of the cross section modeling options.
These are advanced/compound settings that are carried along in the normal cs object but aren’t simple key/value pairs.
The cs object could either hold the base data (dicts) and create instances of these data structure objects as needed, or the settings system could actually hold instances of these data structures. It is most convenient to let the cs object hold actual instances of these data.
See detailed docs in :doc: Lattice Physics <reference/physics/neutronics/latticePhysics/latticePhysics>.
-
class
armi.physics.neutronics.crossSectionSettings.XSModelingOptions(xsID, geometry=None, blockRepresentation=None, driverID=None, criticalBuckling=None, nuclideReactionDriver=None, validBlockTypes=None, externalDriver=True, useHomogenizedBlockComposition=False, numInternalRings=1, numExternalRings=1, mergeIntoClad=None, fileLocation=None, meshSubdivisionsPerCm=None)[source]¶ Bases:
objectAdvanced cross section modeling options for a particular XS ID.
-
property
xsType¶ Return the single-char cross section type indicator.
-
property
buGroup¶ Return the single-char burnup group indicator.
-
property
isPregenerated¶ True if this points to a pre-generated XS file.
-
property
-
class
armi.physics.neutronics.crossSectionSettings.XSSettingDef(name, default, description=None, label=None, options=None, schema=None, enforcedOptions=False, subLabels=None, isEnvironment=False)[source]¶ Bases:
armi.settings.setting2.SettingThe setting object with custom serialization.
Note that the VALUE of the setting will be a XSSettingValue object.
Initialize a Setting object.
- Parameters
name (str) – the setting’s name
default (object) – The setting’s default value
description (str, optional) – The description of the setting
label (str, optional) – the shorter description used for the ARMI GUI
options (list, optional) – Legal values (useful in GUI drop-downs)
schema (callable, optional) – A function that gets called with the configuration VALUES that build this setting. The callable will either raise an exception, safely modify/update, or leave unchanged the value. If left blank, a type check will be performed against the default.
enforcedOptions (bool, optional) – Require that the value be one of the valid options.
subLabels (tuple, optional) – The names of the fields in each tuple for a setting that accepts a list of tuples. For example, if a setting is a list of (assembly name, file name) tuples, the sublabels would be (“assembly name”, “file name”). This is needed for building GUI widgets to input such data.
isEnvironment (bool, optional) – Whether this should be considered an “environment” setting. These can be used by the Case system to propagate environment options through command-line flags.
-
class
armi.physics.neutronics.crossSectionSettings.XSSettings[source]¶ Bases:
dictThe container that holds the multiple individual XS settings for different ids.
This is what the value of the cs setting is set to. It handles reading/writing the settings to file as well as some other special behavior.
-
__getitem__(xsID)[source]¶ Return the stored settings of the same xs type and the lowest burnup group if they exist.
Notes
If AA and AB exist, but AC is created, then the intended behavior is that AC settings will be set to the settings in AA.
If only YZ’ exists and `YA is created, then the intended behavior is that YA settings will NOT be set to the settings in YZ.
Requirements for using the existing cross section settings: a. The existing XS ID must match the current XS ID. b. The current xs burnup group must be larger than the lowest burnup group for the
existing XS ID
If 3a. and 3b. are not met, then the default cross section settings will be set for the current XS ID
-