www.mooseframework.org
GrainTrackerElasticity.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef GRAINTRACKERELASTICITY_H
9 #define GRAINTRACKERELASTICITY_H
10 
11 #include "GrainDataTracker.h"
12 #include "RankFourTensor.h"
13 
15 class EulerAngleProvider;
16 
17 template <>
18 InputParameters validParams<GrainTrackerElasticity>();
19 
23 class GrainTrackerElasticity : public GrainDataTracker<RankFourTensor>
24 {
25 public:
26  GrainTrackerElasticity(const InputParameters & parameters);
27 
28 protected:
29  RankFourTensor newGrain(unsigned int new_grain_id);
30 
32  const bool _random_rotations;
33 
35  RankFourTensor _C_ijkl;
36 
39 };
40 
41 #endif // GRAINTRACKERELASTICITY_H
const bool _random_rotations
generate random rotations when the Euler Angle provider runs out of data (otherwise error out) ...
Manage a list of elasticity tensors for the grains.
RankFourTensor newGrain(unsigned int new_grain_id)
implement this method to initialize the data for the new grain
RankFourTensor _C_ijkl
unrotated elasticity tensor
GrainTrackerElasticity(const InputParameters &parameters)
const EulerAngleProvider & _euler
object providing the Euler angles
Abstract base class for user objects that implement the Euler Angle provider interface.
InputParameters validParams< GrainTrackerElasticity >()
GrainTracker derived class template to base objects on which maintain physical parameters for individ...