|
Chaste Release::3.1
|
#include <AbstractPurkinjeCellFactory.hpp>
Inheritance diagram for AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >:
Collaboration diagram for AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >:Public Member Functions | |
| void | SetMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh) |
| AbstractCardiacCellInterface * | CreatePurkinjeCellForNode (unsigned nodeIndex, AbstractCardiacCellInterface *pCardiacCell) |
| virtual void | FinalisePurkinjeCellCreation (std::vector< AbstractCardiacCellInterface * > *pPurkinjeCellsDistributed, unsigned lo, unsigned hi) |
| MixedDimensionMesh < ELEMENT_DIM, SPACE_DIM > * | GetMixedDimensionMesh () |
Protected Member Functions | |
| virtual AbstractCardiacCellInterface * | CreatePurkinjeCellForTissueNode (unsigned nodeIndex, AbstractCardiacCellInterface *pCardiacCell)=0 |
| void | CreateJunction (const Node< SPACE_DIM > *pNode, AbstractCardiacCellInterface *pPurkinjeCell, AbstractCardiacCellInterface *pCardiacCell, double resistance) |
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 49 of file AbstractPurkinjeCellFactory.hpp.
| void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreateJunction | ( | const Node< SPACE_DIM > * | pNode, |
| AbstractCardiacCellInterface * | pPurkinjeCell, | ||
| AbstractCardiacCellInterface * | pCardiacCell, | ||
| double | resistance | ||
| ) | [protected] |
Create a purkinje-ventricular junction between the two cells provided.
| 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 53 of file AbstractPurkinjeCellFactory.cpp.
References AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetAttribute(), HeartConfig::GetPurkinjeSurfaceAreaToVolumeRatio(), AbstractCardiacCellInterface::GetStimulusFunction(), HeartConfig::Instance(), and AbstractCardiacCellInterface::SetStimulusFunction().
| AbstractCardiacCellInterface * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForNode | ( | unsigned | nodeIndex, |
| AbstractCardiacCellInterface * | pCardiacCell | ||
| ) |
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. |
| pCardiacCell | the cardiac cell that has already been created at this node |
Definition at line 118 of file AbstractPurkinjeCellFactory.cpp.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue().
| virtual AbstractCardiacCellInterface* AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::CreatePurkinjeCellForTissueNode | ( | unsigned | nodeIndex, |
| AbstractCardiacCellInterface * | pCardiacCell | ||
| ) | [protected, pure virtual] |
Must be overridden by subclasses to return a Purkinje cell object for the given node.
| nodeIndex | global node index. |
| pCardiacCell | the cardiac cell that has already been created at this node |
| 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 110 of file AbstractPurkinjeCellFactory.hpp.
Referenced by AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::AbstractCardiacTissue().
| MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM > * AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::GetMixedDimensionMesh | ( | ) |
Get the mixed dimension mesh (for possible use in CreatePurkinjeCellForTissueNode()). Note: GetMesh() just returns a pointer to an AbstractTetrahedralMesh.
Definition at line 134 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION.
| void AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh | ( | AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > * | pMesh | ) | [virtual] |
Overridden set mesh which must take a MixedDimensionMesh
| pMesh | Pointer to the mesh. |
Reimplemented from AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >.
Definition at line 98 of file AbstractPurkinjeCellFactory.cpp.
References EXCEPTION, and AbstractCardiacCellFactory< ELEMENT_DIM, SPACE_DIM >::SetMesh().
std::set<unsigned> AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mLocalPurkinjeNodes [protected] |
A set of local purkinje node indices
Definition at line 56 of file AbstractPurkinjeCellFactory.hpp.
MixedDimensionMesh<ELEMENT_DIM,SPACE_DIM>* AbstractPurkinjeCellFactory< ELEMENT_DIM, SPACE_DIM >::mpMixedDimensionMesh [protected] |
Saved pointer to the mixed dimension mesh
Definition at line 53 of file AbstractPurkinjeCellFactory.hpp.