Node< SPACE_DIM > Class Template Reference

#include <Node.hpp>

Collaboration diagram for Node< SPACE_DIM >:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Node (unsigned index, ChastePoint< SPACE_DIM > point, bool isBoundaryNode=false)
 Node (unsigned index, std::vector< double > coords, bool isBoundaryNode=false)
 Node (unsigned index, c_vector< double, SPACE_DIM > location, bool isBoundaryNode=false)
 Node (unsigned index, bool isBoundaryNode=false, double v1=0, double v2=0, double v3=0)
void SetPoint (ChastePoint< SPACE_DIM > point)
void SetIndex (unsigned index)
void SetAsBoundaryNode (bool value=true)
ChastePoint< SPACE_DIM > GetPoint () const
const c_vector< double,
SPACE_DIM > & 
rGetLocation () const
c_vector< double, SPACE_DIM > & rGetModifiableLocation ()
unsigned GetIndex () const
bool IsBoundaryNode () const
void AddElement (unsigned index)
void RemoveElement (unsigned index)
void RemoveBoundaryElement (unsigned index)
void AddBoundaryElement (unsigned index)
std::set< unsigned > & rGetContainingElementIndices ()
std::set< unsigned > & rGetContainingBoundaryElementIndices ()
unsigned GetNumContainingElements () const
unsigned GetNumBoundaryElements () const
void MarkAsDeleted ()
bool IsDeleted () const
template<unsigned ELEMENT_DIM>
bool IsFlagged (TetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rMesh)
void SetRegion (unsigned region)
unsigned GetRegion () const
ContainingElementIterator ContainingElementsBegin () const
ContainingElementIterator ContainingElementsEnd () const
ContainingBoundaryElementIterator ContainingBoundaryElementsBegin () const
ContainingBoundaryElementIterator ContainingBoundaryElementsEnd () const

Private Member Functions

void CommonConstructor (unsigned index, bool isBoundaryNode)

Private Attributes

unsigned mIndex
unsigned mRegion
c_vector< double, SPACE_DIM > mLocation
bool mIsBoundaryNode
bool mIsDeleted
std::set< unsigned > mElementIndices
std::set< unsigned > mBoundaryElementIndices

Classes

class  ContainingBoundaryElementIterator
class  ContainingElementIterator


Detailed Description

template<unsigned SPACE_DIM>
class Node< SPACE_DIM >

A node in a finite element mesh.

Definition at line 44 of file Node.hpp.


Constructor & Destructor Documentation

template<unsigned SPACE_DIM>
Node< SPACE_DIM >::Node ( unsigned  index,
ChastePoint< SPACE_DIM >  point,
bool  isBoundaryNode = false 
) [inline]

There are many ways of creating a node, depending on how you wish to specify it's spatial location.

Definition at line 46 of file Node.cpp.

References Node< SPACE_DIM >::CommonConstructor().


Member Function Documentation

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::CommonConstructor ( unsigned  index,
bool  isBoundaryNode 
) [inline, private]

Extraction of commonality between the constructors

Definition at line 37 of file Node.cpp.

Referenced by Node< SPACE_DIM >::Node().

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::SetPoint ( ChastePoint< SPACE_DIM >  point  )  [inline]

Note: setting the point in space is dangerous. Jacobian and JacobianDeterminant of element need to be updated.

Definition at line 89 of file Node.cpp.

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::SetIndex ( unsigned  index  )  [inline]

This method should only be called during mesh generation.

Definition at line 95 of file Node.cpp.

Referenced by NodeBasedTissue< DIM >::AddNode().

template<unsigned SPACE_DIM>
const c_vector< double, SPACE_DIM > & Node< SPACE_DIM >::rGetLocation ( void   )  const [inline]

template<unsigned SPACE_DIM>
c_vector< double, SPACE_DIM > & Node< SPACE_DIM >::rGetModifiableLocation (  )  [inline]

If you modify the returned location, Jacobian and JacobianDeterminant of elements need to be updated.

Don't forget to assign the result of this call to a reference!

Definition at line 121 of file Node.cpp.

Referenced by CryptSimulation2d::ApplyTissueBoundaryConditions().

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::AddElement ( unsigned  index  )  [inline]

Add an element that contains this node.

Parameters:
index of the element to add.

Definition at line 146 of file Node.cpp.

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::RemoveElement ( unsigned  index  )  [inline]

Remove an element that contains this node.

Parameters:
index of the element to be removed.

Definition at line 152 of file Node.cpp.

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::RemoveBoundaryElement ( unsigned  index  )  [inline]

Remove an boundary element that contains this node.

Parameters:
index of the boundary element to be removed.

Definition at line 162 of file Node.cpp.

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::AddBoundaryElement ( unsigned  index  )  [inline]

Add an boundary element that contains this node.

Parameters:
index of the element to add.

Definition at line 172 of file Node.cpp.

template<unsigned SPACE_DIM>
std::set< unsigned > & Node< SPACE_DIM >::rGetContainingElementIndices (  )  [inline]

Return a set of indices of elements containing this node as a vertex.

Definition at line 178 of file Node.cpp.

Referenced by MeshBasedTissue< DIM >::Update().

template<unsigned SPACE_DIM>
std::set< unsigned > & Node< SPACE_DIM >::rGetContainingBoundaryElementIndices (  )  [inline]

Return a set of indices of boundary elements containing this node as a vertex.

Definition at line 184 of file Node.cpp.

template<unsigned SPACE_DIM>
void Node< SPACE_DIM >::MarkAsDeleted (  )  [inline]

Mark a node as having been removed from the mesh

Definition at line 206 of file Node.cpp.

template<unsigned SPACE_DIM>
template<unsigned ELEMENT_DIM>
bool Node< SPACE_DIM >::IsFlagged ( TetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &  rMesh  )  [inline]

Determine if a node lives within a flagged element.

Definition at line 163 of file Node.hpp.


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

Generated on Wed Mar 18 12:52:45 2009 for Chaste by  doxygen 1.5.5