#include <AbstractElement.hpp>
Inherited by AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< ELEMENT_DIM, SPACE_DIM >, and MutableElement< DIM, 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 | 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 |
An abstract element class for use in finite element meshes.
Definition at line 54 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 48 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 63 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 100 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 127 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by QuadraticMeshHelper< DIM >::AddNodeToBoundaryElement().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::Flag | ( | ) | [inline] |
Mark the element as flagged.
Definition at line 163 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mFlag.
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetAttribute | ( | ) | [inline] |
Definition at line 187 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mAttribute.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunction(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextCableElement(), AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElement(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetUnsignedAttribute().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetIndex | ( | ) | const [inline] |
Definition at line 139 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(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::AddElement(), PottsMesh< DIM >::AddElement(), NagaiHondaForce< DIM >::AddForceContribution(), FarhadifarForce< 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 >::GetElementCentroidStrain(), 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(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), StreeterFibreGenerator< SPACE_DIM >::Visit(), and StressPerElementWriter< DIM >::Visit().
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 114 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by VertexElement< ELEMENT_DIM, SPACE_DIM >::AddFace(), NagaiHondaForce< DIM >::AddForceContribution(), FarhadifarForce< 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(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::CalculateUnitNormalToFaceWithArea(), 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 >::GetAveragedThicknessLocalNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringElementIndices(), PottsMesh< DIM >::GetNeighbouringElementIndices(), PottsMesh< DIM >::GetSurfaceAreaOfElement(), MutableElement< 1, SPACE_DIM >::IsElementOnBoundary(), MutableElement< ELEMENT_DIM, SPACE_DIM >::IsElementOnBoundary(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::MutableVertexMesh(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), PottsMesh< DIM >::PottsMesh(), Cylindrical2dMesh::ReMesh(), FineCoarseMeshPair< DIM >::SetUpBoxes(), VertexElement< ELEMENT_DIM, SPACE_DIM >::VertexElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), StreeterFibreGenerator< SPACE_DIM >::Visit(), 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 107 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
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(), CellBasedPdeHandler< DIM >::ConstructBoundaryConditionsContainer(), 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 >::GetElementCentroidStrain(), 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(), MutableElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocalIndex(), CellBasedPdeHandler< DIM >::GetPdeSolutionAtPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetPreviousEdgeGradientOfElementAtNode(), AbstractTetrahedralElement< 0, SPACE_DIM >::GetStiffnessMatrixGlobalIndices(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::GetStiffnessMatrixGlobalIndices(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetSurfaceAreaOfElement(), VertexBasedCellPopulation< DIM >::GetTetrahedralMeshUsingVertexMesh(), 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(), Cylindrical2dMesh::ReconstructCylindricalMesh(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships(), CellwiseDataGradient< DIM >::SetupGradients(), CardiacElectroMechanicsProblem< DIM, ELEC_PROB_DIM >::Solve(), CellBasedPdeHandler< DIM >::SolvePdeAndWriteResultsToFile(), MutableMesh< ELEMENT_DIM, SPACE_DIM >::SplitEdge(), Cylindrical2dMesh::UseTheseElementsToDecideMeshing(), CellPopulationElementWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), and VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh().
c_vector< double, SPACE_DIM > AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation | ( | unsigned | localIndex | ) | const [inline] |
localIndex | the index of the node to query, in [0,N) where N is the number of nodes in this element. |
Definition at line 100 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation | ( | unsigned | localIndex, | |
unsigned | dimension | |||
) | const [inline] |
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 87 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.
Referenced by Element< ELEMENT_DIM, SPACE_DIM >::CalculateCircumsphere(), Element< ELEMENT_DIM, SPACE_DIM >::CalculateMinMaxEdgeLengths(), 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 >::GetCentroidOfElement(), PottsMesh< DIM >::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(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT3Swap(), and AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::RefreshJacobian().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes | ( | ) | const [inline] |
Definition at line 121 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(), FarhadifarForce< 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(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::CalculateUnitNormalToFaceWithArea(), 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 >::DivideEdge(), 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(), PottsElement< DIM >::GetAspectRatio(), StreeterFibreGenerator< SPACE_DIM >::GetAveragedThicknessLocalNode(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetCentroidOfElement(), PottsMesh< DIM >::GetCentroidOfElement(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetLocalIndexForElementEdgeClosestToPoint(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetNeighbouringElementIndices(), PottsMesh< 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(), VertexBasedCellPopulation< DIM >::GetTetrahedralMeshUsingVertexMesh(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetVolumeOfElement(), PottsMesh< DIM >::GetVolumeOfElement(), MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::IdentifySwapType(), MutableElement< 1, SPACE_DIM >::MarkAsDeleted(), MutableElement< 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(), PottsMesh< DIM >::PottsMesh(), MutableElement< 1, SPACE_DIM >::ResetIndex(), MutableElement< 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, ELEC_PROB_DIM >::Solve(), VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh(), CellPopulationElementWriter< ELEMENT_DIM, SPACE_DIM >::Visit(), VoltageInterpolaterOntoMechanicsMesh< DIM >::VoltageInterpolaterOntoMechanicsMesh(), and DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::WorkOnLocalQueue().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetOwnership | ( | ) | const [inline] |
Definition at line 151 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(), AbstractContinuumMechanicsAssembler< DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX >::DoAssemble(), and AbstractCardiacMechanicsSolver< ELASTICITY_SOLVER, DIM >::Initialise().
unsigned AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetUnsignedAttribute | ( | ) | [inline] |
This method converts the attribute (stored as a double) to an unsigned, and throws an exception if this is not sensible.
Definition at line 193 of file AbstractElement.cpp.
References EXCEPTION, AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetAttribute(), and CompareDoubles::WithinAnyTolerance().
Referenced by AbstractCorrectionTermAssembler< ELEM_DIM, SPACE_DIM, PROBLEM_DIM >::AbstractCorrectionTermAssembler(), BidomainProblem< DIM >::AnalyseMeshForBath(), ExtendedBidomainMassMatrixAssembler< DIM >::ComputeMatrixTerm(), BidomainWithBathAssembler< ELEMENT_DIM, SPACE_DIM >::ComputeMatrixTerm(), BidomainMassMatrixAssembler< DIM >::ComputeMatrixTerm(), and PseudoEcgCalculator< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::ShouldSkipThisElement().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsDeleted | ( | ) | const [inline] |
Get whether the element is marked as deleted.
Definition at line 133 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] |
Definition at line 175 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 >, MutableElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< 1, SPACE_DIM >, and MutableElement< DIM, 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 >, MutableElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< 1, SPACE_DIM >, and MutableElement< DIM, 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 72 of file AbstractElement.cpp.
References EXCEPTION, AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes, and AbstractElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode().
Referenced by MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT2Swap(), Cylindrical2dMesh::ReconstructCylindricalMesh(), and MutableMesh< ELEMENT_DIM, SPACE_DIM >::SplitEdge().
void AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetAttribute | ( | double | attribute | ) | [inline] |
Set an attribute (a value associated with the element)
attribute | the value of an attribute |
Definition at line 181 of file AbstractElement.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::mAttribute.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), and PottsMesh< DIM >::ConstructFromMeshReader().
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 145 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 157 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 >::Unflag | ( | ) | [inline] |
Mark the element as not flagged.
Definition at line 169 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 >, MutableElement< ELEMENT_DIM, SPACE_DIM >, MutableElement< 1, SPACE_DIM >, and MutableElement< DIM, DIM >.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode().
double AbstractElement< ELEMENT_DIM, SPACE_DIM >::mAttribute [protected] |
An attribute (a value associated with the element)
Definition at line 65 of file AbstractElement.hpp.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetAttribute(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetAttribute().
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.
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 62 of file AbstractElement.hpp.
Referenced by MutableElement< 1, SPACE_DIM >::AddNode(), MutableElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), PottsElement< DIM >::AddNode(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::CalculateJacobian(), MutableElement< 1, SPACE_DIM >::DeleteNode(), MutableElement< ELEMENT_DIM, SPACE_DIM >::DeleteNode(), Element< ELEMENT_DIM, SPACE_DIM >::Element(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetIndex(), MutableElement< 1, SPACE_DIM >::MarkAsDeleted(), MutableElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), MutableElement< 1, SPACE_DIM >::RegisterWithNodes(), MutableElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), Element< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), MutableElement< 1, SPACE_DIM >::ResetIndex(), MutableElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), Element< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetIndex(), MutableElement< 1, SPACE_DIM >::UpdateNode(), MutableElement< 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 71 of file AbstractElement.hpp.
Referenced by AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::GetVolume(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::IsDeleted(), MutableElement< 1, SPACE_DIM >::MarkAsDeleted(), MutableElement< 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 59 of file AbstractElement.hpp.
Referenced by AbstractTetrahedralElement< 0, SPACE_DIM >::AbstractTetrahedralElement(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::AbstractTetrahedralElement(), MutableElement< 1, SPACE_DIM >::AddNode(), MutableElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::AddNode(), PottsElement< DIM >::AddNode(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::BoundaryElement(), AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateCentroid(), AbstractTetrahedralElement< ELEMENT_DIM, SPACE_DIM >::CalculateCentroid(), MutableElement< 1, SPACE_DIM >::DeleteNode(), MutableElement< ELEMENT_DIM, SPACE_DIM >::DeleteNode(), PottsElement< DIM >::GetAspectRatio(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNode(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex(), MutableElement< 1, SPACE_DIM >::GetNodeLocalIndex(), MutableElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocalIndex(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeLocation(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), MutableElement< 1, SPACE_DIM >::IsElementOnBoundary(), MutableElement< ELEMENT_DIM, SPACE_DIM >::IsElementOnBoundary(), MutableElement< 1, SPACE_DIM >::MarkAsDeleted(), MutableElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), Element< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::MarkAsDeleted(), MutableElement< 1, SPACE_DIM >::MutableElement(), MutableElement< 1, SPACE_DIM >::RegisterWithNodes(), MutableElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), Element< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::RegisterWithNodes(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::ReplaceNode(), MutableElement< 1, SPACE_DIM >::ResetIndex(), MutableElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), Element< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::ResetIndex(), MutableElement< 1, SPACE_DIM >::UpdateNode(), MutableElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), Element< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), BoundaryElement< ELEMENT_DIM, SPACE_DIM >::UpdateNode(), and VertexElement< ELEMENT_DIM, SPACE_DIM >::VertexElement().
bool AbstractElement< ELEMENT_DIM, SPACE_DIM >::mOwnership [protected] |
Whether the current process owns this element.
Definition at line 74 of file AbstractElement.hpp.
Referenced by AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetOwnership(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetOwnership().