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

ComputeCosseratLinearElasticStress computes the Cosserat stress and couple-stress following linear elasticity theory It also sets the d(stress)/d(strain) and d(couple_stress)/d(curvature) tensors appropriately. More...

#include <ComputeCosseratLinearElasticStress.h>

Inheritance diagram for ComputeCosseratLinearElasticStress:
[legend]

Public Member Functions

 ComputeCosseratLinearElasticStress (const InputParameters &parameters)
 
virtual void initialSetup () override
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual void computeQpStress () override
 Compute the stress and store it in the _stress material property for the current quadrature point. More...
 
virtual void initQpStatefulProperties ()
 
virtual void computeQpProperties () override
 

Protected Attributes

const std::string _elasticity_tensor_name
 Name of the elasticity tensor material property. More...
 
const MaterialProperty< RankFourTensor > & _elasticity_tensor
 Elasticity tensor material property. More...
 
const MaterialProperty< RankTwoTensor > & _curvature
 The Cosserat curvature strain. More...
 
const MaterialProperty< RankFourTensor > & _elastic_flexural_rigidity_tensor
 The Cosserat elastic flexural rigidity tensor. More...
 
MaterialProperty< RankTwoTensor > & _stress_couple
 the Cosserat couple-stress More...
 
MaterialProperty< RankFourTensor > & _Jacobian_mult_couple
 derivative of couple-stress w.r.t. curvature More...
 
const std::string _base_name
 Base name prepended to all material property names to allow for multi-material systems. More...
 
const MaterialProperty< RankTwoTensor > & _mechanical_strain
 Mechanical strain material property. More...
 
MaterialProperty< RankTwoTensor > & _stress
 Stress material property. More...
 
MaterialProperty< RankTwoTensor > & _elastic_strain
 Elastic strain material property. More...
 
const MaterialProperty< RankTwoTensor > & _extra_stress
 Extra stress tensor. More...
 
std::vector< const Function * > _initial_stress_fcn
 initial stress components More...
 
MaterialProperty< RankFourTensor > & _Jacobian_mult
 derivative of stress w.r.t. strain (_dstress_dstrain) More...
 

Detailed Description

ComputeCosseratLinearElasticStress computes the Cosserat stress and couple-stress following linear elasticity theory It also sets the d(stress)/d(strain) and d(couple_stress)/d(curvature) tensors appropriately.

Definition at line 25 of file ComputeCosseratLinearElasticStress.h.

Constructor & Destructor Documentation

◆ ComputeCosseratLinearElasticStress()

ComputeCosseratLinearElasticStress::ComputeCosseratLinearElasticStress ( const InputParameters &  parameters)

Definition at line 25 of file ComputeCosseratLinearElasticStress.C.

27  : ComputeCosseratStressBase(parameters),
28  _elasticity_tensor_name(_base_name + "elasticity_tensor"),
29  _elasticity_tensor(getMaterialPropertyByName<RankFourTensor>(_elasticity_tensor_name))
30 {
31 }

Member Function Documentation

◆ computeQpProperties()

void ComputeStressBase::computeQpProperties ( )
overrideprotectedvirtualinherited

Definition at line 50 of file ComputeStressBase.C.

51 {
53 
54  // Add in extra stress
55  _stress[_qp] += _extra_stress[_qp];
56 }

◆ computeQpStress()

void ComputeCosseratLinearElasticStress::computeQpStress ( )
overrideprotectedvirtual

Compute the stress and store it in the _stress material property for the current quadrature point.

Implements ComputeCosseratStressBase.

Definition at line 41 of file ComputeCosseratLinearElasticStress.C.

◆ initialSetup()

void ComputeCosseratLinearElasticStress::initialSetup ( )
overridevirtual

Definition at line 34 of file ComputeCosseratLinearElasticStress.C.

35 {
36  if (hasBlockMaterialProperty<RankTwoTensor>(_base_name + "strain_increment"))
37  mooseError("This linear elastic stress calculation only works for small strains");
38 }

◆ initQpStatefulProperties()

void ComputeCosseratStressBase::initQpStatefulProperties ( )
protectedvirtualinherited

Reimplemented from ComputeStressBase.

Definition at line 33 of file ComputeCosseratStressBase.C.

34 {
36  _stress_couple[_qp].zero();
37 }

◆ validParams()

InputParameters ComputeCosseratLinearElasticStress::validParams ( )
static

Definition at line 17 of file ComputeCosseratLinearElasticStress.C.

18 {
19  InputParameters params = ComputeCosseratStressBase::validParams();
20  params.addClassDescription(
21  "Compute Cosserat stress and couple-stress elasticity for small strains");
22  return params;
23 }

Member Data Documentation

◆ _base_name

const std::string ComputeStressBase::_base_name
protectedinherited

Base name prepended to all material property names to allow for multi-material systems.

Definition at line 45 of file ComputeStressBase.h.

Referenced by ComputeLinearElasticStress::initialSetup(), and initialSetup().

◆ _curvature

const MaterialProperty<RankTwoTensor>& ComputeCosseratStressBase::_curvature
protectedinherited

The Cosserat curvature strain.

Definition at line 34 of file ComputeCosseratStressBase.h.

Referenced by computeQpStress().

◆ _elastic_flexural_rigidity_tensor

const MaterialProperty<RankFourTensor>& ComputeCosseratStressBase::_elastic_flexural_rigidity_tensor
protectedinherited

The Cosserat elastic flexural rigidity tensor.

Definition at line 37 of file ComputeCosseratStressBase.h.

Referenced by computeQpStress().

◆ _elastic_strain

MaterialProperty<RankTwoTensor>& ComputeStressBase::_elastic_strain
protectedinherited

◆ _elasticity_tensor

const MaterialProperty<RankFourTensor>& ComputeCosseratLinearElasticStress::_elasticity_tensor
protected

Elasticity tensor material property.

Definition at line 40 of file ComputeCosseratLinearElasticStress.h.

Referenced by computeQpStress().

◆ _elasticity_tensor_name

const std::string ComputeCosseratLinearElasticStress::_elasticity_tensor_name
protected

Name of the elasticity tensor material property.

Definition at line 38 of file ComputeCosseratLinearElasticStress.h.

◆ _extra_stress

const MaterialProperty<RankTwoTensor>& ComputeStressBase::_extra_stress
protectedinherited

Extra stress tensor.

Definition at line 55 of file ComputeStressBase.h.

Referenced by ComputeStressBase::computeQpProperties().

◆ _initial_stress_fcn

std::vector<const Function *> ComputeStressBase::_initial_stress_fcn
protectedinherited

initial stress components

Definition at line 58 of file ComputeStressBase.h.

◆ _Jacobian_mult

MaterialProperty<RankFourTensor>& ComputeStressBase::_Jacobian_mult
protectedinherited

◆ _Jacobian_mult_couple

MaterialProperty<RankFourTensor>& ComputeCosseratStressBase::_Jacobian_mult_couple
protectedinherited

derivative of couple-stress w.r.t. curvature

Definition at line 43 of file ComputeCosseratStressBase.h.

Referenced by computeQpStress().

◆ _mechanical_strain

const MaterialProperty<RankTwoTensor>& ComputeStressBase::_mechanical_strain
protectedinherited

◆ _stress

MaterialProperty<RankTwoTensor>& ComputeStressBase::_stress
protectedinherited

Stress material property.

Definition at line 50 of file ComputeStressBase.h.

Referenced by ComputeMultipleInelasticCosseratStress::computeAdmissibleState(), ComputeMultipleInelasticStress::computeAdmissibleState(), ComputeStressBase::computeQpProperties(), ComputeStrainIncrementBasedStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeDamageStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeMultiPlasticityStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleInelasticStress::computeQpStress(), ComputeMultipleInelasticStress::computeQpStressIntermediateConfiguration(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), ComputeLinearElasticPFFractureStress::computeStressSpectral(), ComputeMultipleInelasticStress::finiteStrainRotation(), ComputeStressBase::initQpStatefulProperties(), FiniteStrainCrystalPlasticity::initQpStatefulProperties(), FiniteStrainUObasedCP::initQpStatefulProperties(), FiniteStrainHyperElasticViscoPlastic::initQpStatefulProperties(), ComputeMultiPlasticityStress::postReturnMap(), FiniteStrainUObasedCP::postSolveQp(), FiniteStrainHyperElasticViscoPlastic::postSolveQp(), FiniteStrainCrystalPlasticity::postSolveQp(), ComputeSmearedCrackingStress::updateCrackingStateAndStress(), ComputeMultipleInelasticStress::updateQpState(), and ComputeMultipleInelasticStress::updateQpStateSingleModel().

◆ _stress_couple

MaterialProperty<RankTwoTensor>& ComputeCosseratStressBase::_stress_couple
protectedinherited

the Cosserat couple-stress

Definition at line 40 of file ComputeCosseratStressBase.h.

Referenced by computeQpStress(), and ComputeCosseratStressBase::initQpStatefulProperties().


The documentation for this class was generated from the following files:
ComputeStressBase::_stress
MaterialProperty< RankTwoTensor > & _stress
Stress material property.
Definition: ComputeStressBase.h:50
ComputeStressBase::_extra_stress
const MaterialProperty< RankTwoTensor > & _extra_stress
Extra stress tensor.
Definition: ComputeStressBase.h:55
ComputeStressBase::_Jacobian_mult
MaterialProperty< RankFourTensor > & _Jacobian_mult
derivative of stress w.r.t. strain (_dstress_dstrain)
Definition: ComputeStressBase.h:61
ComputeCosseratStressBase::validParams
static InputParameters validParams()
Definition: ComputeCosseratStressBase.C:15
ComputeCosseratStressBase::_curvature
const MaterialProperty< RankTwoTensor > & _curvature
The Cosserat curvature strain.
Definition: ComputeCosseratStressBase.h:34
ComputeCosseratStressBase::_elastic_flexural_rigidity_tensor
const MaterialProperty< RankFourTensor > & _elastic_flexural_rigidity_tensor
The Cosserat elastic flexural rigidity tensor.
Definition: ComputeCosseratStressBase.h:37
ComputeStressBase::computeQpStress
virtual void computeQpStress()=0
Compute the stress and store it in the _stress material property for the current quadrature point.
ComputeCosseratLinearElasticStress::_elasticity_tensor
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Elasticity tensor material property.
Definition: ComputeCosseratLinearElasticStress.h:40
ComputeStressBase::initQpStatefulProperties
virtual void initQpStatefulProperties() override
Definition: ComputeStressBase.C:43
ComputeCosseratStressBase::_stress_couple
MaterialProperty< RankTwoTensor > & _stress_couple
the Cosserat couple-stress
Definition: ComputeCosseratStressBase.h:40
ComputeStressBase::_base_name
const std::string _base_name
Base name prepended to all material property names to allow for multi-material systems.
Definition: ComputeStressBase.h:45
ComputeCosseratStressBase::_Jacobian_mult_couple
MaterialProperty< RankFourTensor > & _Jacobian_mult_couple
derivative of couple-stress w.r.t. curvature
Definition: ComputeCosseratStressBase.h:43
ComputeStressBase::_elastic_strain
MaterialProperty< RankTwoTensor > & _elastic_strain
Elastic strain material property.
Definition: ComputeStressBase.h:52
ComputeCosseratStressBase::ComputeCosseratStressBase
ComputeCosseratStressBase(const InputParameters &parameters)
Definition: ComputeCosseratStressBase.C:22
ComputeStressBase::_mechanical_strain
const MaterialProperty< RankTwoTensor > & _mechanical_strain
Mechanical strain material property.
Definition: ComputeStressBase.h:48
ComputeCosseratLinearElasticStress::_elasticity_tensor_name
const std::string _elasticity_tensor_name
Name of the elasticity tensor material property.
Definition: ComputeCosseratLinearElasticStress.h:38