#include <AbstractPurkinjeCellFactory.hpp>
Inherits AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >.
Public Member Functions | |
void | SetMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh) |
AbstractCardiacCell * | CreatePurkinjeCellForNode (unsigned nodeIndex) |
virtual void | FinalisePurkinjeCellCreation (std::vector< AbstractCardiacCell * > *pPurkinjeCellsDistributed, unsigned lo, unsigned hi) |
MixedDimensionMesh < ELEMENT_DIM, SPACE_DIM > * | GetMixedDimensionMesh () |
Protected Member Functions | |
virtual AbstractCardiacCell * | CreatePurkinjeCellForTissueNode (unsigned nodeIndex)=0 |
Protected Attributes | |
MixedDimensionMesh < ELEMENT_DIM, SPACE_DIM > * | mpMixedDimensionMesh |
std::set< unsigned > | mLocalPurkinjeNodes |
Subclass for also creating cell models for Purkinje cells. The user has to implement the CreatePurkinjeCellForTissueNode() method.
The dimensions should be 2 or 3.
Definition at line 42 of file AbstractPurkinjeCellFactory.hpp.
AbstractCardiacCell * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode | ( | unsigned | nodeIndex | ) | [inline] |
Create a cell object for the given node.
The default implementation checks whether the node is in a Purkinje node, in which case it calls CreatePurkinjeCellForTissueNode (which must be defined by subclasses), otherwise it returns a pointer to a (unique) fake cell
nodeIndex | Global node index. |
Definition at line 63 of file AbstractPurkinjeCellFactory.cpp.
References AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForTissueNode(), AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes, AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >::mpSolver, and AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >::mpZeroStimulus.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue().
virtual AbstractCardiacCell* AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForTissueNode | ( | unsigned | nodeIndex | ) | [protected, pure virtual] |
Must be overridden by subclasses to return a Purkinje cell object for the given node.
nodeIndex | Global node index. |
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode().
virtual void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::FinalisePurkinjeCellCreation | ( | std::vector< AbstractCardiacCell * > * | pPurkinjeCellsDistributed, | |
unsigned | lo, | |||
unsigned | hi | |||
) | [inline, virtual] |
May be overridden by subclasses to perform any necessary work after all Purkinje cells have been created.
pPurkinjeCellsDistributed | Pointer to a vector of Purkinje cell pointers. | |
lo | Lowest index owned by this process. | |
hi | Highest index owned by this process. |
Definition at line 85 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue().
MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM > * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::GetMixedDimensionMesh | ( | ) | [inline] |
Get the mixed dimension mesh (for possible use in CreatePurkinjeCellForTissueNode()). Note: GetMesh() just returns a pointer to an AbstractTetrahedralMesh.
Definition at line 78 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION, and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh.
void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh | ( | AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > * | pMesh | ) | [inline, virtual] |
Overridden set mesh which must take a MixedDimensionMesh
pMesh | Pointer to the mesh. |
Reimplemented from AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >.
Definition at line 43 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION, AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes, and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh.
std::set<unsigned> AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes [protected] |
A set of local purkinje node indices
Definition at line 49 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode(), and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh().
MixedDimensionMesh<ELEMENT_DIM,SPACE_DIM>* AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh [protected] |
Saved pointer to the mixed dimension mesh
Definition at line 46 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::GetMixedDimensionMesh(), and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh().