Chaste Release::3.1
AbstractElement< ELEMENT_DIM, SPACE_DIM > Class Template Reference

#include <AbstractElement.hpp>

Inheritance diagram for AbstractElement< ELEMENT_DIM, SPACE_DIM >:
Collaboration diagram for AbstractElement< ELEMENT_DIM, SPACE_DIM >:

List of all members.

Public Member Functions

 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 Flag ()
void Unflag ()
bool IsFlagged () const
void SetAttribute (double attribute)
double GetAttribute ()
unsigned GetUnsignedAttribute ()

Protected Attributes

std::vector< Node< SPACE_DIM > * > mNodes
unsigned mIndex
double mAttribute
bool mIsDeleted
bool mOwnership
bool mFlag

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class AbstractElement< ELEMENT_DIM, SPACE_DIM >

An abstract element class for use in finite element meshes.

Definition at line 54 of file AbstractElement.hpp.


Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractElement< ELEMENT_DIM, SPACE_DIM >::AbstractElement ( 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

Definition at line 47 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
AbstractElement< ELEMENT_DIM, SPACE_DIM >::AbstractElement ( unsigned  index = INDEX_IS_NOT_USED)

Default constructor, which doesn't add any nodes: they must be added later.

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

Definition at line 62 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual AbstractElement< ELEMENT_DIM, SPACE_DIM >::~AbstractElement ( ) [inline, virtual]

Virtual destructor, since this class has virtual methods. Does nothing special.

Definition at line 100 of file AbstractElement.hpp.


Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::AddNode ( Node< SPACE_DIM > *  pNode)

Add a node to this element.

Parameters:
pNodepointer to the new node

Definition at line 126 of file AbstractElement.cpp.

Referenced by QuadraticMeshHelper< DIM >::AddNodeToBoundaryElement().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::Flag ( )

Mark the element as flagged.

Definition at line 162 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetIndex ( ) const

Get the index of this element

Definition at line 138 of file AbstractElement.cpp.

Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::AddElement(), SemMesh< DIM >::AddElement(), PottsMesh< DIM >::AddElement(), NagaiHondaForce< DIM >::AddForceContribution(), ContinuumMechanicsNeumannBcsAssembler< DIM >::AssembleOnBoundaryElement(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElementForPressureOnDeformedBc(), AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnElement(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleOnElement(), CompressibleNonlinearElasticitySolver< DIM >::AssembleOnElement(), AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::AssembleOnElement(), AbstractFeSurfaceIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AssembleOnSurfaceElement(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::CheckIsVoronoi(), ElectrodesStimulusFactory< DIM >::ComputeElectrodeTotalFlux(), AveragedSourcePde< DIM >::ComputeLinearInUCoeffInSourceTerm(), MonodomainStiffnessMatrixAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), ExtendedBidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), BidomainAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteBoundaryNodeAt(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongGivenAxis(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongShortAxis(), AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::DoAssemble(), AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::ElementAssemblyCriterion(), AbstractNonlinearElasticitySolver< DIM >::GetElementCentroidDeformationGradient(), AbstractCardiacMechanicsSolver< ELASTICITY_SOLVER, DIM >::Initialise(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformIntersectionSwap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), PottsMesh< DIM >::PottsMesh(), Cylindrical2dMesh::ReconstructCylindricalMesh(), SemMesh< DIM >::ReMesh(), SemMesh< DIM >::SemMesh(), and VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
Node< SPACE_DIM > * AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNode ( unsigned  localIndex) const

Get the node with a given local index in this element.

Parameters:
localIndexlocal index of the node in this element
Returns:
a pointer to the node.

Definition at line 113 of file AbstractElement.cpp.

Referenced by VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), NagaiHondaForce< DIM >::AddForceContribution(), BoundaryConditionsContainer< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AddNeumannBoundaryCondition(), QuadraticMeshHelper< DIM >::AddNodeToBoundaryElement(), BidomainProblem< DIM >::AnalyseMeshForBath(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElementForPressureOnDeformedBc(), AbstractFeCableIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnCableElement(), AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnElement(), AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::AssembleOnElement(), AbstractFeSurfaceIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AssembleOnSurfaceElement(), AbstractFunctionalCalculator< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CalculateOnElement(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::CheckIsVoronoi(), MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteBoundaryNodeAt(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElement(), PottsMesh< DIM >::DivideElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongGivenAxis(), CellBasedPdeHandler< DIM >::FindCoarseElementContainingCell(), StreeterFibreGenerator< SPACE_DIM >::GenerateOrthotropicFibreOrientation(), StreeterFibreGenerator< SPACE_DIM >::GetAveragedThicknessLocalNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringElementIndices(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeB(), PottsMesh< DIM >::GetSurfaceAreaOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetUnitNormalToFace(), MutableElement< 1, SPACE_DIM >::IsElementOnBoundary(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), PottsMesh< DIM >::PottsMesh(), SemMesh< DIM >::ReMesh(), Cylindrical2dMesh::ReMesh(), SemMesh< DIM >::SemMesh(), FineCoarseMeshPair< DIM >::SetUpBoxes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::VertexElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), and DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::WorkOnLocalQueue().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex ( unsigned  localIndex) const

Given the local index of a node owned by this element, return the global index of the node in the mesh.

Parameters:
localIndexthe node's local index in this element
Returns:
the global index

Definition at line 106 of file AbstractElement.cpp.

Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), QuadraticMeshHelper< DIM >::AddExtraBoundaryNodes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), QuadraticMeshHelper< DIM >::AddNodesToBoundaryElements(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElementForPressureOnDeformedBc(), AbstractFeCableIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnCableElement(), AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnElement(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleOnElement(), CompressibleNonlinearElasticitySolver< DIM >::AssembleOnElement(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleSystem(), CompressibleNonlinearElasticitySolver< DIM >::AssembleSystem(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMaximumNodeConnectivityPerProcess(), AbstractFunctionalCalculator< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CalculateOnElement(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::CheckIsVoronoi(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CheckOutwardNormals(), AbstractCardiacMechanicsSolver< ELASTICITY_SOLVER, DIM >::ComputeDeformationGradientAndStretchInEachElement(), MonodomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::ComputeVectorTerm(), BidomainCorrectionTermAssembler< ELEM_DIM, SPACE_DIM >::ComputeVectorTerm(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMesh(), Cylindrical2dMesh::CorrectNonPeriodicMesh(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteNode(), AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::DoAssemble(), AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::ElementAssemblyCriterion(), AbstractNonlinearElasticitySolver< DIM >::GetElementCentroidDeformationGradient(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringNodeIndices(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringNodeNotAlsoInElement(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextCableElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNextEdgeGradientOfElementAtNode(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElement(), MutableElement< 1, SPACE_DIM >::GetNodeLocalIndex(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetPreviousEdgeGradientOfElementAtNode(), AbstractTetrahedralElement< 0, SPACE_DIM >::GetStiffnessMatrixGlobalIndices(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetSurfaceAreaOfElement(), QuadraticMeshHelper< DIM >::HelperMethod1(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::IdentifySwapType(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformIntersectionSwap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT3Swap(), QuadraturePointsGroup< DIM >::QuadraturePointsGroup(), Cylindrical2dMesh::ReconstructCylindricalMesh(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships(), CellwiseDataGradient< DIM >::SetupGradients(), CardiacElectroMechanicsProblem< DIM, ELEC_PROB_DIM >::Solve(), CellBasedPdeHandler< DIM >::SolvePdeAndWriteResultsToFile(), Cylindrical2dMesh::UseTheseElementsToDecideMeshing(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), VertexBasedCellPopulation< DIM >::WriteResultsToFiles(), and PottsBasedCellPopulation< DIM >::WriteResultsToFiles().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
c_vector< double, SPACE_DIM > AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation ( unsigned  localIndex) const

Get the location in space of one of the nodes in this element.

Parameters:
localIndexthe index of the node to query, in [0,N) where N is the number of nodes in this element.

Definition at line 99 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes ( ) const

Get the number of nodes owned by this element.

Definition at line 120 of file AbstractElement.cpp.

Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), NagaiHondaForce< DIM >::AddForceContribution(), BidomainProblem< DIM >::AnalyseMeshForBath(), AbstractNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElementForPressureOnDeformedBc(), AbstractFeCableIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnCableElement(), AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnElement(), AbstractFeSurfaceIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AssembleOnSurfaceElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMomentsOfElement(), AbstractFunctionalCalculator< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CalculateOnElement(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::CheckIsVoronoi(), ElectrodesStimulusFactory< DIM >::ComputeElectrodeTotalFlux(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMesh(), MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteBoundaryNodeAt(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElement(), PottsMesh< DIM >::DivideElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongGivenAxis(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::ElementIncludesPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetAreaGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetAreaOfFace(), StreeterFibreGenerator< SPACE_DIM >::GetAveragedThicknessLocalNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetCentroidOfElement(), PottsMesh< DIM >::GetCentroidOfElement(), Cylindrical2dVertexMesh::GetCentroidOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetLocalIndexForElementEdgeClosestToPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringElementIndices(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringNodeIndices(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringNodeNotAlsoInElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNextEdgeGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetPreviousEdgeGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetSurfaceAreaOfElement(), PottsMesh< DIM >::GetSurfaceAreaOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetVolumeOfElement(), PottsMesh< DIM >::GetVolumeOfElement(), Cylindrical2dVertexMesh::GetVolumeOfElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::IdentifySwapType(), MutableElement< 1, SPACE_DIM >::MarkAsDeleted(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformIntersectionSwap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT3Swap(), PottsMesh< DIM >::PottsMesh(), SemMesh< DIM >::ReMesh(), MutableElement< 1, SPACE_DIM >::ResetIndex(), SemMesh< DIM >::SemMesh(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships(), CardiacElectroMechanicsProblem< DIM, ELEC_PROB_DIM >::Solve(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::WorkOnLocalQueue(), VertexBasedCellPopulation< DIM >::WriteResultsToFiles(), and PottsBasedCellPopulation< DIM >::WriteResultsToFiles().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetUnsignedAttribute ( )
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsDeleted ( ) const
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsFlagged ( ) const

Get whether the element is flagged.

Definition at line 174 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual void AbstractElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted ( ) [pure virtual]

Mark the element as having been removed from the mesh. Also notify nodes in the element that it has been removed.

Implemented in BoundaryElement< ELEMENT_DIM, SPACE_DIM >, Element< ELEMENT_DIM, SPACE_DIM >, MutableElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< 1, SPACE_DIM >, and MutableElement< DIM, DIM >.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual void AbstractElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes ( ) [pure virtual]
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode ( Node< SPACE_DIM > *  pOldNode,
Node< SPACE_DIM > *  pNewNode 
)

Replace one of the nodes in this element with another.

Parameters:
pOldNodepointer to the current node
pNewNodepointer to the replacement node

Definition at line 71 of file AbstractElement.cpp.

References EXCEPTION.

Referenced by Cylindrical2dMesh::ReconstructCylindricalMesh().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetAttribute ( double  attribute)
template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetIndex ( unsigned  index)

Set the index of this element in the mesh.

Parameters:
indexthe new index

Definition at line 144 of file AbstractElement.cpp.

Referenced by SemMesh< DIM >::AddElement(), and MutableMesh< ELEMENT_DIM, SPACE_DIM >::ReIndex().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetOwnership ( bool  ownership)

Set whether the current process owns this element.

Parameters:
ownershipwhether the current process now owns this element

Definition at line 156 of file AbstractElement.cpp.

Referenced by AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::Unflag ( )

Mark the element as not flagged.

Definition at line 168 of file AbstractElement.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
virtual void AbstractElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode ( const unsigned rIndex,
Node< SPACE_DIM > *  pNode 
) [pure virtual]

Update node at the given index.

Parameters:
rIndexis an local index to which node to change
pNodeis a pointer to the replacement node

Implemented in BoundaryElement< ELEMENT_DIM, SPACE_DIM >, Element< ELEMENT_DIM, SPACE_DIM >, MutableElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< 1, SPACE_DIM >, and MutableElement< DIM, DIM >.


Member Data Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::mAttribute [protected]

An attribute (a value associated with the element)

Definition at line 65 of file AbstractElement.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag [protected]

A flag for the use of higher level algorithms.

Definition at line 77 of file AbstractElement.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIsDeleted [protected]

Whether this element has been deleted, and hence whether its location in the mesh can be re-used.

Definition at line 71 of file AbstractElement.hpp.

Referenced by MutableElement< 1, SPACE_DIM >::MarkAsDeleted().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mOwnership [protected]

Whether the current process owns this element.

Definition at line 74 of file AbstractElement.hpp.


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