- dimensionDimension of the cylinder. 0 for a point (not implemented), 1 for an (axial) 1D line, 2 for a 2D-RZ cylinder, and 3 for a 3D cylinder (not implemented)
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:Dimension of the cylinder. 0 for a point (not implemented), 1 for an (axial) 1D line, 2 for a 2D-RZ cylinder, and 3 for a 3D cylinder (not implemented)
- directionDirection of the cylinder
C++ Type:libMesh::Point
Unit:(no unit assumed)
Controllable:No
Description:Direction of the cylinder
- lengthLength/Height of the cylinder
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Length/Height of the cylinder
- n_axialNumber of axial elements of the cylinder
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:Number of axial elements of the cylinder
- positionPositional offset of the cylinder
C++ Type:libMesh::Point
Unit:(no unit assumed)
Controllable:No
Description:Positional offset of the cylinder
- radiusRadius of the cylinder
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Radius of the cylinder
CylinderComponent
Cylindrical component.
The CylinderComponent
is a simple ActionComponent which adds a cylinder to the mesh. The user selects the dimensionality of the cylinder using the "dimension" parameter.
0D is currently unsupported
1D makes the cylinder a simple 1D line, with attributes to keep track of its true radius and volume
2D makes the cylinder a rectangle within a local 2D RZ frame of reference
3D is not implemented, and would create a 3D cylindrical mesh.
Physics can be created on this component using the "physics" parameter. This parameter accepts a vector of names of Physics
. The name of the Physics
is generally found in the innermost block. For example, in the snippet below, the diffusion Physics
is called added_from_component
.
[Physics]
[Diffusion]
[FiniteVolume]
[block_specified]
diffusivity_functor = 1
block = '2 cyl1'
dirichlet_boundaries = 'left cylinder_1_left'
boundary_values = '1 3'
source_functor = '1'
source_coef = '1'
[]
[added_from_component]
variable_name = v
diffusivity_functor = 2
source_functor = '2'
source_coef = '1'
dirichlet_boundaries = 'cylinder_2_right'
boundary_values = '2'
[]
[]
[]
[]
(moose/test/tests/actioncomponents/component_with_physics.i)The cylinder component on which the component_with_physics
DiffusionCG is active is then created as shown below:
[ActionComponents]
[cylinder_1]
type = CylinderComponent
dimension = 2
radius = 2
length = 10
n_axial = 1
n_radial = 1
position = '1 0 0'
direction = '0 1 0'
block = 'cyl1'
[]
[cylinder_2]
type = CylinderComponent
dimension = 2
radius = 4
length = 1
n_axial = 1
n_radial = 1
position = '2 0 0'
direction = '0 0 1'
physics = 'added_from_component'
block = 'cyl2'
[]
[]
(moose/test/tests/actioncomponents/component_with_physics.i)Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:If specified only the blocks named will be visited and made active
- blockBlock name for the cylinder
C++ Type:SubdomainName
Unit:(no unit assumed)
Controllable:No
Description:Block name for the cylinder
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
- n_azimuthalNumber of azimuthal elements of the cylinder
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:Number of azimuthal elements of the cylinder
- n_radialNumber of radial elements of the cylinder
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:Number of radial elements of the cylinder
- physicsPhysics object(s) active on the Component
C++ Type:std::vector<PhysicsName>
Unit:(no unit assumed)
Controllable:No
Description:Physics object(s) active on the Component
- verboseFalseWhether the component setup should be verbose
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether the component setup should be verbose
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.