https://mooseframework.inl.gov
ComputeElasticityTensorCP.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
13 #include "PropertyReadFile.h"
14 #include "RankTwoTensor.h"
15 #include "RotationTensor.h"
16 
26 {
27 public:
29 
31 
32 protected:
37  virtual void computeQpElasticityTensor() override;
38 
39  virtual void assignEulerAngles();
40 
43 
46 
49 
52 
55 
56  // The coupled Euler angles component variables
57  unsigned int _n_euler_angle_vars;
58  const std::vector<const VariableValue *> _euler_angle_vars;
59 };
MaterialProperty< RealVectorValue > & _Euler_angles_mat_prop
Material property that stores the values of the Euler Angles for postprocessing.
ComputeElasticityTensorCP(const InputParameters &parameters)
static InputParameters validParams()
RotationTensor _R
Rotation matrix.
ComputeElasticityTensorCP defines an elasticity tensor material object for crystal plasticity models...
MaterialProperty< RankTwoTensor > & _crysrot
Crystal Rotation Matrix used to rotate the slip system direction and normal.
const std::vector< const VariableValue * > _euler_angle_vars
ComputeElasticityTensor defines an elasticity tensor material object with a given base name...
This is a RealTensor version of a rotation matrix It is instantiated with the Euler angles...
const PropertyReadFile *const _read_prop_user_object
Element property read user object used to read in Euler angles.
bool _user_provided_rotation_matrix
flag for user-defined rotation matrix, supplied in input file
const InputParameters & parameters() const
virtual void computeQpElasticityTensor() override
Defines the constant rotation matrix from the user specified Bunge Euler Angles or user-supplied rota...