#include <AbstractElement.hpp>
Inherited by AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >, and VertexElement< ELEMENT_DIM, SPACE_DIM >.
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 | SetRegion (double region) |
double | GetRegion () |
Protected Attributes | |
std::vector< Node< SPACE_DIM > * > | mNodes |
unsigned | mIndex |
double | mRegion |
bool | mIsDeleted |
bool | mOwnership |
bool | mFlag |
An abstract element class for use in finite element meshes.
Definition at line 47 of file AbstractElement.hpp.
AbstractElement< ELEMENT_DIM, SPACE_DIM >::AbstractElement | ( | unsigned | index, | |
const std::vector< Node< SPACE_DIM > * > & | rNodes | |||
) | [inline] |
Constructor which takes in a vector of nodes.
index | the index of the element in the mesh | |
rNodes | the nodes owned by the element |
Definition at line 40 of file AbstractElement.cpp.
AbstractElement< ELEMENT_DIM, SPACE_DIM >::AbstractElement | ( | unsigned | index = INDEX_IS_NOT_USED |
) | [inline] |
Default constructor, which doesn't add any nodes: they must be added later.
index | the index of the element in the mesh (defaults to INDEX_IS_NOT_USED) |
Definition at line 55 of file AbstractElement.cpp.
virtual AbstractElement< ELEMENT_DIM, SPACE_DIM >::~AbstractElement | ( | ) | [inline, virtual] |
Virtual destructor, since this class has virtual methods. Does nothing special.
Definition at line 93 of file AbstractElement.hpp.
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::AddNode | ( | Node< SPACE_DIM > * | pNode | ) | [inline] |
Add a node to this element.
pNode | pointer to the new node |
Definition at line 119 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by QuadraticMesh< DIM >::AddNodeToBoundaryElement(), and DeformedBoundaryElement< ELEM_DIM, SPACE_DIM >::DeformedBoundaryElement().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::Flag | ( | ) | [inline] |
Mark the element as flagged.
Definition at line 155 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag.
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetIndex | ( | ) | const [inline] |
Get the index of this element
Definition at line 131 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIndex.
Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::AddElement(), NagaiHondaForce< DIM >::AddForceContribution(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), CompressibleNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), 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(), AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::ElementAssemblyCriterion(), AbstractNonlinearElasticitySolver< DIM >::GetElementCentroidDeformationGradient(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformIntersectionSwap(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), DeltaNotchOffLatticeSimulation< DIM >::PostSolve(), Cylindrical2dMesh::ReconstructCylindricalMesh(), and VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh().
Node< SPACE_DIM > * AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNode | ( | unsigned | localIndex | ) | const [inline] |
Get the node with a given local index in this element.
localIndex | local index of the node in this element |
Definition at line 106 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), NagaiHondaForce< DIM >::AddForceContribution(), BoundaryConditionsContainer< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AddNeumannBoundaryCondition(), QuadraticMesh< DIM >::AddNodeToBoundaryElement(), BidomainProblem< DIM >::AnalyseMeshForBath(), DeformedBoundaryElement< ELEM_DIM, SPACE_DIM >::ApplyUndeformedElementAndDisplacement(), 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(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteBoundaryNodeAt(), MutableVertexMesh< ELEMENT_DIM, SPACE_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(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetUnitNormalToFace(), VertexElement< 1, SPACE_DIM >::IsElementOnBoundary(), VertexElement< ELEMENT_DIM, SPACE_DIM >::IsElementOnBoundary(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), DeltaNotchOffLatticeSimulation< DIM >::PostSolve(), Cylindrical2dMesh::ReMesh(), FineCoarseMeshPair< DIM >::SetUpBoxes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::VertexElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), and DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::WorkOnLocalQueue().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex | ( | unsigned | localIndex | ) | const [inline] |
Given the local index of a node owned by this element, return the global index of the node in the mesh.
localIndex | the node's local index in this element |
Definition at line 99 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), QuadraticMesh< DIM >::AddExtraBoundaryNodes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), QuadraticMesh< DIM >::AddNodesToBoundaryElements(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), CompressibleNonlinearElasticitySolver< DIM >::AssembleOnBoundaryElement(), 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< 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(), VertexElement< 1, SPACE_DIM >::GetNodeLocalIndex(), VertexElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocalIndex(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetPreviousEdgeGradientOfElementAtNode(), AbstractTetrahedralElement< 0, SPACE_DIM >::GetStiffnessMatrixGlobalIndices(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::GetStiffnessMatrixGlobalIndices(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetSurfaceAreaOfElement(), QuadraticMesh< 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 >::Solve(), CellBasedPdeHandler< DIM >::SolvePdeAndWriteResultsToFile(), Cylindrical2dMesh::UseTheseElementsToDecideMeshing(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), and VertexBasedCellPopulation< DIM >::WriteResultsToFiles().
c_vector< double, SPACE_DIM > AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation | ( | unsigned | localIndex | ) | const [inline] |
Get the location in space of one of the nodes in this element.
localIndex | the index of the node to query, in [0,N) where N is the number of nodes in this element. |
Definition at line 92 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation | ( | unsigned | localIndex, | |
unsigned | dimension | |||
) | const [inline] |
Get a single component of the location in space of one of the nodes in this element.
localIndex | the index of the node to query, in [0,N) where N is the number of nodes in this element. | |
dimension | the spatial dimension to query. |
Definition at line 79 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by Element< ELEMENT_DIM, SPACE_DIM >::CalculateCircumsphere(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMomentsOfElement(), Element< ELEMENT_DIM, SPACE_DIM >::CalculateXi(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongGivenAxis(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::ElementIncludesPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetAreaGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetAreaOfFace(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetCentroidOfElement(), Cylindrical2dVertexMesh::GetCentroidOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetLocalIndexForElementEdgeClosestToPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNextEdgeGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetPreviousEdgeGradientOfElementAtNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetVolumeOfElement(), Cylindrical2dVertexMesh::GetVolumeOfElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT3Swap(), and AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::RefreshJacobian().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes | ( | ) | const [inline] |
Get the number of nodes owned by this element.
Definition at line 113 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), NagaiHondaForce< DIM >::AddForceContribution(), BidomainProblem< DIM >::AnalyseMeshForBath(), 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(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::DeleteBoundaryNodeAt(), MutableVertexMesh< ELEMENT_DIM, SPACE_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(), Cylindrical2dVertexMesh::GetCentroidOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetLocalIndexForElementEdgeClosestToPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringElementIndices(), MeshBasedCellPopulation< 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(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetVolumeOfElement(), Cylindrical2dVertexMesh::GetVolumeOfElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::IdentifySwapType(), VertexElement< 1, SPACE_DIM >::MarkAsDeleted(), VertexElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, 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(), DeltaNotchOffLatticeSimulation< DIM >::PostSolve(), VertexElement< 1, SPACE_DIM >::ResetIndex(), VertexElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), Element< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships(), CardiacElectroMechanicsProblem< DIM >::Solve(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::WorkOnLocalQueue(), and VertexBasedCellPopulation< DIM >::WriteResultsToFiles().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetOwnership | ( | ) | const [inline] |
Get whether the current process owns this element.
Definition at line 143 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mOwnership.
Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), IncompressibleNonlinearElasticitySolver< DIM >::AssembleSystem(), CompressibleNonlinearElasticitySolver< DIM >::AssembleSystem(), AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::DoAssemble(), AbstractFeCableIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::DoAssemble(), and AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::DoAssemble().
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetRegion | ( | ) | [inline] |
Get the element's region ID.
Definition at line 179 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mRegion.
Referenced by BidomainProblem< DIM >::AnalyseMeshForBath(), ExtendedBidomainMassMatrixAssembler< DIM >::ComputeMatrixTerm(), BidomainWithBathAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), BidomainMassMatrixAssembler< DIM >::ComputeMatrixTerm(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextCableElement(), and AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElement().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsDeleted | ( | ) | const [inline] |
Get whether the element is marked as deleted.
Definition at line 125 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIsDeleted.
Referenced by AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMesh(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextCableElement(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElement(), Cylindrical2dMesh::ReconstructCylindricalMesh(), and Cylindrical2dMesh::ReMesh().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsFlagged | ( | ) | const [inline] |
Get whether the element is flagged.
Definition at line 167 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag.
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 >, VertexElement< ELEMENT_DIM, SPACE_DIM >, VertexElement< 1, SPACE_DIM >, PottsElement< DIM >, and BoundaryElement< ELEM_DIM, SPACE_DIM >.
virtual void AbstractElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes | ( | ) | [pure virtual] |
Inform all nodes forming this element that they are in this element.
Implemented in BoundaryElement< ELEMENT_DIM, SPACE_DIM >, Element< ELEMENT_DIM, SPACE_DIM >, VertexElement< ELEMENT_DIM, SPACE_DIM >, VertexElement< 1, SPACE_DIM >, PottsElement< DIM >, and BoundaryElement< ELEM_DIM, SPACE_DIM >.
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode | ( | Node< SPACE_DIM > * | pOldNode, | |
Node< SPACE_DIM > * | pNewNode | |||
) | [inline] |
Replace one of the nodes in this element with another.
pOldNode | pointer to the current node | |
pNewNode | pointer to the replacement node |
Definition at line 64 of file AbstractElement.cpp.
References EXCEPTION, AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes, and AbstractElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode().
Referenced by Cylindrical2dMesh::ReconstructCylindricalMesh().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetIndex | ( | unsigned | index | ) | [inline] |
Set the index of this element in the mesh.
index | the new index |
Definition at line 137 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIndex.
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetOwnership | ( | bool | ownership | ) | [inline] |
Set whether the current process owns this element.
ownership | whether the current process now owns this element |
Definition at line 149 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mOwnership.
Referenced by AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetRegion | ( | double | region | ) | [inline] |
Set the element's region ID.
region | the element's new region ID |
Definition at line 173 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mRegion.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), and DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::Unflag | ( | ) | [inline] |
Mark the element as not flagged.
Definition at line 161 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag.
virtual void AbstractElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode | ( | const unsigned & | rIndex, | |
Node< SPACE_DIM > * | pNode | |||
) | [pure virtual] |
Update node at the given index.
rIndex | is an local index to which node to change | |
pNode | is a pointer to the replacement node |
Implemented in BoundaryElement< ELEMENT_DIM, SPACE_DIM >, Element< ELEMENT_DIM, SPACE_DIM >, VertexElement< ELEMENT_DIM, SPACE_DIM >, VertexElement< 1, SPACE_DIM >, and BoundaryElement< ELEM_DIM, SPACE_DIM >.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag [protected] |
A flag for the use of higher level algorithms.
Definition at line 70 of file AbstractElement.hpp.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::Flag(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsFlagged(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::Unflag().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIndex [protected] |
The index of this element within the mesh
Definition at line 55 of file AbstractElement.hpp.
Referenced by VertexElement< 1, SPACE_DIM >::AddNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::CalculateJacobian(), VertexElement< 1, SPACE_DIM >::DeleteNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::DeleteNode(), Element< ELEMENT_DIM, SPACE_DIM >::Element(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetIndex(), VertexElement< 1, SPACE_DIM >::MarkAsDeleted(), VertexElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), VertexElement< 1, SPACE_DIM >::RegisterWithNodes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), Element< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), VertexElement< 1, SPACE_DIM >::ResetIndex(), VertexElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), Element< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetIndex(), VertexElement< 1, SPACE_DIM >::UpdateNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), Element< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), and BoundaryElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode().
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 64 of file AbstractElement.hpp.
Referenced by AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::GetVolume(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsDeleted(), VertexElement< 1, SPACE_DIM >::MarkAsDeleted(), VertexElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), and AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::RefreshJacobian().
std::vector<Node<SPACE_DIM>*> AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes [protected] |
The nodes forming this element.
Definition at line 52 of file AbstractElement.hpp.
Referenced by AbstractTetrahedralElement< 0, SPACE_DIM >::AbstractTetrahedralElement(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::AbstractTetrahedralElement(), VertexElement< 1, SPACE_DIM >::AddNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::BoundaryElement(), AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateCentroid(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::CalculateCentroid(), VertexElement< 1, SPACE_DIM >::DeleteNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::DeleteNode(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNode(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex(), VertexElement< 1, SPACE_DIM >::GetNodeLocalIndex(), VertexElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocalIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), VertexElement< 1, SPACE_DIM >::IsElementOnBoundary(), VertexElement< ELEMENT_DIM, SPACE_DIM >::IsElementOnBoundary(), VertexElement< 1, SPACE_DIM >::MarkAsDeleted(), VertexElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), VertexElement< 1, SPACE_DIM >::RegisterWithNodes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), Element< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode(), VertexElement< 1, SPACE_DIM >::ResetIndex(), VertexElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), Element< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), VertexElement< 1, SPACE_DIM >::UpdateNode(), VertexElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), Element< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), VertexElement< 1, SPACE_DIM >::VertexElement(), VertexElement< ELEMENT_DIM, SPACE_DIM >::VertexElement(), and DeformedBoundaryElement< ELEM_DIM, SPACE_DIM >::~DeformedBoundaryElement().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mOwnership [protected] |
Whether the current process owns this element.
Definition at line 67 of file AbstractElement.hpp.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetOwnership(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetOwnership().
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::mRegion [protected] |
A region ID.
Definition at line 58 of file AbstractElement.hpp.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetRegion(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetRegion().