MAST3
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
fe_derivative_evaluation.hpp File Reference
Include dependency graph for fe_derivative_evaluation.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 MAST
 
 MAST::FEBasis
 
 MAST::FEBasis::Evaluation
 

Functions

template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim>
void MAST::FEBasis::Evaluation::compute_detJ (const Eigen::Matrix< NodalScalarType, SpatialDim *ElemDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==1, void >::type MAST::FEBasis::Evaluation::compute_detJ_side (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==2, void >::type MAST::FEBasis::Evaluation::compute_detJ_side (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==3, void >::type MAST::FEBasis::Evaluation::compute_detJ_side (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==3, void >::type MAST::FEBasis::Evaluation::compute_detJ_side_hex (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==2, void >::type MAST::FEBasis::Evaluation::compute_detJ_side_quad (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename FEBasisType , typename ContextType >
void MAST::FEBasis::Evaluation::compute_detJxW (const FEBasisType &fe_basis, const Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJ, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, 1 > &detJxW)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename FEBasisType >
void MAST::FEBasis::Evaluation::compute_dphi_dx (const FEBasisType &fe_basis, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dxi_dx, Eigen::Matrix< NodalScalarType, Eigen::Dynamic, Eigen::Dynamic > &dphi_dx)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==3, void >::type MAST::FEBasis::Evaluation::compute_hex_side_tangent_and_normal (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &tangent, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &normal)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename FEBasisType , typename ContextType >
void MAST::FEBasis::Evaluation::compute_Jac (const ContextType &c, const FEBasisType &fe_basis, const Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &node_coord, Eigen::Matrix< NodalScalarType, SpatialDim *ElemDim, Eigen::Dynamic > &dx_dxi)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim>
std::enable_if< ElemDim==SpatialDim, void >::type MAST::FEBasis::Evaluation::compute_Jac_inv (const Eigen::Matrix< NodalScalarType, ElemDim *ElemDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, ElemDim *ElemDim, Eigen::Dynamic > &dxi_dx)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==2, void >::type MAST::FEBasis::Evaluation::compute_quad_side_tangent_and_normal (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, ElemDim *SpatialDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &tangent, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &normal)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==1, void >::type MAST::FEBasis::Evaluation::compute_side_tangent_and_normal (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, SpatialDim *ElemDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &tangent, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &normal)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==2, void >::type MAST::FEBasis::Evaluation::compute_side_tangent_and_normal (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, SpatialDim *ElemDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &tangent, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &normal)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename ContextType >
std::enable_if< ElemDim==SpatialDim &&ElemDim==3, void >::type MAST::FEBasis::Evaluation::compute_side_tangent_and_normal (const ContextType &c, const uint_t s, const Eigen::Matrix< NodalScalarType, SpatialDim *ElemDim, Eigen::Dynamic > &dx_dxi, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &tangent, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &normal)
 
template<typename NodalScalarType , uint_t ElemDim, uint_t SpatialDim, typename FEBasisType , typename ContextType >
void MAST::FEBasis::Evaluation::compute_xyz (const ContextType &c, const FEBasisType &fe_basis, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &node_coord, Eigen::Matrix< NodalScalarType, SpatialDim, Eigen::Dynamic > &xyz)
 
void MAST::FEBasis::Evaluation::hex_side_Jac_cols (const uint_t s, uint_t &c1, uint_t &c2)
 
uint_t MAST::FEBasis::Evaluation::quad_side_Jac_col (uint_t s)