www.mooseframework.org
Classes | Functions
GrainGrowthAction.h File Reference

Go to the source code of this file.

Classes

class  GrainGrowthAction
 

Functions

template<>
InputParameters validParams< GrainGrowthAction > ()
 

Function Documentation

template<>
InputParameters validParams< GrainGrowthAction > ( )

Definition at line 22 of file GrainGrowthAction.C.

23 {
24  InputParameters params = validParams<Action>();
25  params.addClassDescription(
26  "Set up the variable and the kernels needed for a grain growth simulation");
27  params.addRequiredParam<unsigned int>("op_num",
28  "specifies the number of order parameters to create");
29  params.addRequiredParam<std::string>("var_name_base", "specifies the base name of the variables");
30  // Get MooseEnums for the possible order/family options for this variable
31  MooseEnum families(AddVariableAction::getNonlinearVariableFamilies());
32  MooseEnum orders(AddVariableAction::getNonlinearVariableOrders());
33  params.addParam<MooseEnum>("family",
34  families,
35  "Specifies the family of FE "
36  "shape function to use for the order parameters");
37  params.addParam<MooseEnum>("order",
38  orders,
39  "Specifies the order of the FE "
40  "shape function to use for the order parameters");
41  params.addParam<MaterialPropertyName>(
42  "mobility", "L", "The isotropic mobility used with the kernels");
43  params.addParam<MaterialPropertyName>("kappa", "kappa_op", "The kappa used with the kernels");
44  params.addParam<Real>(
45  "scaling", 1.0, "Specifies a scaling factor to apply to the order parameters");
46  params.addParam<bool>("implicit", true, "Whether kernels are implicit or not");
47  params.addParam<bool>(
48  "use_displaced_mesh", false, "Whether to use displaced mesh in the kernels");
49  params.addParam<VariableName>("c", "Name of coupled concentration variable");
50  params.addParam<Real>("en_ratio", 1.0, "Ratio of surface to GB energy");
51  params.addParam<unsigned int>("ndef", 0, "Specifies the number of deformed grains to create");
52  params.addParam<bool>("variable_mobility",
53  true,
54  "The mobility is a function of any MOOSE variable (if "
55  "this is set to false, L must be constant over the "
56  "entire domain!)");
57  params.addCoupledVar("args", "Vector of nonlinear variable arguments that L depends on");
58  params.addParamNamesToGroup("scaling implicit use_displaced_mesh", "Advanced");
59  params.addParamNamesToGroup("c en_ratio ndef", "Multiphysics");
60 
61  return params;
62 }