armi.reactor.blueprints.assemblyBlueprint module
This module defines the blueprints input object for assemblies.
In addition to defining the input format, the AssemblyBlueprint class is responsible for
constructing Assembly objects. An attempt has been made to decouple Assembly construction
from the rest of ARMI as much as possible. For example, an assembly does not require a reactor to be
constructed, or a geometry file (but uses contained Block geometry type as a surrogate).
- class armi.reactor.blueprints.assemblyBlueprint.Modifications(*args, **kwargs)[source]
Bases:
MapThe names of material modifications and lists of the modification values for each block in the assembly.
Initialize a Map.
- Parameters:
*args – sequence of key/value pairs.
**kwargs – kwargs for input to OrderedDict.
- key_type
alias of
Yamlizablestr
- value_type
alias of
Sequence
- attributes = <yamlize.attribute_collection.MapAttributeCollection object>
- class armi.reactor.blueprints.assemblyBlueprint.ByComponentModifications(*args, **kwargs)[source]
Bases:
MapThe name of a component within the block and an associated Modifications object.
Initialize a Map.
- Parameters:
*args – sequence of key/value pairs.
**kwargs – kwargs for input to OrderedDict.
- key_type
alias of
Yamlizablestr
- value_type
alias of
Modifications
- attributes = <yamlize.attribute_collection.MapAttributeCollection object>
- class armi.reactor.blueprints.assemblyBlueprint.MaterialModifications(*args, **kwargs)[source]
Bases:
MapA yamlize map for reading and holding material modifications.
A user may specify material modifications directly as keys/values on this class, in which case these material modifications will be blanket applied to the entire block.
If the user wishes to specify material modifications specific to a component within the block, they should use the by component attribute, specifying the keys/values underneath the name of a specific component in the block.
Defines a yaml map attribute for the assembly portion of the blueprints (see
AssemblyBlueprint) that allows users to specify material attributes as lists corresponding to each axial block in the assembly. Two types of specifications can be made:1. Key-value pairs can be specified directly, where the key is the name of the modification and the value is the list of block values.
2. The “by component” attribute can be used, in which case the user can specify material attributes that are specific to individual components in each block. This is enabled through the
ByComponentModificationsclass, which basically just allows for one additional layer of attributes corresponding to the component names.These material attributes can be used during the resolution of material classes during core instantiation (see
construct()andconstruct()).Initialize a Map.
- Parameters:
*args – sequence of key/value pairs.
**kwargs – kwargs for input to OrderedDict.
- key_type
alias of
Yamlizablestr
- value_type
alias of
Sequence
- attributes = <yamlize.attribute_collection.MapAttributeCollection object>
- class armi.reactor.blueprints.assemblyBlueprint.AssemblyBlueprint(*args, **kwargs)[source]
Bases:
ObjectA data container for holding information needed to construct an ARMI assembly.
This class utilizes
yamlizeto enable serialization to and from the blueprints YAML file.Defines a yaml construct that allows the user to specify attributes of an assembly from within their blueprints file, including a name, flags, specifier for use in defining a core map, a list of blocks, a list of block heights, a list of axial mesh points in each block, a list of cross section identifiers for each block, and material options (see I_ARMI_MAT_USER_INPUT0).
Relies on the underlying infrastructure from the
yamlizepackage for reading from text files, serialization, and internal storage of the data.Is implemented as part of a blueprints file by being imported and used as an attribute within the larger
Blueprintsclass.Includes a
constructmethod, which instantiates an instance ofAssemblywith the characteristics as specified in the blueprints.- classmethod getAssemClass(blocks)[source]
Get the ARMI
Assemblyclass for the specified blocks.- Parameters:
blocks (list of Blocks) – Blocks for which to determine appropriate containing Assembly type
- construct(cs, blueprint)[source]
Construct an instance of this specific assembly blueprint.
- Parameters:
cs (Settings) – Settings object which containing relevant modeling options.
blueprint (Blueprint) – Root blueprint object containing relevant modeling options.
- attributes = <yamlize.attribute_collection.AttributeCollection object>
- class armi.reactor.blueprints.assemblyBlueprint.AssemblyKeyedList(*args, **kwargs)[source]
Bases:
KeyedListEffectively and OrderedDict of assembly items, keyed on the assembly name.
This uses yamlize KeyedList for YAML serialization.
Initialize a Map.
- Parameters:
*args – sequence of key/value pairs.
**kwargs – kwargs for input to OrderedDict.
- item_type
alias of
AssemblyBlueprint
- property bySpecifier
Used by the reactor to
_loadCompositeslater, specifiers are two character strings.
- attributes = <yamlize.attribute_collection.KeyedListAttributeCollection object>