ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
itk::fem::Element2DMembrane< TBaseClass > Class Template Reference

Class that is used to define a membrane energy problem in 2D space. More...

#include <itkFEMElement2DMembrane.h>

Inheritance diagram for itk::fem::Element2DMembrane< TBaseClass >:
Collaboration diagram for itk::fem::Element2DMembrane< TBaseClass >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::Float Float
typedef Superclass::MatrixType MatrixType
typedef SmartPointer< SelfPointer
typedef Element2DMembrane Self
typedef TBaseClass Superclass
typedef Superclass::VectorType VectorType

Public Member Functions

 Element2DMembrane ()
void GetMassMatrix (MatrixType &Me) const
virtual Material::ConstPointer GetMaterial (void) const
virtual void GetMaterialMatrix (MatrixType &D) const
virtual const char * GetNameOfClass () const
virtual unsigned int GetNumberOfDegreesOfFreedomPerNode (void) const
virtual void GetStrainDisplacementMatrix (MatrixType &B, const MatrixType &shapeDgl) const
virtual void SetMaterial (Material::ConstPointer mat_)

Protected Member Functions

virtual void PrintSelf (std::ostream &os, Indent indent) const

Protected Attributes

const MaterialLinearElasticitym_mat

Detailed Description

template<class TBaseClass = Element>
class itk::fem::Element2DMembrane< TBaseClass >

Class that is used to define a membrane energy problem in 2D space.

This class only defines the physics of the problem. Use his class together with element classes that specify the geometry to fully define the element.

A membrane element a two dimensional flat extensional element. There are two in plane displacement DOF’s at each node of the element. The elements can be used to model two dimensional elasticity problems, plane strain and plane stress. The membrane element has no rotational stiffness or stiffness normal to the plane of the element. It can be situated arbitrarily in space but the resultant forces must lie in the plane of the element.

You can specify one template parameter:

TBaseClass - Class from which Element2DMembrane is derived. TBaseClass must be derived from the Element base class. This enables you to use this class at any level of element definition. If not specified, it defaults to the Element base class.

Definition at line 53 of file itkFEMElement2DMembrane.h.


Member Typedef Documentation

template<class TBaseClass = Element>
typedef SmartPointer<const Self> itk::fem::Element2DMembrane< TBaseClass >::ConstPointer
template<class TBaseClass = Element>
typedef Superclass::Float itk::fem::Element2DMembrane< TBaseClass >::Float

Definition at line 64 of file itkFEMElement2DMembrane.h.

template<class TBaseClass = Element>
typedef Superclass::MatrixType itk::fem::Element2DMembrane< TBaseClass >::MatrixType

Definition at line 68 of file itkFEMElement2DMembrane.h.

template<class TBaseClass = Element>
typedef SmartPointer<Self> itk::fem::Element2DMembrane< TBaseClass >::Pointer
template<class TBaseClass = Element>
typedef Element2DMembrane itk::fem::Element2DMembrane< TBaseClass >::Self

Standard class typedefs.

Reimplemented in itk::fem::Element2DC0LinearQuadrilateralMembrane, and itk::fem::Element2DC0LinearTriangularMembrane.

Definition at line 58 of file itkFEMElement2DMembrane.h.

template<class TBaseClass = Element>
typedef TBaseClass itk::fem::Element2DMembrane< TBaseClass >::Superclass
template<class TBaseClass = Element>
typedef Superclass::VectorType itk::fem::Element2DMembrane< TBaseClass >::VectorType

Definition at line 69 of file itkFEMElement2DMembrane.h.


Constructor & Destructor Documentation

template<class TBaseClass = Element>
itk::fem::Element2DMembrane< TBaseClass >::Element2DMembrane ( )

Default constructor only clears the internal storage


Member Function Documentation

template<class TBaseClass = Element>
void itk::fem::Element2DMembrane< TBaseClass >::GetMassMatrix ( MatrixType Me) const

Compute the mass matrix specific for 2D stress problems.

template<class TBaseClass = Element>
virtual Material::ConstPointer itk::fem::Element2DMembrane< TBaseClass >::GetMaterial ( void  ) const [inline, virtual]

Get/Set the material properties for the element

Definition at line 107 of file itkFEMElement2DMembrane.h.

template<class TBaseClass = Element>
virtual void itk::fem::Element2DMembrane< TBaseClass >::GetMaterialMatrix ( MatrixType D) const [virtual]

Compute the D matrix.

template<class TBaseClass = Element>
virtual const char* itk::fem::Element2DMembrane< TBaseClass >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented in itk::fem::Element2DC0LinearQuadrilateralMembrane, and itk::fem::Element2DC0LinearTriangularMembrane.

template<class TBaseClass = Element>
virtual unsigned int itk::fem::Element2DMembrane< TBaseClass >::GetNumberOfDegreesOfFreedomPerNode ( void  ) const [inline, virtual]

2D stress elements have 2 DOFs per node.

Definition at line 99 of file itkFEMElement2DMembrane.h.

template<class TBaseClass = Element>
virtual void itk::fem::Element2DMembrane< TBaseClass >::GetStrainDisplacementMatrix ( MatrixType B,
const MatrixType shapeDgl 
) const [virtual]

Methods related to the physics of the problem. Compute the B matrix.

template<class TBaseClass = Element>
virtual void itk::fem::Element2DMembrane< TBaseClass >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]
template<class TBaseClass = Element>
virtual void itk::fem::Element2DMembrane< TBaseClass >::SetMaterial ( Material::ConstPointer  mat_) [inline, virtual]

Definition at line 112 of file itkFEMElement2DMembrane.h.


Member Data Documentation

template<class TBaseClass = Element>
const MaterialLinearElasticity* itk::fem::Element2DMembrane< TBaseClass >::m_mat [protected]

The documentation for this class was generated from the following file: