13 #include "libmesh/quadrature.h" 14 #include "libmesh/utility.h" 15 #include "libmesh/enum_quadrature_type.h" 16 #include "libmesh/fe_type.h" 17 #include "libmesh/string_to_enum.h" 18 #include "libmesh/quadrature_gauss.h" 28 "poissons_ratio >= -1.0 & poissons_ratio < 0.5",
29 "Poisson's ratio for the material.");
31 "youngs_modulus",
"youngs_modulus > 0.0",
"Young's modulus of the material.");
33 "Quadrature order in out of plane direction");
40 _poissons_ratio(getParam<
Real>(
"poissons_ratio")),
41 _youngs_modulus(getParam<
Real>(
"youngs_modulus"))
57 std::unique_ptr<libMesh::QGauss> t_qrule = std::make_unique<libMesh::QGauss>(
58 1, Utility::string_to_enum<Order>(getParam<std::string>(
"through_thickness_order")));
62 for (
unsigned int t = 0; t <
_t_points.size(); ++t)
65 &declareADProperty<RankFourTensor>(
"elasticity_tensor_t_points_" + std::to_string(t));
66 _ge[t] = &getADMaterialProperty<RankTwoTensor>(
"ge_t_points_" + std::to_string(t));
73 for (
unsigned int t = 0; t <
_t_points.size(); ++t)
77 for (
unsigned int i = 0; i < 3; ++i)
78 for (
unsigned int j = 0;
j < 3; ++
j)
79 for (
unsigned int k = 0;
k < 3; ++
k)
80 for (
unsigned int l = 0; l < 3; ++l)
81 for (
unsigned int m = 0; m < 3; ++m)
82 for (
unsigned int n = 0; n < 3; ++n)
83 for (
unsigned int o = 0; o < 3; ++o)
84 for (
unsigned int p = 0; p < 3; ++p)
ADComputeIsotropicElasticityTensorShell(const InputParameters ¶meters)
registerMooseObject("SolidMechanicsApp", ADComputeIsotropicElasticityTensorShell)
Real _poissons_ratio
Lame' paramters.
static InputParameters validParams()
void fillSymmetricIsotropicEandNu(const T &E, const T &nu)
std::vector< Point > _t_points
Quadrature points along thickness.
RankFourTensor _Cijkl
Individual elasticity tensor.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void computeQpProperties() override
static const std::complex< double > j(0, 1)
Complex number "j" (also known as "i")
std::vector< const ADMaterialProperty< RankTwoTensor > * > _ge
Material property for ge matrix.
std::vector< ADMaterialProperty< RankFourTensor > * > _elasticity_tensor
Material property elasticity tensor.
static const std::string k
static InputParameters validParams()