armi.reactor.blueprints.reactorBlueprint module
Definitions of top-level reactor arrangements like the Core (default), SFP, etc.
See documentation of blueprints in /user/inputs/blueprints for more context. See example in
armi.reactor.blueprints.tests.test_reactorBlueprints.
This was built to replace the old system that loaded the core geometry from the cs['geometry']
setting. Until the geom file-based input is completely removed, this system will attempt to migrate
the core layout from geom files. When geom files are used, explicitly specifying a core system
will result in an error.
System Blueprints are a big step in the right direction to generalize user input, but was still mostly adapted from the old Core layout input. As such, they still only really support Core-like systems. Future work should generalize the concept of “system” to more varied scenarios.
See also
armi.reactor.blueprints.gridBlueprintsMethod for storing system assembly layouts.
armi.reactor.systemLayoutInput.SystemLayoutInputDeprecated method for reading the individual
face-map
- class armi.reactor.blueprints.reactorBlueprint.SystemBlueprint(*args, **kwargs)[source]
Bases:
ObjectThe reactor-level structure input blueprint.
Notes
We use string keys to link grids to objects that use them. This differs from how blocks/ assembies are specified, which use YAML anchors. YAML anchors have proven to be problematic and difficult to work with.
A Reactor Level Structure like a core or SFP.
Notes
yamlize does not call an __init__ method, instead it uses __new__ and setattr this is only needed for when you want to make this object from a non-YAML source.
- construct(cs, bp, reactor, geom=None, loadAssems=True)[source]
Build a core/IVS/EVST/whatever and fill it with children.
- Parameters:
cs (
Settingsobject.) – armi settings to applybp (
Reactorobject.) – armi blueprints to applyreactor (
Reactorobject.) – reactor to fillgeom (optional) –
loadAssems (bool, optional) – whether to fill reactor with assemblies, as defined in blueprints, or not. Is False in
UniformMeshGeometryConverterwithin the initNewReactor() method.
- Raises:
ValueError – input error, no grid design provided
ValueError – for 1/3 core maps, assemblies are defined outside the expected 1/3 core region
- attributes = <yamlize.attribute_collection.AttributeCollection object>
- class armi.reactor.blueprints.reactorBlueprint.Systems(*args, **kwargs)[source]
Bases:
KeyedListInitialize a Map.
- Parameters:
*args – sequence of key/value pairs.
**kwargs – kwargs for input to OrderedDict.
- attributes = <yamlize.attribute_collection.KeyedListAttributeCollection object>
- item_type
alias of
SystemBlueprint