www.mooseframework.org
ComputeCosseratElasticityTensor.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 
15 
16 InputParameters
18 {
19  InputParameters params = ComputeElasticityTensorBase::validParams();
20  params.addClassDescription("Compute Cosserat elasticity and flexural bending rigidity tensors");
21  params.addRequiredParam<std::vector<Real>>("E_ijkl", "Elastic stiffness tensor for material");
22  params.addParam<MooseEnum>(
23  "fill_method", RankFourTensor::fillMethodEnum() = "symmetric9", "The fill method");
24  params.addRequiredParam<std::vector<Real>>("B_ijkl", "Flexural bending rigidity tensor.");
25  params.addParam<MooseEnum>("fill_method_bending",
26  RankFourTensor::fillMethodEnum() = "antisymmetric_isotropic",
27  "The fill method for the 'bending' tensor.");
28  return params;
29 }
30 
32  : ComputeElasticityTensorBase(parameters),
33  _Eijkl(getParam<std::vector<Real>>("E_ijkl"),
34  (RankFourTensor::FillMethod)(int)getParam<MooseEnum>("fill_method")),
35  _Bijkl(getParam<std::vector<Real>>("B_ijkl"),
36  (RankFourTensor::FillMethod)(int)getParam<MooseEnum>("fill_method_bending")),
37  _elastic_flexural_rigidity_tensor(
38  declareProperty<RankFourTensor>("elastic_flexural_rigidity_tensor"))
39 {
40  if (!isParamValid("elasticity_tensor_prefactor"))
42 }
43 
44 void
46 {
49 }
ComputeCosseratElasticityTensor::ComputeCosseratElasticityTensor
ComputeCosseratElasticityTensor(const InputParameters &parameters)
Definition: ComputeCosseratElasticityTensor.C:31
GuaranteeProvider::issueGuarantee
void issueGuarantee(const MaterialPropertyName &prop_name, Guarantee guarantee)
Definition: GuaranteeProvider.C:27
ComputeElasticityTensorBase
ComputeElasticityTensorBase the base class for computing elasticity tensors.
Definition: ComputeElasticityTensorBase.h:25
Guarantee::CONSTANT_IN_TIME
ComputeCosseratElasticityTensor::_Eijkl
RankFourTensor _Eijkl
Conventional elasticity tensor.
Definition: ComputeCosseratElasticityTensor.h:33
ComputeCosseratElasticityTensor::validParams
static InputParameters validParams()
Definition: ComputeCosseratElasticityTensor.C:17
ComputeCosseratElasticityTensor::computeQpElasticityTensor
virtual void computeQpElasticityTensor()
Definition: ComputeCosseratElasticityTensor.C:45
ComputeElasticityTensorBase::_elasticity_tensor
MaterialProperty< RankFourTensor > & _elasticity_tensor
Definition: ComputeElasticityTensorBase.h:40
registerMooseObject
registerMooseObject("TensorMechanicsApp", ComputeCosseratElasticityTensor)
RankFourTensorTempl< Real >
ComputeCosseratElasticityTensor
ComputeElasticityTensor defines an elasticity tensor material for isi.
Definition: ComputeCosseratElasticityTensor.h:22
ComputeElasticityTensorBase::validParams
static InputParameters validParams()
Definition: ComputeElasticityTensorBase.C:16
ComputeElasticityTensorBase::_elasticity_tensor_name
std::string _elasticity_tensor_name
Definition: ComputeElasticityTensorBase.h:38
ComputeCosseratElasticityTensor::_Bijkl
RankFourTensor _Bijkl
Flexural rigidity tensor.
Definition: ComputeCosseratElasticityTensor.h:36
defineLegacyParams
defineLegacyParams(ComputeCosseratElasticityTensor)
ComputeCosseratElasticityTensor::_elastic_flexural_rigidity_tensor
MaterialProperty< RankFourTensor > & _elastic_flexural_rigidity_tensor
Flexural rigidity tensor at the qps.
Definition: ComputeCosseratElasticityTensor.h:39
ComputeCosseratElasticityTensor.h