https://mooseframework.inl.gov
ComputeCosseratLinearElasticStress.C
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 
11 
13 
16 {
18  params.addClassDescription(
19  "Compute Cosserat stress and couple-stress elasticity for small strains");
20  return params;
21 }
22 
24  const InputParameters & parameters)
25  : ComputeCosseratStressBase(parameters),
26  _elasticity_tensor_name(_base_name + "elasticity_tensor"),
27  _elasticity_tensor(getMaterialPropertyByName<RankFourTensor>(_elasticity_tensor_name))
28 {
29 }
30 
31 void
33 {
34  if (hasBlockMaterialProperty<RankTwoTensor>(_base_name + "strain_increment"))
35  mooseError("This linear elastic stress calculation only works for small strains");
36 }
37 
38 void
40 {
43 
45 
48 }
MaterialProperty< RankFourTensor > & _Jacobian_mult
derivative of stress w.r.t. strain (_dstress_dstrain)
registerMooseObject("SolidMechanicsApp", ComputeCosseratLinearElasticStress)
const MaterialProperty< RankTwoTensor > & _mechanical_strain
Mechanical strain material property.
const MaterialProperty< RankFourTensor > & _elastic_flexural_rigidity_tensor
The Cosserat elastic flexural rigidity tensor.
ComputeCosseratLinearElasticStress(const InputParameters &parameters)
const MaterialProperty< RankTwoTensor > & _curvature
The Cosserat curvature strain.
const std::string _base_name
Base name prepended to all material property names to allow for multi-material systems.
MaterialProperty< RankFourTensor > & _Jacobian_mult_couple
derivative of couple-stress w.r.t. curvature
virtual void computeQpStress() override
Compute the stress and store it in the _stress material property for the current quadrature point...
MaterialProperty< RankTwoTensor > & _stress_couple
the Cosserat couple-stress
static InputParameters validParams()
ComputeCosseratLinearElasticStress computes the Cosserat stress and couple-stress following linear el...
ComputeCosseratStressBase is the base class for stress tensors.
MaterialProperty< RankTwoTensor > & _elastic_strain
Elastic strain material property.
void mooseError(Args &&... args) const
void addClassDescription(const std::string &doc_string)
MaterialProperty< RankTwoTensor > & _stress
Stress material property.
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Elasticity tensor material property.