Chaste Commit::f2ff7ee04e70ac9d06c57344df8d017dbb12b97b
AbstractTetrahedralElement< 0, SPACE_DIM > Class Template Reference

#include <AbstractTetrahedralElement.hpp>

+ Inheritance diagram for AbstractTetrahedralElement< 0, SPACE_DIM >:
+ Collaboration diagram for AbstractTetrahedralElement< 0, SPACE_DIM >:

Public Member Functions

 AbstractTetrahedralElement (unsigned index, const std::vector< Node< SPACE_DIM > * > &rNodes)
 
 AbstractTetrahedralElement (unsigned index=INDEX_IS_NOT_USED)
 
virtual ~AbstractTetrahedralElement ()
 
c_vector< double, SPACE_DIM > CalculateCentroid () const
 
void CalculateWeightedDirection (c_vector< double, SPACE_DIM > &rWeightedDirection, double &rJacobianDeterminant)
 
c_vector< double, SPACE_DIM > CalculateNormal ()
 
void GetStiffnessMatrixGlobalIndices (unsigned problemDim, unsigned *pIndices) const
 
- Public Member Functions inherited from AbstractElement< 0, SPACE_DIM >
 AbstractElement (unsigned index, const std::vector< Node< SPACE_DIM > * > &rNodes)
 
 AbstractElement (unsigned index=INDEX_IS_NOT_USED)
 
virtual ~AbstractElement ()
 
virtual void UpdateNode (const unsigned &rIndex, Node< SPACE_DIM > *pNode)=0
 
void ReplaceNode (Node< SPACE_DIM > *pOldNode, Node< SPACE_DIM > *pNewNode)
 
virtual void MarkAsDeleted ()=0
 
virtual void RegisterWithNodes ()=0
 
double GetNodeLocation (unsigned localIndex, unsigned dimension) const
 
c_vector< double, SPACE_DIM > GetNodeLocation (unsigned localIndex) const
 
unsigned GetNodeGlobalIndex (unsigned localIndex) const
 
Node< SPACE_DIM > * GetNode (unsigned localIndex) const
 
unsigned GetNumNodes () const
 
void AddNode (Node< SPACE_DIM > *pNode)
 
bool IsDeleted () const
 
unsigned GetIndex () const
 
void SetIndex (unsigned index)
 
bool GetOwnership () const
 
void SetOwnership (bool ownership)
 
void SetAttribute (double attribute)
 
double GetAttribute ()
 
unsigned GetUnsignedAttribute ()
 
void AddElementAttribute (double attribute)
 
std::vector< double > & rGetElementAttributes ()
 
unsigned GetNumElementAttributes ()
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractElement< 0, SPACE_DIM >
void ConstructElementAttributes ()
 
- Protected Attributes inherited from AbstractElement< 0, SPACE_DIM >
std::vector< Node< SPACE_DIM > * > mNodes
 
unsigned mIndex
 
bool mIsDeleted
 
bool mOwnership
 
ElementAttributes< ELEMENT_DIM, SPACE_DIM > * mpElementAttributes
 

Detailed Description

template<unsigned SPACE_DIM>
class AbstractTetrahedralElement< 0, SPACE_DIM >

Specialization for 0d elements so we don't get errors from Boost on some compilers.

Definition at line 151 of file AbstractTetrahedralElement.hpp.

Constructor & Destructor Documentation

◆ AbstractTetrahedralElement() [1/2]

template<unsigned SPACE_DIM>
AbstractTetrahedralElement< 0, SPACE_DIM >::AbstractTetrahedralElement ( unsigned  index,
const std::vector< Node< SPACE_DIM > * > &  rNodes 
)

Constructor which takes in a vector of nodes.

Parameters
indexthe index of the element in the mesh
rNodesthe nodes owned by the element

Specialization for 0d elements so we don't get errors from Boost on some compilers.

Definition at line 286 of file AbstractTetrahedralElement.cpp.

References AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::CalculateWeightedDirection(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.

◆ AbstractTetrahedralElement() [2/2]

template<unsigned SPACE_DIM>
AbstractTetrahedralElement< 0, SPACE_DIM >::AbstractTetrahedralElement ( unsigned  index = INDEX_IS_NOT_USED)

Default constructor, which doesn't fill in any nodes. The nodes must be added later.

Parameters
indexthe index of the element in the mesh (defaults to INDEX_IS_NOT_USED)

Definition at line 307 of file AbstractTetrahedralElement.cpp.

◆ ~AbstractTetrahedralElement()

template<unsigned SPACE_DIM>
virtual AbstractTetrahedralElement< 0, SPACE_DIM >::~AbstractTetrahedralElement ( )
inlinevirtual

Virtual destructor, since this class has virtual methods.

Definition at line 174 of file AbstractTetrahedralElement.hpp.

Member Function Documentation

◆ CalculateCentroid()

template<unsigned SPACE_DIM>
c_vector< double, SPACE_DIM > AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateCentroid ( ) const
Returns
the location of the centroid of the element.

Definition at line 338 of file AbstractTetrahedralElement.cpp.

◆ CalculateNormal()

template<unsigned SPACE_DIM>
c_vector< double, SPACE_DIM > AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateNormal ( )
Returns
computed unit vector normal to this element, if possible.
Todo:
should throw?

Definition at line 327 of file AbstractTetrahedralElement.cpp.

◆ CalculateWeightedDirection()

template<unsigned SPACE_DIM>
void AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateWeightedDirection ( c_vector< double, SPACE_DIM > &  rWeightedDirection,
double rJacobianDeterminant 
)

Compute the weighted direction for this element.

Parameters
rWeightedDirectionthe weighted direction vector
rJacobianDeterminantthe determinant of the Jacobian

Definition at line 313 of file AbstractTetrahedralElement.cpp.

◆ GetStiffnessMatrixGlobalIndices()

template<unsigned SPACE_DIM>
void AbstractTetrahedralElement< 0, SPACE_DIM >::GetStiffnessMatrixGlobalIndices ( unsigned  problemDim,
unsigned pIndices 
) const

Place in the pIndices array, the global indices (within the stiffness matrix) of the degrees of freedom associated with this element.

Parameters
problemDimthe problem dimension e.g. 2 for Bidomain.
pIndiceswhere to store results: an unsigned array with ELEMENT_DIM+1 entries.

Definition at line 345 of file AbstractTetrahedralElement.cpp.


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