armi.reactor.components.basicShapes module

Components represented by basic shapes.

Many reactor components can be described in 2D by circles, hexagons, rectangles, etc. These are defined in this subpackage.

class armi.reactor.components.basicShapes.Circle(name, material, Tinput, Thot, od, id=0.0, mult=1.0, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: ShapedComponent

A Circle.

Implementation: Circle shaped Component I_ARMI_COMP_SHAPES0
signature: Circle
requirements: R_ARMI_COMP_SHAPES

This class provides the implementation of a Circle Component. This includes setting key parameters such as its material, temperature, and dimensions. It also includes a method to retrieve the area of a Circle Component via the getComponentArea method.

is3D = False
THERMAL_EXPANSION_DIMS = {'id', 'od'}
pDefs = <armi.reactor.parameters.parameterDefinitions.ParameterDefinitionCollection object>
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]
getCircleInnerDiameter(Tc=None, cold=False)[source]
getComponentArea(cold=False)[source]

Computes the area for the circle component in cm^2.

isEncapsulatedBy(other)[source]

Return True if this ring lies completely inside the argument component.

DIMENSION_NAMES = ('od', 'id', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'od', 'id', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of CircleParameterCollection

material: Material
class armi.reactor.components.basicShapes.Hexagon(name, material, Tinput, Thot, op, ip=0.0, mult=1.0, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: ShapedComponent

A Hexagon.

Implementation: Hexagon shaped Component I_ARMI_COMP_SHAPES1
signature: Hexagon
requirements: R_ARMI_COMP_SHAPES

This class provides the implementation of a hexagonal Component. This includes setting key parameters such as its material, temperature, and dimensions. It also includes methods for retrieving geometric dimension information unique to hexagons such as the getPerimeter and getPitchData methods.

is3D = False
THERMAL_EXPANSION_DIMS = {'ip', 'op'}
pDefs = <armi.reactor.parameters.parameterDefinitions.ParameterDefinitionCollection object>
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]
getCircleInnerDiameter(Tc=None, cold=False)[source]
getComponentArea(cold=False)[source]

Computes the area for the hexagon component in cm^2.

getPerimeter(Tc=None)[source]

Computes the perimeter of the hexagon component in cm.

getPitchData()[source]

Return the pitch data that should be used to determine block pitch.

Notes

This pitch data should only be used if this is the pitch defining component in a block. The block is responsible for determining which component in it is the pitch defining component.

DIMENSION_NAMES = ('op', 'ip', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'op', 'ip', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of HexagonParameterCollection

material: Material
class armi.reactor.components.basicShapes.Rectangle(name, material, Tinput, Thot, lengthOuter=None, lengthInner=0.0, widthOuter=None, widthInner=0.0, mult=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: ShapedComponent

A Rectangle.

Implementation: Rectangle shaped Component I_ARMI_COMP_SHAPES2
signature: Rectangle
requirements: R_ARMI_COMP_SHAPES

This class provides the implementation for a rectangular Component. This includes setting key parameters such as its material, temperature, and dimensions. It also includes methods for computing geometric information related to rectangles, such as the getBoundingCircleOuterDiameter and getPitchData methods.

is3D = False
THERMAL_EXPANSION_DIMS = {'lengthInner', 'lengthOuter', 'widthInner', 'widthOuter'}
pDefs = <armi.reactor.parameters.parameterDefinitions.ParameterDefinitionCollection object>
getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]
getCircleInnerDiameter(Tc=None, cold=False)[source]
getComponentArea(cold=False)[source]

Computes the area of the rectangle in cm^2.

isLatticeComponent()[source]

Return true if the component is a lattice component containing void material and zero area.

getPitchData()[source]

Return the pitch data that should be used to determine block pitch.

Notes

For rectangular components there are two pitches, one for each dimension. This pitch data should only be used if this is the pitch defining component in a block. The block is responsible for determining which component in it is the pitch defining component.

DIMENSION_NAMES = ('lengthOuter', 'lengthInner', 'widthOuter', 'widthInner', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'lengthOuter', 'lengthInner', 'widthOuter', 'widthInner', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of RectangleParameterCollection

material: Material
class armi.reactor.components.basicShapes.SolidRectangle(name, material, Tinput, Thot, lengthOuter=None, widthOuter=None, mult=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: Rectangle

Solid rectangle component.

is3D = False
THERMAL_EXPANSION_DIMS = {'lengthOuter', 'widthOuter'}
getComponentArea(cold=False)[source]

Computes the area of the solid rectangle in cm^2.

DIMENSION_NAMES = ('lengthOuter', 'widthOuter', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'lengthOuter', 'widthOuter', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of RectangleParameterCollection

material: Material
class armi.reactor.components.basicShapes.Square(name, material, Tinput, Thot, widthOuter=None, widthInner=0.0, mult=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: Rectangle

Square component that can be solid or hollow.

Implementation: Square shaped Component I_ARMI_COMP_SHAPES3
signature: Square
requirements: R_ARMI_COMP_SHAPES

This class provides the implementation for a square Component. This class subclasses the Rectangle class because a square is a type of rectangle. This includes setting key parameters such as its material, temperature, and dimensions.

is3D = False
getComponentArea(cold=False)[source]

Computes the area of the square in cm^2.

getBoundingCircleOuterDiameter(Tc=None, cold=False)[source]
getCircleInnerDiameter(Tc=None, cold=False)[source]
getPitchData()[source]

Return the pitch data that should be used to determine block pitch.

Notes

For rectangular components there are two pitches, one for each dimension. This pitch data should only be used if this is the pitch defining component in a block. The block is responsible for determining which component in it is the pitch defining component.

DIMENSION_NAMES = ('widthOuter', 'widthInner', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'widthOuter', 'widthInner', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of RectangleParameterCollection

material: Material
class armi.reactor.components.basicShapes.Triangle(name, material, Tinput, Thot, base=None, height=None, mult=None, modArea=None, isotopics=None, mergeWith=None, components=None)[source]

Bases: ShapedComponent

Triangle with defined base and height.

Implementation: Triangle shaped Component I_ARMI_COMP_SHAPES4
signature: Triangle
requirements: R_ARMI_COMP_SHAPES

This class provides the implementation for defining a triangular Component. This includes setting key parameters such as its material, temperature, and dimensions. It also includes providing a method for retrieving the area of a Triangle Component via the getComponentArea method.

Notes

The exact angles of the triangle are undefined. The exact side lenths and angles are not critical to calculation of component area, so area can still be calculated.

is3D = False
THERMAL_EXPANSION_DIMS = {'base', 'height'}
pDefs = <armi.reactor.parameters.parameterDefinitions.ParameterDefinitionCollection object>
getComponentArea(cold=False)[source]

Computes the area of the triangle in cm^2.

DIMENSION_NAMES = ('base', 'height', 'mult', 'modArea')
INIT_SIGNATURE = ('name', 'material', 'Tinput', 'Thot', 'base', 'height', 'mult', 'modArea', 'isotopics', 'mergeWith', 'components')
paramCollectionType

alias of TriangleParameterCollection

material: Material