21 params.
addRequiredParam<
unsigned int>(
"op_num",
"number of order parameters to create");
22 params.
addRequiredParam<std::string>(
"var_name_base",
"specifies the base name of the variables");
23 MooseEnum typ_options(
"continuous discrete");
26 "The type of random polycrystal initial condition. Whether " 27 "one order parameter is chosen to be 1 at each node or if " 28 "each other parameter continuously varies from 0 to 1");
29 params.
addParam<std::vector<SubdomainName>>(
30 "block", {},
"Block restriction for the initial condition");
37 _op_num(getParam<unsigned
int>(
"op_num")),
38 _var_name_base(getParam<
std::string>(
"var_name_base")),
39 _random_type(getParam<
MooseEnum>(
"random_type"))
47 Moose::err <<
"Inside the PolycrystalRandomICAction Object" << std::endl;
51 for (
unsigned int op = 0; op <
_op_num; op++)
56 poly_params.
set<
unsigned int>(
"op_index") = op;
61 _problem->addInitialCondition(
"PolycrystalRandomIC",
static InputParameters validParams()
InputParameters getValidParams(const std::string &name) const
PolycrystalRandomICAction(const InputParameters ¶ms)
Automatically generates all variables to model a polycrystal with op_num orderparameters.
registerMooseAction("PhaseFieldApp", PolycrystalRandomICAction, "add_ic")
static InputParameters validParams()
const std::string _var_name_base
std::string stringify(const T &t)
const MooseEnum _random_type
std::shared_ptr< FEProblemBase > & _problem
const InputParameters & parameters() const
const unsigned int _op_num
void ErrorVector unsigned int