- op_indexIndex for the current grain order parameter
C++ Type:unsigned int
Controllable:No
Description:Index for the current grain order parameter
- op_numNumber of grain order parameters
C++ Type:unsigned int
Controllable:No
Description:Number of grain order parameters
- variableThe variable this initial condition is supposed to provide values for.
C++ Type:VariableName
Controllable:No
Description:The variable this initial condition is supposed to provide values for.
TricrystalTripleJunctionIC
Tricrystal with a triple junction
Overview
This initial condition (ICs) sets the variable values to represent a grain structure with three grains coming together at a triple junction. The initial triple junction angles are set by the user.
Note that the grains are created with sharp interfaces.
Example Input File Syntax
[GlobalParams]
# Parameters used by several kernels that are defined globally to simplify input file
op_num = 3 # Number of order parameters used
var_name_base = gr # base name of grains
v = 'gr0 gr1 gr2' # Names of the grains
theta1 = 135 # Angle the first grain makes at the triple junction
theta2 = 100 # Angle the second grain makes at the triple junction
length_scale = 1.0e-9 # Length scale in nm
time_scale = 1.0e-9 # Time scale in ns
[]
(../moose/modules/phase_field/test/tests/initial_conditions/TricrystalTripleJunctionIC.i)[ICs]
[gr0_IC]
type = TricrystalTripleJunctionIC
variable = gr0
op_index = 1
[]
[gr1_IC]
type = TricrystalTripleJunctionIC
variable = gr1
op_index = 2
[]
[gr2_IC]
type = TricrystalTripleJunctionIC
variable = gr2
op_index = 3
[]
[]
(../moose/modules/phase_field/test/tests/initial_conditions/TricrystalTripleJunctionIC.i)Input Parameters
- blockThe list of blocks (ids or names) that this object will be applied
C++ Type:std::vector<SubdomainName>
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>
Controllable:No
Description:The list of boundaries (ids or names) from the mesh where this object applies
- junctionThe point where the triple junction is located. Default is the center of the mesh
C++ Type:libMesh::Point
Controllable:No
Description:The point where the triple junction is located. Default is the center of the mesh
- 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
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.
- theta1135Angle of first grain at triple junction in degrees
Default:135
C++ Type:double
Controllable:No
Description:Angle of first grain at triple junction in degrees
- theta2135Angle of second grain at triple junction in degrees
Default:135
C++ Type:double
Controllable:No
Description:Angle of second grain at triple junction in degrees
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
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
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
Controllable:No
Description:When set to true, a UserObject retrieved by this IC will not be executed before the this IC