https://mooseframework.inl.gov
ComputeCrystalPlasticityEigenstrainBase.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 
12 #include "ComputeEigenstrainBase.h"
13 
19 {
20 public:
22 
24 
26  void setQp(const unsigned int & qp);
27 
29  void setSubstepDt(const Real & substep_dt);
30 
32  virtual void initQpStatefulProperties() override;
33 
36 
38  virtual void resetQpProperties() final {}
39  virtual void resetProperties() final {}
41 
42 protected:
44  virtual void computeQpDeformationGradient() = 0;
45 
47  void computeQpEigenstrain() override;
48 
51 
55 
58 
64 };
void setSubstepDt(const Real &substep_dt)
Sets the value of the _substep_dt for inheriting classes.
virtual void resetQpProperties() final
Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused i...
ComputeCrystalPlasticityEigenstrainBase is the base class for computing eigenstrain tensors in crysta...
const MaterialProperty< RankTwoTensor > & _crysrot
Crystal rotation in the original, or reference, configuration as defined by Euler angle arguments in ...
std::string _deformation_gradient_name
Material property name for the deformation gradient tensor.
void computeQpEigenstrain() override
Compute the eigenstrain and store in _eigenstrain.
const MaterialProperty< RankTwoTensor > & _deformation_gradient_old
virtual void computeQpDeformationGradient()=0
Compute the deformation gradient and store in _deformation_gradient.
ComputeCrystalPlasticityEigenstrainBase(const InputParameters &parameters)
ComputeEigenstrainBase is the base class for eigenstrain tensors.
Real _substep_dt
Substepping time step value used within the inheriting crystal plasticity eigenstrain calculations...
virtual void initQpStatefulProperties() override
We need to set initial values for deforamtion gradients too.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MaterialProperty< RankTwoTensor > & _deformation_gradient
Stores the deformation gradient.
const InputParameters & parameters() const
void setQp(const unsigned int &qp)
Sets the value of the global variable _qp for inheriting classes.