13 #include "FEProblem.h"
14 #include "Conversion.h"
22 InputParameters params = validParams<Action>();
24 params.addRequiredParam<std::string>(
"var_name_base",
"specifies the base name of the variables");
25 params.suppressParameter<VariableName>(
"variable");
26 params.addRequiredParam<UserObjectName>(
27 "polycrystal_ic_uo",
"UserObject for obtaining the polycrystal grain structure.");
28 params.addParam<FileName>(
31 "File containing grain centroids, if file_name is provided, the centroids "
32 "from the file will be used.");
38 _op_num(getParam<unsigned int>(
"op_num")),
39 _var_name_base(getParam<std::string>(
"var_name_base")),
40 _file_name(getParam<FileName>(
"file_name"))
48 for (
unsigned int op = 0; op <
_op_num; op++)
51 InputParameters poly_params = _factory.getValidParams(
"PolycrystalVoronoiVoidIC");
52 poly_params.applyParameters(parameters());
53 poly_params.set<
unsigned int>(
"op_index") = op;
54 poly_params.set<VariableName>(
"variable") =
_var_name_base + Moose::stringify(op);
55 poly_params.set<MooseEnum>(
"structure_type") =
"grains";
56 poly_params.set<UserObjectName>(
"polycrystal_ic_uo") =
57 getParam<UserObjectName>(
"polycrystal_ic_uo");
60 _problem->addInitialCondition(
61 "PolycrystalVoronoiVoidIC",
name() +
"_" + Moose::stringify(op), poly_params);