20 params.
addRequiredParam<UserObjectName>(
"map",
"DiscreteNucleationMap user object");
27 _periodic_var(_map.getPeriodicVar()),
28 _inserter(_map.getInserter()),
29 _int_width(_map.getWidth()),
30 _nucleus_list(_inserter.getNucleusList())
37 const RealVectorValue centroid =
_current_elem->vertex_average();
registerMooseObject("PhaseFieldApp", DiscreteNucleationMarker)
This UserObject maintains a per QP map that indicates if a nucleus is present or not.
Mark new nucleation sites for refinement.
const Real _int_width
Nucleus interface width.
DiscreteNucleationMarker(const InputParameters ¶meters)
const MooseVariableFieldBase *const _periodic_var
variable to use for minPeriodicDistance calls (i.e. use the periodicity of this variable)
virtual MarkerValue computeElementMarker() override
static InputParameters validParams()
const DiscreteNucleationInserterBase::NucleusList & _nucleus_list
list of nuclei maintained bu the inserter object
static InputParameters validParams()
const Elem *const & _current_elem
Real minPeriodicDistance(const unsigned int sys_num, const unsigned int var_num, const Point &p, const Point &q) const