- op_numnumber of order parameters to create
C++ Type:unsigned int
Controllable:No
Description:number of order parameters to create
- polycrystal_ic_uoOptional: TODO
C++ Type:UserObjectName
Controllable:No
Description:Optional: TODO
- var_name_basespecifies the base name of the variables
C++ Type:std::string
Controllable:No
Description:specifies the base name of the variables
PolycrystalColoringICAction
Action to create ICs for polycrystal variables from a UserObject
Overview
This simplifies the syntax for creating polycrystal ICs. It automatically creates an IC for each variable used in the grain growth model. It works for both the traditional phase field grain growth model and the linearized interface grain growth model. Depending on the value of linearized_interface
, two different ICs are used for each variable:
For
linearized_interface = false
, PolycrystalColoringIC is used.For
linearized_interface = true
, PolycrystalColoringICLinearizedInterface is used.
Both of these ICs require a UserObject
to define the actual polycrystal geometry. See Polycrystal ICs for more information and a full list of the options.
Example Input File Syntax
For linearized_interface = false
[GlobalParams]
# Parameters used by several kernels that are defined globally to simplify input file
op_num = '8' # Number of order parameters used
var_name_base = 'gr' # Base name of grains
order = 'CONSTANT'
family = 'MONOMIAL'
[]
(../moose/modules/phase_field/test/tests/grain_tracker_test/distributed_poly_ic.i)[ICs]
[PolycrystalICs]
[PolycrystalColoringIC]
polycrystal_ic_uo = voronoi
[]
[]
[]
(../moose/modules/phase_field/test/tests/grain_tracker_test/distributed_poly_ic.i)For linearized_interface = true
[GlobalParams]
bound_value = 5.0
op_num = 5
var_name_base = phi
[]
(../moose/modules/phase_field/test/tests/grain_growth_w_linearized_interface/voronoi_linearized_interface.i)[ICs]
[PolycrystalICs]
[PolycrystalColoringIC]
polycrystal_ic_uo = RandomVoronoi
linearized_interface = true
[]
[]
[]
(../moose/modules/phase_field/test/tests/grain_growth_w_linearized_interface/voronoi_linearized_interface.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>
Controllable:No
Description:If specified only the blocks named will be visited and made active
- blockBlock restriction for the initial condition
C++ Type:std::vector<SubdomainName>
Controllable:No
Description:Block restriction for the initial condition
- 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.
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
Optional Parameters
- bound_value5Bound value used to keep variable between +/-bound. Must be positive.
Default:5
C++ Type:double
Controllable:No
Description:Bound value used to keep variable between +/-bound. Must be positive.
- linearized_interfaceFalseWhether to use linearized interface or the standard model
Default:False
C++ Type:bool
Controllable:No
Description:Whether to use linearized interface or the standard model