www.mooseframework.org
ComputeVariableIsotropicElasticityTensor.h
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 
10 #pragma once
11 
13 
20 {
21 public:
23 
25 
26 protected:
27  virtual void initialSetup() override;
28  virtual void initQpStatefulProperties() override;
29  virtual void computeQpElasticityTensor() override;
30 
33 
36 
38  const unsigned int _num_args;
39 
41  std::vector<const MaterialProperty<Real> *> _dyoungs_modulus;
43  std::vector<std::vector<const MaterialProperty<Real> *>> _d2youngs_modulus;
44 
46  std::vector<const MaterialProperty<Real> *> _dpoissons_ratio;
48  std::vector<std::vector<const MaterialProperty<Real> *>> _d2poissons_ratio;
49 
51  std::vector<MaterialProperty<RankFourTensor> *> _delasticity_tensor;
53  std::vector<std::vector<MaterialProperty<RankFourTensor> *>> _d2elasticity_tensor;
54 
56  std::vector<Real> _isotropic_elastic_constants;
57 };
const MaterialProperty< Real > & _youngs_modulus
Material defining 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 defining 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
const InputParameters & parameters() const
std::vector< const MaterialProperty< Real > * > _dyoungs_modulus
first derivatives of the Young&#39;s Modulus with respect to the args