ITK
4.13.0
Insight Segmentation and Registration Toolkit
|
#include <itkFEMElement3DC0LinearTriangularMembrane.h>
3-noded finite element class in 3D space for surface membrane problem.
This element is combined from Element3DC0LinearTriangular and Element3DMembrane. A membrane element in three dimensional is an isotropic homogeneous element through a small thickness. The elements have three translational degrees of freedom at each node.
Definition at line 41 of file itkFEMElement3DC0LinearTriangularMembrane.h.
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const override |
Element3DC0LinearTriangularMembrane () | |
Element3DC0LinearTriangularMembrane (NodeIDType n1_, NodeIDType n2_, NodeIDType n3_, Material::ConstPointer p_) | |
virtual const char * | GetNameOfClass () const |
Public Member Functions inherited from itk::fem::Element3DMembrane< Element3DC0LinearTriangular > | |
Element3DMembrane () | |
void | GetMassMatrix (MatrixType &Me) const override |
virtual Material::ConstPointer | GetMaterial (void) const override |
virtual void | GetMaterialMatrix (MatrixType &D) const override |
virtual unsigned int | GetNumberOfDegreesOfFreedomPerNode (void) const override |
virtual void | GetStrainDisplacementMatrix (MatrixType &B, const MatrixType &shapeDgl) const override |
virtual void | SetMaterial (Material::ConstPointer mat_) override |
Public Member Functions inherited from itk::fem::Element3DC0LinearTriangular | |
void | ComputeNormalDirection (const VectorType &v1, const VectorType &v2, const VectorType &v3, VectorType &n) const |
itk::fem::Element::Float | Determinant2x2 (const VectorType &c1, const VectorType &c2) const |
void | GeneralizedProjectPoint (const VectorType &x, const VectorType &origin, const VectorType &normal, VectorType &xproj) const |
virtual void | GetIntegrationPointAndWeight (unsigned int i, VectorType &pt, Float &w, unsigned int order) const override |
virtual bool | GetLocalFromGlobalCoordinates (const VectorType &globalPt, VectorType &localPt) const override |
virtual unsigned int | GetNumberOfIntegrationPoints (unsigned int order) const override |
virtual Float | JacobianDeterminant (const VectorType &pt, const MatrixType *pJ=nullptr) const override |
virtual void | JacobianInverse (const VectorType &pt, MatrixType &invJ, const MatrixType *pJ=nullptr) const override |
virtual void | PopulateEdgeIds () override |
virtual void | ShapeFunctionDerivatives (const VectorType &pt, MatrixType &shapeD) const override |
virtual VectorType | ShapeFunctions (const VectorType &pt) const override |
Public Member Functions inherited from itk::fem::ElementStd< 3, 3 > | |
ElementStd () | |
virtual const VectorType & | GetNodeCoordinates (unsigned int n) const override |
virtual unsigned int | GetNumberOfNodes (void) const override |
virtual unsigned int | GetNumberOfSpatialDimensions () const override |
virtual void | SetNode (unsigned int n, NodeIDType node) override |
virtual void | SetNode (unsigned int n, typename Superclass::Node::Pointer node) override |
virtual NodeIDType | GetNode (unsigned int n) const override |
Public Member Functions inherited from itk::fem::Element | |
virtual std::vector < std::vector< int > > | GetEdgeIds (void) const |
virtual Float | GetElementDeformationEnergy (MatrixType &LocalSolution) const |
virtual VectorType | GetGlobalFromLocalCoordinates (const VectorType &pt) const |
virtual void | GetLandmarkContributionMatrix (float eta, MatrixType &Le) const |
virtual unsigned int | GetNumberOfDegreesOfFreedom (void) const |
virtual void | GetStiffnessMatrix (MatrixType &Ke) const |
virtual VectorType | GetStrainsAtPoint (const VectorType &pt, const Solution &sol, unsigned int index) const |
virtual VectorType | GetStressesAtPoint (const VectorType &pt, const VectorType &e, const Solution &sol, unsigned int index) const |
virtual VectorType | InterpolateSolution (const VectorType &pt, const Solution &sol, unsigned int solutionIndex=0) const |
virtual Float | InterpolateSolutionN (const VectorType &pt, const Solution &sol, unsigned int f, unsigned int solutionIndex=0) const |
virtual void | Jacobian (const VectorType &pt, MatrixType &J, const MatrixType *pshapeD=nullptr) const |
virtual void | ShapeFunctionGlobalDerivatives (const VectorType &pt, MatrixType &shapeDgl, const MatrixType *pJ=nullptr, const MatrixType *pshapeD=nullptr) const |
DegreeOfFreedomIDType | GetDegreeOfFreedom (unsigned int local_dof) const |
Public Member Functions inherited from itk::fem::FEMLightObject | |
int | GetGlobalNumber () const |
void | SetGlobalNumber (int) |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const noexcept |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Protected Member Functions | |
virtual void | PrintSelf (std::ostream &os, Indent indent) const override |
Protected Member Functions inherited from itk::fem::ElementStd< 3, 3 > | |
virtual void | SetNodeInternal (unsigned int n, const Node *node) |
Protected Member Functions inherited from itk::fem::FEMLightObject | |
FEMLightObject () | |
FEMLightObject (const FEMLightObject &o) | |
virtual | ~FEMLightObject () override |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Additional Inherited Members | |
Static Public Attributes inherited from itk::fem::Element3DC0LinearTriangular | |
static const unsigned int | Nip [6] |
static const Float | trigGaussRuleInfo [6][7][4] |
Static Public Attributes inherited from itk::fem::Element | |
static const unsigned int | gaussMaxOrder = 10 |
static const Float | gaussPoint [gaussMaxOrder+1][gaussMaxOrder] |
static const Float | gaussWeight [gaussMaxOrder+1][gaussMaxOrder] |
Protected Attributes inherited from itk::fem::Element3DMembrane< Element3DC0LinearTriangular > | |
const MaterialLinearElasticity * | m_mat |
Protected Attributes inherited from itk::fem::ElementStd< 3, 3 > | |
const Node * | m_node [NumberOfNodes] |
Protected Attributes inherited from itk::fem::Element | |
std::vector< std::vector< int > > | m_EdgeIds |
Protected Attributes inherited from itk::fem::FEMLightObject | |
int | m_GlobalNumber |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
Definition at line 49 of file itkFEMElement3DC0LinearTriangularMembrane.h.
Definition at line 48 of file itkFEMElement3DC0LinearTriangularMembrane.h.
Standard class typedefs.
Definition at line 46 of file itkFEMElement3DC0LinearTriangularMembrane.h.
typedef Element3DMembrane<Element3DC0LinearTriangular> itk::fem::Element3DC0LinearTriangularMembrane::Superclass |
Definition at line 47 of file itkFEMElement3DC0LinearTriangularMembrane.h.
itk::fem::Element3DC0LinearTriangularMembrane::Element3DC0LinearTriangularMembrane | ( | ) |
Default constructor only clears the internal storage
itk::fem::Element3DC0LinearTriangularMembrane::Element3DC0LinearTriangularMembrane | ( | NodeIDType | n1_, |
NodeIDType | n2_, | ||
NodeIDType | n3_, | ||
Material::ConstPointer | p_ | ||
) |
Construct an element by specifying pointers to 3 points and a material.
|
overridevirtual |
CreateAnother method will clone the existing instance of this type, including its internal member variables.
Reimplemented from itk::LightObject.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::fem::Element3DMembrane< Element3DC0LinearTriangular >.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::fem::Element3DMembrane< Element3DC0LinearTriangular >.