Chaste  Release::2018.1
ZeroNetChargeElectrodes< DIM > Class Template Reference

#include <ZeroNetChargeElectrodes.hpp>

+ Inheritance diagram for ZeroNetChargeElectrodes< DIM >:
+ Collaboration diagram for ZeroNetChargeElectrodes< DIM >:

Public Member Functions

 ZeroNetChargeElectrodes (std::vector< std::pair< AbstractChasteRegion< DIM > *, AbstractChasteRegion< DIM > * > > &rElectrodePairs, std::vector< double > &rStimulusMagnitudes, std::vector< double > &rDurations, std::vector< double > &rPeriods, std::vector< double > &rStarts, std::vector< double > &rEnds)
 
boost::shared_ptr
< AbstractStimulusFunction
CreateStimulusForNode (Node< DIM > *pNode)
 
 ~ZeroNetChargeElectrodes ()
 
- Public Member Functions inherited from ElectrodesStimulusFactory< DIM >
 ElectrodesStimulusFactory (std::vector< std::pair< AbstractChasteRegion< DIM > *, AbstractChasteRegion< DIM > * > > &rElectrodePairs, std::vector< double > &rStimulusMagnitudes, std::vector< double > &rDurations, std::vector< double > &rPeriods, std::vector< double > &rStarts, std::vector< double > &rEnds)
 
boost::shared_ptr
< AbstractStimulusFunction
CreateStimulusForNode (Node< DIM > *pNode)
 
 ~ElectrodesStimulusFactory ()
 
void SetCompatibleExtracellularStimulus ()
 
void GroundSecondElectrode (bool grounded)
 
- Public Member Functions inherited from AbstractStimulusFactory< DIM >
virtual boost::shared_ptr
< AbstractStimulusFunction
CreateStimulusForNode (Node< ELEMENT_DIM > *pNode)
 
virtual unsigned GetNumberOfCells ()
 
 AbstractStimulusFactory ()
 
virtual ~AbstractStimulusFactory ()
 
void SetMesh (AbstractTetrahedralMesh< ELEMENT_DIM, ELEMENT_DIM > *pMesh)
 
AbstractTetrahedralMesh
< ELEMENT_DIM, ELEMENT_DIM > * 
GetMesh ()
 
std::vector
< AbstractChasteRegion
< ELEMENT_DIM > * > 
GetRegionsToBeGrounded ()
 

Additional Inherited Members

- Protected Types inherited from ElectrodesStimulusFactory< DIM >
typedef LinearBasisFunction< DIM > BasisFunction
 
- Protected Member Functions inherited from ElectrodesStimulusFactory< DIM >
void CheckForElectrodesIntersection ()
 
double ComputeElectrodeTotalFlux (AbstractChasteRegion< DIM > *pRegion, double stimulusMagnitude)
 
- Protected Attributes inherited from ElectrodesStimulusFactory< DIM >
std::vector< std::pair
< AbstractChasteRegion< DIM >
*, AbstractChasteRegion< DIM > * > > & 
mrElectrodePairs
 
std::vector< double > & mrMagnitudes
 
std::vector< double > & mrDurations
 
std::vector< double > & mrPeriods
 
std::vector< double > & mrStarts
 
std::vector< double > & mrEnds
 
std::vector< doublemMagnitudesElectrode1
 
std::vector< doublemMagnitudesElectrode2
 
bool mGroundSecondElectrode
 
- Protected Attributes inherited from AbstractStimulusFactory< DIM >
AbstractTetrahedralMesh
< ELEMENT_DIM, ELEMENT_DIM > * 
mpMesh
 
std::vector
< AbstractChasteRegion
< ELEMENT_DIM > * > 
mGroundedRegions
 

Detailed Description

template<unsigned DIM>
class ZeroNetChargeElectrodes< DIM >

This class implements the specification of two electrodes with a RegularStimulusZeroNetCharge applied to them. Note that the compatibility conditions are the same as its parent class (ElectrodesStimulusFactory), becuase the magnitudes involved are either + or minus 'Magnitude', hence the stimulus will be compatible.

See documentation of ElectrodesStimulusFactory for full functionality.

Definition at line 60 of file ZeroNetChargeElectrodes.hpp.

Constructor & Destructor Documentation

template<unsigned DIM>
ZeroNetChargeElectrodes< DIM >::ZeroNetChargeElectrodes ( std::vector< std::pair< AbstractChasteRegion< DIM > *, AbstractChasteRegion< DIM > * > > &  rElectrodePairs,
std::vector< double > &  rStimulusMagnitudes,
std::vector< double > &  rDurations,
std::vector< double > &  rPeriods,
std::vector< double > &  rStarts,
std::vector< double > &  rEnds 
)

Constructor. Electrodes and stimulation parameters need to be passed in.

Parameters
rElectrodePairsthe pairs of electrodes
rStimulusMagnitudesthe magnitudes of the stimuli (microA / cm^3). First electrode will have magnitude value and second electrode will have -magnitude (before being corrected to ensure equal flux).
rDurationsthe duration of each stimulus (ms)
rPeriodsthe period of each stimulus (ms)
rStartsthe start time of each stimulus (ms).
rEndsthe end of each stimulation (ms)

Definition at line 44 of file ZeroNetChargeElectrodes.cpp.

template<unsigned DIM>
ZeroNetChargeElectrodes< DIM >::~ZeroNetChargeElectrodes ( )

Destructor

Definition at line 55 of file ZeroNetChargeElectrodes.cpp.

Member Function Documentation

template<unsigned DIM>
boost::shared_ptr< AbstractStimulusFunction > ZeroNetChargeElectrodes< DIM >::CreateStimulusForNode ( Node< DIM > *  pNode)
Returns
Creates an appropriate stimulus for each node as to abide compatibility conditions.
Parameters
pNodethe node for which to create the stimulus

Definition at line 60 of file ZeroNetChargeElectrodes.cpp.

References Node< SPACE_DIM >::GetPoint().


The documentation for this class was generated from the following files: