26 std::vector<unsigned int> & grains)
const override;
27 virtual Real
getVariableValue(
unsigned int op_index,
const Point &
p)
const override;
54 const unsigned int & gr_index,
55 const std::vector<unsigned int> & grain_ids)
const;
56 Point
findNormalVector(
const Point & point,
const Point & p1,
const Point & p2)
const;
57 Point
findCenterPoint(
const Point & point,
const Point & p1,
const Point & p2)
const;
61 const unsigned int dim)
const;
const InputParameters & parameters() const
This object provides the base capability for creating proper polycrystal ICs.
unsigned int _grain_num
The number of grains to create.
Real findLinePoint(const Point &point, const Point &N, const Point &cntr, const unsigned int dim) const
Point findCenterPoint(const Point &point, const Point &p1, const Point &p2) const
const unsigned int _rand_seed
virtual void precomputeGrainStructure() override
This callback is triggered after the object is initialized and may be optionally overridden to do pre...
std::vector< Point > _new_points
Original grain center points and duplicated grain center points.
virtual std::vector< Point > getGrainCenters() const
unsigned int _point_patch_size
The number of nearest points.
static InputParameters validParams()
const FileName _file_name
Real computeDiffuseInterface(const Point &point, const unsigned int &gr_index, const std::vector< unsigned int > &grain_ids) const
bool _use_kdtree
Whether or not to use a KD tree to speedup grain search.
std::vector< dof_id_type > _grain_gtl_ids
The domain is extended to consider periodic boundary conditions.
virtual unsigned int getNumGrains() const override
Must be overridden by the deriving class to provide the number of grains in the polycrystal structure...
Point findNormalVector(const Point &point, const Point &p1, const Point &p2) const
std::vector< Point > _centerpoints
std::unique_ptr< KDTree > _kd_tree
KD tree that is used to speedup grain search.
virtual void getGrainsBasedOnPoint(const Point &point, std::vector< unsigned int > &grains) const override
Method for retrieving active grain IDs based on some point in the mesh.
virtual Real getVariableValue(unsigned int op_index, const Point &p) const override
Returns the variable value for a given op_index and mesh point.
unsigned int _grain_patch_size
The number of neighboring grains.