www.mooseframework.org
ComputeVariableIsotropicElasticityTensor.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef COMPUTEVARIABLEISOTROPICELASTICITYTENSOR_H
8 #define COMPUTEVARIABLEISOTROPICELASTICITYTENSOR_H
9 
11 
18 {
19 public:
20  ComputeVariableIsotropicElasticityTensor(const InputParameters & parameters);
21 
22 protected:
23  virtual void initialSetup() override;
24  virtual void initQpStatefulProperties() override;
25  virtual void computeQpElasticityTensor() override;
26 
28  const MaterialProperty<Real> & _youngs_modulus;
29 
31  const MaterialProperty<Real> & _poissons_ratio;
32 
34  const unsigned int _num_args;
35 
37  std::vector<const MaterialProperty<Real> *> _dyoungs_modulus;
39  std::vector<std::vector<const MaterialProperty<Real> *>> _d2youngs_modulus;
40 
42  std::vector<const MaterialProperty<Real> *> _dpoissons_ratio;
44  std::vector<std::vector<const MaterialProperty<Real> *>> _d2poissons_ratio;
45 
47  std::vector<MaterialProperty<RankFourTensor> *> _delasticity_tensor;
49  std::vector<std::vector<MaterialProperty<RankFourTensor> *>> _d2elasticity_tensor;
50 
52  std::vector<Real> _isotropic_elastic_constants;
53 };
54 
55 #endif // COMPUTEVARIABLEISOTROPICELASTICITYTENSOR_H
const MaterialProperty< Real > & _youngs_modulus
Material defininig the Young&#39;s Modulus.
std::vector< std::vector< const MaterialProperty< Real > * > > _d2poissons_ratio
second derivatives of the Poisson&#39;s Ratio with respect to the args
const MaterialProperty< Real > & _poissons_ratio
Material defininig the Poisson&#39;s Ratio.
ComputeElasticityTensorBase the base class for computing elasticity tensors.
ComputeVariableIsotropicElasticityTensor defines an elasticity tensor material for isotropic material...
std::vector< std::vector< MaterialProperty< RankFourTensor > * > > _d2elasticity_tensor
second derivatives of the elasticity tensor with respect to the args
const unsigned int _num_args
number of variables the moduli depend on
std::vector< const MaterialProperty< Real > * > _dpoissons_ratio
first derivatives of the Poisson&#39;s Ratio with respect to the args
ComputeVariableIsotropicElasticityTensor(const InputParameters &parameters)
std::vector< Real > _isotropic_elastic_constants
Vector of elastic constants to create the elasticity tensor (member to avoid memory churn) ...
std::vector< MaterialProperty< RankFourTensor > * > _delasticity_tensor
first derivatives of the elasticity tensor with respect to the args
std::vector< std::vector< const MaterialProperty< Real > * > > _d2youngs_modulus
second derivatives of the Young&#39;s Modulus with respect to the args
std::vector< const MaterialProperty< Real > * > _dyoungs_modulus
first derivatives of the Young&#39;s Modulus with respect to the args