armi.reactor.components.shapes module¶
Component subclasses that have shape.
-
class
armi.reactor.components.shapes.NullComponent(name, material, Tinput, Thot, area=nan, isotopics='', mergeWith='', components=None)[source]¶ Bases:
armi.reactor.components.component.Componentreturns zero for all dimensions. is none.
-
__nonzero__()¶ handles truth testing.
-
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]¶ Abstract bounding circle method that should be overwritten by each shape subclass.
-
getDimension(key, Tc=None, cold=False)[source]¶ Return a specific dimension at temperature as determined by key
- Parameters
key (str) – The dimension key (op, ip, mult, etc.)
Tc (float) – Temperature in C. If None, the current temperature of the component is used.
cold (bool, optional) – If true, will return cold (input) value of the requested dimension
-
DIMENSION_NAMES= ('area',)¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'isotopics', 'mergeWith', 'components')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.ComponentParameterCollection
-
-
class
armi.reactor.components.shapes.UnshapedComponent(name, material, Tinput, Thot, area=nan, op=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]¶ Bases:
armi.reactor.components.component.ComponentA component with undefined dimensions.
Useful for situations where you just want to enter the area directly.
-
pDefs= <armi.reactor.parameters.parameterDefinitions.ParameterDefinitionCollection object>¶
-
getComponentArea(cold=False)[source]¶ Get the area of this component in cm^2.
- Parameters
cold (bool, optional) – Compute the area with as-input dimensions instead of thermally-expanded
-
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]¶ Approximate it as circular and return the radius.
This is the smallest it can possibly be. Since this is used to determine the outer component, it will never be allowed to be the outer one.
-
DIMENSION_NAMES= ('area', 'op', 'modArea')¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'op', 'modArea', 'isotopics', 'mergeWith', 'components')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.UnshapedComponentParameterCollection
-
-
class
armi.reactor.components.shapes.UnshapedVolumetricComponent(name, material, Tinput, Thot, area=nan, op=None, isotopics=None, mergeWith=None, components=None, volume=nan)[source]¶ Bases:
armi.reactor.components.shapes.UnshapedComponentA component with undefined dimensions.
Useful for situations where you just want to enter the volume directly.
See also
-
is3D= True¶
-
getComponentArea(cold=False)[source]¶ Get the area of this component in cm^2.
- Parameters
cold (bool, optional) – Compute the area with as-input dimensions instead of thermally-expanded
-
DIMENSION_NAMES= ('area', 'op', 'volume')¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'op', 'isotopics', 'mergeWith', 'components', 'volume')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.UnshapedComponentParameterCollection
-
-
class
armi.reactor.components.shapes.ZeroMassComponent(name, material, Tinput, Thot, area=nan, op=None, isotopics=None, mergeWith=None, components=None, volume=nan)[source]¶ Bases:
armi.reactor.components.shapes.UnshapedVolumetricComponentA component that never has mass – it always returns zero for getMass and getNumberDensity
Useful for situations where you want to give a block integrated flux, but ensure mass is never added to it
See also
-
DIMENSION_NAMES= ('area', 'op', 'volume')¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'op', 'isotopics', 'mergeWith', 'components', 'volume')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.UnshapedComponentParameterCollection
-
-
class
armi.reactor.components.shapes.PositiveOrNegativeVolumeComponent(name, material, Tinput, Thot, area=nan, op=None, isotopics=None, mergeWith=None, components=None, volume=nan)[source]¶ Bases:
armi.reactor.components.shapes.UnshapedVolumetricComponentA component that may have negative mass for removing mass from batches
-
DIMENSION_NAMES= ('area', 'op', 'volume')¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'op', 'isotopics', 'mergeWith', 'components', 'volume')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.UnshapedComponentParameterCollection
-
-
class
armi.reactor.components.shapes.ShapedComponent(name, material, Tinput, Thot, area=nan, isotopics='', mergeWith='', components=None)[source]¶ Bases:
armi.reactor.components.component.ComponentA component with well-defined dimensions.
-
DIMENSION_NAMES= ('area',)¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'isotopics', 'mergeWith', 'components')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.ComponentParameterCollection
-
-
class
armi.reactor.components.shapes.DerivedShape(name, material, Tinput, Thot, area=nan, op=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]¶ Bases:
armi.reactor.components.shapes.UnshapedComponentThis a component that does have specific dimensions, but they’re complicated.
Notes
This component type is “derived” through the addition or subtraction of other shaped components (e.g. Coolant)
-
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]¶ The bounding circle for a derived component.
Notes
This is used to sort components relative to one another.
There can only be one derived component per block, this is generally the coolant inside a duct. Under most circumstances, the volume (or area) of coolant will be greater than any other (single) component (i.e. a single pin) within the assembly. So, sorting based on the Dh of the DerivedShape will result in somewhat expected results.
-
getVolume()[source]¶ Get volume of derived shape.
The DerivedShape must pay attention to all of the companion objects, because if they change, this changes. However it’s inefficient to always recompute the derived volume, so we have to rely on the parent to know if anything has changed.
Since each parent is only allowed one DerivedShape, we can reset the update flag here.
- Returns
volume of component in cm^3.
- Return type
float
-
getComponentArea(cold=False)[source]¶ Get the area of this component in cm^2.
- Parameters
cold (bool, optional) – Ignored for this component
-
DIMENSION_NAMES= ('area', 'op', 'modArea')¶
-
INIT_SIGNATURE= ('name', 'material', 'Tinput', 'Thot', 'area', 'op', 'modArea', 'isotopics', 'mergeWith', 'components')¶
-
paramCollectionType¶ alias of
armi.reactor.parameters.parameterCollections.UnshapedComponentParameterCollection