www.mooseframework.org
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ComputeDeformGradBasedStress Class Reference

ComputeDeformGradBasedStress computes stress based on lagrangian strain definition. More...

#include <ComputeDeformGradBasedStress.h>

Inheritance diagram for ComputeDeformGradBasedStress:
[legend]

Public Member Functions

 ComputeDeformGradBasedStress (const InputParameters &parameters)
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual void initQpStatefulProperties ()
 
virtual void computeQpProperties ()
 
virtual void computeQpStress ()
 

Protected Attributes

const MaterialProperty< RankTwoTensor > & _deformation_gradient
 
const MaterialProperty< RankFourTensor > & _elasticity_tensor
 
MaterialProperty< RankTwoTensor > & _stress
 
MaterialProperty< RankFourTensor > & _Jacobian_mult
 

Detailed Description

ComputeDeformGradBasedStress computes stress based on lagrangian strain definition.

Definition at line 26 of file ComputeDeformGradBasedStress.h.

Constructor & Destructor Documentation

◆ ComputeDeformGradBasedStress()

ComputeDeformGradBasedStress::ComputeDeformGradBasedStress ( const InputParameters &  parameters)

Definition at line 30 of file ComputeDeformGradBasedStress.C.

31  : DerivativeMaterialInterface<Material>(parameters),
32  _deformation_gradient(getMaterialProperty<RankTwoTensor>("deform_grad_name")),
33  _elasticity_tensor(getMaterialProperty<RankFourTensor>("elasticity_tensor_name")),
34  _stress(declareProperty<RankTwoTensor>(getParam<MaterialPropertyName>("stress_name"))),
35  _Jacobian_mult(declareProperty<RankFourTensor>(getParam<MaterialPropertyName>("jacobian_name")))
36 {
37 }

Member Function Documentation

◆ computeQpProperties()

void ComputeDeformGradBasedStress::computeQpProperties ( )
protectedvirtual

Definition at line 46 of file ComputeDeformGradBasedStress.C.

47 {
49 }

◆ computeQpStress()

void ComputeDeformGradBasedStress::computeQpStress ( )
protectedvirtual

Definition at line 52 of file ComputeDeformGradBasedStress.C.

53 {
54  const RankTwoTensor iden(RankTwoTensor::initIdentity);
55  RankTwoTensor ee =
56  0.5 * (_deformation_gradient[_qp].transpose() * _deformation_gradient[_qp] - iden);
57  RankTwoTensor pk2 = _elasticity_tensor[_qp] * ee;
58 
59  _stress[_qp] = _deformation_gradient[_qp] * pk2 * _deformation_gradient[_qp].transpose() /
60  _deformation_gradient[_qp].det();
62 }

Referenced by computeQpProperties().

◆ initQpStatefulProperties()

void ComputeDeformGradBasedStress::initQpStatefulProperties ( )
protectedvirtual

Definition at line 40 of file ComputeDeformGradBasedStress.C.

41 {
42  _stress[_qp].zero();
43 }

◆ validParams()

InputParameters ComputeDeformGradBasedStress::validParams ( )
static

Definition at line 17 of file ComputeDeformGradBasedStress.C.

18 {
19  InputParameters params = Material::validParams();
20  params.addClassDescription("Computes stress based on Lagrangian strain");
21  params.addRequiredParam<MaterialPropertyName>("deform_grad_name",
22  "Name of deformation gradient variable");
23  params.addRequiredParam<MaterialPropertyName>("elasticity_tensor_name",
24  "Name of elasticity tensor variable");
25  params.addRequiredParam<MaterialPropertyName>("stress_name", "Name of stress variable");
26  params.addRequiredParam<MaterialPropertyName>("jacobian_name", "Name of Jacobian variable");
27  return params;
28 }

Member Data Documentation

◆ _deformation_gradient

const MaterialProperty<RankTwoTensor>& ComputeDeformGradBasedStress::_deformation_gradient
protected

Definition at line 38 of file ComputeDeformGradBasedStress.h.

Referenced by computeQpStress().

◆ _elasticity_tensor

const MaterialProperty<RankFourTensor>& ComputeDeformGradBasedStress::_elasticity_tensor
protected

Definition at line 39 of file ComputeDeformGradBasedStress.h.

Referenced by computeQpStress().

◆ _Jacobian_mult

MaterialProperty<RankFourTensor>& ComputeDeformGradBasedStress::_Jacobian_mult
protected

Definition at line 42 of file ComputeDeformGradBasedStress.h.

Referenced by computeQpStress().

◆ _stress

MaterialProperty<RankTwoTensor>& ComputeDeformGradBasedStress::_stress
protected

Definition at line 41 of file ComputeDeformGradBasedStress.h.

Referenced by computeQpStress(), and initQpStatefulProperties().


The documentation for this class was generated from the following files:
ComputeDeformGradBasedStress::_Jacobian_mult
MaterialProperty< RankFourTensor > & _Jacobian_mult
Definition: ComputeDeformGradBasedStress.h:42
ComputeDeformGradBasedStress::computeQpStress
virtual void computeQpStress()
Definition: ComputeDeformGradBasedStress.C:52
validParams
InputParameters validParams()
ComputeDeformGradBasedStress::_elasticity_tensor
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Definition: ComputeDeformGradBasedStress.h:39
ComputeDeformGradBasedStress::_deformation_gradient
const MaterialProperty< RankTwoTensor > & _deformation_gradient
Definition: ComputeDeformGradBasedStress.h:38
RankTwoTensorTempl< Real >
ComputeDeformGradBasedStress::_stress
MaterialProperty< RankTwoTensor > & _stress
Definition: ComputeDeformGradBasedStress.h:41