24 params.
addClassDescription(
"Random Voronoi tessellation polycrystal when the number of order " 25 "parameters equal to the number of grains");
33 paramError(
"op_num",
"The number of order parameters has to equal to the number of grains");
50 for (
unsigned int i = 1; i <
_vars.size(); ++i)
52 mooseError(
"Coupled polycrystal variables differ in periodicity");
registerMooseObject("PhaseFieldApp", FauxPolycrystalVoronoi)
std::map< unsigned int, unsigned int > _grain_to_op
A map of the grain_id to op.
static InputParameters validParams()
bool isTranslatedPeriodic(unsigned int nonlinear_var_num, unsigned int component) const
virtual void initialSetup() override
We override all these functions to avoid calling FeatureFloodCount We know here is a one-to-one mappi...
static InputParameters validParams()
virtual void execute() override
const unsigned int _op_num
The maximum number of order parameters (colors) available to assign to the grain structure.
const unsigned int _dim
mesh dimension
std::vector< MooseVariable * > _vars
The vector of coupled in variables cast to MooseVariable.
void paramError(const std::string ¶m, Args... args) const
virtual void precomputeGrainStructure() override
This callback is triggered after the object is initialized and may be optionally overridden to do pre...
void mooseError(Args &&... args) const
FauxPolycrystalVoronoi(const InputParameters ¶meters)
virtual void finalize() override
MooseMesh & _mesh
A reference to the mesh.
unsigned int _grain_num
The number of grains to create.