TexGen
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TexGen::CElement Class Referenceabstract

Base class for representing finite elements. More...

#include <Elements.h>

Inheritance diagram for TexGen::CElement:
Inheritance graph
[legend]

Classes

struct  INTEGRATION_POINT
 Struct for representing an integration point. More...
 

Public Member Functions

 CElement (const CMatrix &P=CMatrix(), int iOrder=3)
 
virtual ~CElement (void)
 
void SetNodeCoordinates (const CMatrix &P)
 
void SetIntegrationOrder (int iOrder)
 
void GetKeMatrix (CMatrix &KeMatrix)
 
void SetFibreDirection (XYZ FibreDirection)
 
XYZ GetFibreDirection ()
 

Protected Member Functions

void GetBMatrix (CMatrix &BMatrix, CMatrix &Position)
 This is the dimension matrix which is composed of the A and X matrices (B=X*A^-1) More...
 
virtual void GetAMatrix (CMatrix &AMatrix)=0
 This is the coordinate matrix given nodal coordinates P. More...
 
virtual void GetXMatrix (CMatrix &XMatrix, CMatrix &Position)=0
 This is the matrix which defines strain in terms of the coefficients. More...
 
virtual void GetDMatrix (CMatrix &DMatrix)=0
 This is the material properties matrix (typically involving E and v) More...
 
virtual void GetIntegrationPoints (vector< INTEGRATION_POINT > &IntegrationPoints)=0
 Defines a series of integration points. More...
 

Protected Attributes

CMatrix m_P
 
int m_iIntegrationOrder
 
XYZ m_FibreDirection
 

Detailed Description

Base class for representing finite elements.

This class contains all the implementation which is common to finite element analysis elements. Not to be confused with elements within a CMesh. The CMesh class is purely geometrical, while this class is used for FE analysis.

Definition at line 32 of file Elements.h.

Constructor & Destructor Documentation

◆ CElement()

CElement::CElement ( const CMatrix P = CMatrix(),
int  iOrder = 3 
)

Definition at line 25 of file Elements.cpp.

◆ ~CElement()

virtual TexGen::CElement::~CElement ( void  )
inlinevirtual

Definition at line 36 of file Elements.h.

Member Function Documentation

◆ GetAMatrix()

virtual void TexGen::CElement::GetAMatrix ( CMatrix AMatrix)
protectedpure virtual

This is the coordinate matrix given nodal coordinates P.

Implemented in TexGen::CElementTriBending, and TexGen::CElementTriTension.

Referenced by GetBMatrix().

◆ GetBMatrix()

void CElement::GetBMatrix ( CMatrix BMatrix,
CMatrix Position 
)
protected

This is the dimension matrix which is composed of the A and X matrices (B=X*A^-1)

Definition at line 60 of file Elements.cpp.

References TexGen::CMatrix::EqualsMultiple(), GetAMatrix(), TexGen::CMatrix::GetInverse(), and GetXMatrix().

Referenced by GetKeMatrix().

◆ GetDMatrix()

virtual void TexGen::CElement::GetDMatrix ( CMatrix DMatrix)
protectedpure virtual

This is the material properties matrix (typically involving E and v)

Implemented in TexGen::CElementTriBending, and TexGen::CElementTriTension.

Referenced by GetKeMatrix().

◆ GetFibreDirection()

XYZ TexGen::CElement::GetFibreDirection ( )
inline

Definition at line 44 of file Elements.h.

◆ GetIntegrationPoints()

virtual void TexGen::CElement::GetIntegrationPoints ( vector< INTEGRATION_POINT > &  IntegrationPoints)
protectedpure virtual

Defines a series of integration points.

The number of integration points depends on the element shape and integration order

Implemented in TexGen::CElementTri.

Referenced by GetKeMatrix().

◆ GetKeMatrix()

void CElement::GetKeMatrix ( CMatrix KeMatrix)

◆ GetXMatrix()

virtual void TexGen::CElement::GetXMatrix ( CMatrix XMatrix,
CMatrix Position 
)
protectedpure virtual

This is the matrix which defines strain in terms of the coefficients.

Implemented in TexGen::CElementTriBending, and TexGen::CElementTriTension.

Referenced by GetBMatrix().

◆ SetFibreDirection()

void TexGen::CElement::SetFibreDirection ( XYZ  FibreDirection)
inline

Definition at line 43 of file Elements.h.

Referenced by TexGen::CGeometrySolver::AssignFibreDirectionToElements().

◆ SetIntegrationOrder()

void CElement::SetIntegrationOrder ( int  iOrder)

Definition at line 36 of file Elements.cpp.

References m_iIntegrationOrder.

◆ SetNodeCoordinates()

void CElement::SetNodeCoordinates ( const CMatrix P)

Definition at line 31 of file Elements.cpp.

References m_P.

Referenced by TexGen::CGeometrySolver::CreatePlateElements().

Member Data Documentation

◆ m_FibreDirection

XYZ TexGen::CElement::m_FibreDirection
protected

◆ m_iIntegrationOrder

int TexGen::CElement::m_iIntegrationOrder
protected

Definition at line 69 of file Elements.h.

Referenced by TexGen::CElementTri::GetIntegrationPoints(), and SetIntegrationOrder().

◆ m_P

CMatrix TexGen::CElement::m_P
protected

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