#include <AbstractPurkinjeCellFactory.hpp>
Inherits AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >.

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 49 of file AbstractPurkinjeCellFactory.hpp.
| void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunction | ( | const Node< SPACE_DIM > * | pNode, | |
| AbstractCardiacCellInterface * | pPurkinjeCell, | |||
| AbstractCardiacCellInterface * | pCardiacCell, | |||
| double | resistance | |||
| ) | [inline, protected] |
| pNode | the node in the mesh at which this junction is located | |
| pPurkinjeCell | the Purkinje cell | |
| pCardiacCell | the ventricular cell | |
| resistance | the junction resistance, in kilo-Ohms |
Definition at line 121 of file AbstractPurkinjeCellFactory.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetAttribute(), HeartConfig::GetPurkinjeSurfaceAreaToVolumeRatio(), AbstractCardiacCellInterface::GetStimulusFunction(), HeartConfig::Instance(), AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh, and AbstractCardiacCellInterface::SetStimulusFunction().
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunctionFromFile().
| void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunctionFromFile | ( | const Node< SPACE_DIM > * | pNode, | |
| AbstractCardiacCellInterface * | pPurkinjeCell, | |||
| AbstractCardiacCellInterface * | pCardiacCell | |||
| ) | [inline, protected] |
ReadJunctionsFile() must be called before calling this method
| pNode | the node in the mesh at which this junction is located | |
| pPurkinjeCell | the Purkinje cell | |
| pCardiacCell | the ventricular cell |
Definition at line 215 of file AbstractPurkinjeCellFactory.cpp.
References AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunction(), Node< SPACE_DIM >::GetIndex(), and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mJunctionMap.
| AbstractCardiacCellInterface * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode | ( | Node< SPACE_DIM > * | pNode, | |
| AbstractCardiacCellInterface * | pCardiacCell | |||
| ) | [inline] |
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
| pNode | pointer to node | |
| pCardiacCell | the cardiac cell that has already been created at this node |
Definition at line 188 of file AbstractPurkinjeCellFactory.cpp.
References AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForTissueNode(), Node< SPACE_DIM >::GetIndex(), 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 AbstractCardiacCellInterface* AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForTissueNode | ( | Node< SPACE_DIM > * | pNode, | |
| AbstractCardiacCellInterface * | pCardiacCell | |||
| ) | [protected, pure virtual] |
| pNode | pointer to node object | |
| pCardiacCell | the cardiac cell that has already been created at this node |
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode().
| virtual void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::FinalisePurkinjeCellCreation | ( | std::vector< AbstractCardiacCellInterface * > * | 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 139 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue().
| MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM > * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::GetMixedDimensionMesh | ( | ) | [inline] |
Definition at line 205 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION, and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh.
| void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::ReadJunctionsFile | ( | ) | [inline, private] |
Reads in node id and resistance values of junction nodes
The .pvj file path is specified by HeartConfig::Instance()->GetMeshFileName() + ".pvj"
Note, this is called by SetMesh
Definition at line 53 of file AbstractPurkinjeCellFactory.cpp.
References RelativeTo::AbsoluteOrCwd, EXCEPTION, FileFinder::Exists(), FileFinder::GetAbsolutePath(), HeartConfig::GetMeshName(), HeartConfig::Instance(), AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mJunctionMap, and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh().
| 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 166 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION, AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes, AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh, and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::ReadJunctionsFile().
std::map<unsigned, double> AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mJunctionMap [protected] |
A map between junction node ids and resistances
Definition at line 69 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunctionFromFile(), and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::ReadJunctionsFile().
std::set<unsigned> AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes [protected] |
A set of local purkinje node indices
Definition at line 66 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 63 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunction(), AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::GetMixedDimensionMesh(), AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::ReadJunctionsFile(), and AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh().
1.6.2