- cornersThe corner coordinates boxes
C++ Type:std::vector<libMesh::Point>
Unit:(no unit assumed)
Controllable:No
Description:The corner coordinates boxes
- insideThe value of the variable inside each box (one value per box or a single value for all boxes)
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:The value of the variable inside each box (one value per box or a single value for all boxes)
- opposite_cornersThe coordinates of the opposite corners of the boxes
C++ Type:std::vector<libMesh::Point>
Unit:(no unit assumed)
Controllable:No
Description:The coordinates of the opposite corners of the boxes
- variableThe variable this initial condition is supposed to provide values for.
C++ Type:VariableName
Unit:(no unit assumed)
Controllable:No
Description:The variable this initial condition is supposed to provide values for.
MultiBoundingBoxIC
MultiBoundingBoxIC allows setting the initial condition of a value of a field inside and outside multiple bounding boxes. Each box is axis-aligned and is specified by passing in the x,y,z coordinates of opposite corners for each box.
Example input:
In the example input that you may either supply a single "inside" value, or one value for each box.
[ICs]
[./c1]
type = MultiBoundingBoxIC
corners = '0.1 0.4 0 0.8 0.5 0 0.3 0.7 0'
opposite_corners = '0.2 0.6 0 0.6 0.9 0 0.4 0.5 0'
inside = '1.0'
outside = 0.1
variable = c1
[../]
[./c2]
type = MultiBoundingBoxIC
corners = '0.1 0.4 0 0.8 0.5 0 0.3 0.6 0'
opposite_corners = '0.2 0.6 0 0.4 0.9 0 0.5 0.8 0'
inside = '1.0 2.0 3.0'
outside = 0.1
variable = c2
[../]
[]
(moose/modules/phase_field/test/tests/initial_conditions/MultiBoundingBoxIC2D.i)Class Description
Allows setting the initial condition of a value of a field inside and outside multiple bounding boxes.
Input Parameters
- blockThe list of blocks (ids or names) that this object will be applied
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:The list of blocks (ids or names) that this object will be applied
- boundaryThe list of boundaries (ids or names) from the mesh where this object applies
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:The list of boundaries (ids or names) from the mesh where this object applies
- outside0The value of the variable outside the box
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:The value of the variable outside the box
- prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
C++ Type:MaterialPropertyName
Unit:(no unit assumed)
Controllable:No
Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
- stateCURRENTThis parameter is used to set old state solutions at the start of simulation. If specifying multiple states at the start of simulation, use one IC object for each state being specified. The states are CURRENT=0 OLD=1 OLDER=2. States older than 2 are not currently supported. When the user only specifies current state, the solution is copied to the old and older states, as expected. This functionality is mainly used for dynamic simulations with explicit time integration schemes, where old solution states are used in the velocity and acceleration approximations.
Default:CURRENT
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:This parameter is used to set old state solutions at the start of simulation. If specifying multiple states at the start of simulation, use one IC object for each state being specified. The states are CURRENT=0 OLD=1 OLDER=2. States older than 2 are not currently supported. When the user only specifies current state, the solution is copied to the old and older states, as expected. This functionality is mainly used for dynamic simulations with explicit time integration schemes, where old solution states are used in the velocity and acceleration approximations.
- use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
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.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set the enabled status of the MooseObject.
- ignore_uo_dependencyFalseWhen set to true, a UserObject retrieved by this IC will not be executed before the this IC
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:When set to true, a UserObject retrieved by this IC will not be executed before the this IC