20 #ifndef __mast_mindlin_strain_operator_h__ 21 #define __mast_mindlin_strain_operator_h__ 31 namespace Elasticity {
32 namespace MindlinPlate {
35 template <
typename NodalScalarType,
typename VarScalarType,
typename FEVarType>
39 const VarScalarType z,
40 typename Eigen::Matrix<VarScalarType, 3, 1> &epsilon,
45 const typename FEVarType::fe_shape_deriv_t
46 &fe = fe_var.get_fe_shape_data();
51 "Strain vector dimension for inplane strain of Mindlin plate should be 3");
54 "Strain vector dimension for inplane strain of Mindlin plate should be 3");
56 Bmat.
n(), 3*fe.n_basis(),
57 "Incompatible Operator size.");
68 epsilon(0) = z * fe_var.du_dx(qp, 2, 0);
69 epsilon(1) = -z * fe_var.du_dx(qp, 1, 1);
70 epsilon(2) = z * (fe_var.du_dx(qp, 2, 1) - fe_var.du_dx(qp, 1, 0));
75 template <
typename NodalScalarType,
typename VarScalarType,
typename FEVarType>
79 typename Eigen::Matrix<VarScalarType, 2, 1> &epsilon,
84 const typename FEVarType::fe_shape_deriv_t
85 &fe = fe_var.get_fe_shape_data();
90 "Strain vector dimension for transverse shear strain of Mindlin plate should be 2");
93 "Strain vector dimension for transverse shear strain of Mindlin plate should be 2");
95 Bmat.
n(), 3*fe.n_basis(),
96 "Incompatible Operator size.");
104 epsilon(0) = fe_var.du_dx(qp, 0, 0) + fe_var.u(qp, 2);
105 epsilon(1) = fe_var.du_dx(qp, 0, 1) - fe_var.u(qp, 1);
114 #endif // __mast_mindlin_strain_operator_h__
#define Assert1(cond, v1, msg)
void inplane_strain(const FEVarType &fe_var, const uint_t qp, const VarScalarType z, typename Eigen::Matrix< VarScalarType, 3, 1 > &epsilon, MAST::Numerics::FEMOperatorMatrix< NodalScalarType > &Bmat)
void set_shape_function(uint_t interpolated_var, uint_t discrete_var, const VecType &shape_func)
sets the shape function values for the block corresponding to interpolated_var and discrete_var...
#define Assert2(cond, v1, v2, msg)
void transverse_shear_strain(const FEVarType &fe_var, const uint_t qp, typename Eigen::Matrix< VarScalarType, 2, 1 > &epsilon, MAST::Numerics::FEMOperatorMatrix< NodalScalarType > &Bmat)