19 #ifndef itkFEMElement2DC1Beam_h 20 #define itkFEMElement2DC1Beam_h 25 #include "ITKFEMExport.h" 51 itkSimpleNewMacro(Self);
58 virtual::itk::LightObject::Pointer CreateAnother(
void) const ITK_OVERRIDE;
77 virtual
void GetStiffnessMatrix(
MatrixType & Ke) const ITK_OVERRIDE;
80 virtual
void GetMassMatrix(
MatrixType & Me) const ITK_OVERRIDE;
83 virtual
void GetStrainDisplacementMatrix(
MatrixType &, const MatrixType &) const ITK_OVERRIDE
97 enum { DefaultIntegrationOrder = 1 };
100 virtual void GetIntegrationPointAndWeight(
unsigned int i,
VectorType & pt,
Float & w,
unsigned int order = 0)
const ITK_OVERRIDE;
102 virtual unsigned int GetNumberOfIntegrationPoints(
unsigned int order)
const ITK_OVERRIDE;
113 virtual void ShapeFunctionDerivatives(
const VectorType & pt,
MatrixType & shapeD)
const ITK_OVERRIDE;
135 return dynamic_cast<const Material *
>(m_mat);
148 virtual void PrintSelf(std::ostream& os,
Indent indent)
const ITK_OVERRIDE;
162 #endif // #ifndef itkFEMElement2DC1Beam_h virtual void GetMaterialMatrix(MatrixType &) const override
SmartPointer< Self > Pointer
virtual unsigned int GetNumberOfDegreesOfFreedomPerNode(void) const override
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes...
SmartPointer< const Self > ConstPointer
ElementStd< 2, 2 > TemplatedParentClass
Implements standard node management in the element classes.
vnl_matrix< Float > MatrixType
virtual Material::ConstPointer GetMaterial(void) const override
Linear elasticity material class.
Base class for storing all the implicit material and other properties required to fully define the el...
virtual void PopulateEdgeIds(void) override
1D Beam (spring that also bends) finite element in 2D space.
virtual bool GetLocalFromGlobalCoordinates(const VectorType &, VectorType &) const override
const MaterialLinearElasticity * m_mat
vnl_vector< Float > VectorType
virtual void SetMaterial(Material::ConstPointer mat_) override
Control indentation during Print() invocation.
TemplatedParentClass Superclass