Go to the documentation of this file.
21 params.addParam<
bool>(
"random_rotations",
23 "Generate random rotations when the Euler Angle "
24 "provider runs out of data (otherwise error "
26 params.addRequiredParam<std::vector<Real>>(
"C_ijkl",
"Unrotated stiffness tensor");
27 params.addParam<MooseEnum>(
28 "fill_method", RankFourTensor::fillMethodEnum() =
"symmetric9",
"The fill method");
29 params.addRequiredParam<UserObjectName>(
"euler_angle_provider",
30 "Name of Euler angle provider user object");
36 _random_rotations(getParam<bool>(
"random_rotations")),
37 _C_ijkl(getParam<std::vector<Real>>(
"C_ijkl"),
38 getParam<MooseEnum>(
"fill_method").getEnum<
RankFourTensor::FillMethod>()),
55 mooseError(
"GrainTrackerElasticity has run out of grain rotation data.");
InputParameters validParams< GrainTrackerElasticity >()
const bool _random_rotations
generate random rotations when the Euler Angle provider runs out of data (otherwise error out)
GrainTracker derived class template to base objects on which maintain physical parameters for individ...
Manage a list of elasticity tensors for the grains.
Abstract base class for user objects that implement the Euler Angle provider interface.
RankFourTensor newGrain(unsigned int new_grain_id)
implement this method to initialize the data for the new grain
const EulerAngleProvider & _euler
object providing the Euler angles
virtual unsigned int getGrainNum() const =0
InputParameters validParams< GrainTracker >()
This is a RealTensor version of a rotation matrix It is instantiated with the Euler angles,...
RankFourTensor _C_ijkl
unrotated elasticity tensor
virtual const EulerAngles & getEulerAngles(unsigned int) const =0
GrainTrackerElasticity(const InputParameters ¶meters)
registerMooseObject("PhaseFieldApp", GrainTrackerElasticity)