MAST3
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
MAST::Physics::Elasticity::Plate Namespace Reference

Classes

class  LinearAcceleration
 This class implements the discrete evaluation of the acceleration kernel defined as

\[ - \int_{\Omega_e} \left(\delta w \rho h \frac{\partial^t u}{\partial t^2} + \delta \theta_x \frac{\rho h^3}{12} \frac{\partial^t \theta_x}{\partial t^2} + \delta \theta_y \frac{\rho h^3}{12} \frac{\partial^t \theta_y}{\partial t^2} \right) ~d\Omega, \]

where, $ \phi$ is the variation, $ \rho $ is the material density, and $ h $ is the section thickness. More...

 

Functions

template<typename NodalScalarType , typename VarScalarType , typename FEVarType >
void displacement (const FEVarType &fe_var, const uint_t qp, typename Eigen::Matrix< VarScalarType, 3, 1 > &u, MAST::Numerics::FEMOperatorMatrix< NodalScalarType > &Bmat)
 

Function Documentation

◆ displacement()

template<typename NodalScalarType , typename VarScalarType , typename FEVarType >
void MAST::Physics::Elasticity::Plate::displacement ( const FEVarType &  fe_var,
const uint_t  qp,
typename Eigen::Matrix< VarScalarType, 3, 1 > &  u,
MAST::Numerics::FEMOperatorMatrix< NodalScalarType > &  Bmat 
)
inline

Definition at line 39 of file plate_linear_acceleration.hpp.

42  {
43 
44  u.setZero();
45 
46  const typename FEVarType::fe_shape_deriv_t
47  &fe = fe_var.get_fe_shape_data();
48 
49  // make sure all matrices are the right size
50  Assert1(Bmat.m() == 3,
51  Bmat.m(),
52  "Incompatible operator size");
53  Assert2(Bmat.n() == 3*fe.n_basis(),
54  Bmat.n(), 3*fe.n_basis(),
55  "Incompatible Operator size.");
56 
57 
58  // set the strain displacement relation
59  for (uint_t i=0; i<3; i++) {
60  Bmat.set_shape_function(i, i, fe.phi(qp));
61  u(i) = fe_var.u(qp, i);
62  }
63 }
#define Assert1(cond, v1, msg)
Definition: exceptions.hpp:143
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...
unsigned int uint_t
#define Assert2(cond, v1, v2, msg)
Definition: exceptions.hpp:152