#include <ZombiePool.h>
Public Member Functions | |
ZombiePool () | |
~ZombiePool () | |
void | vSetN (const Eref &e, double v) |
double | vGetN (const Eref &e) const |
void | vSetNinit (const Eref &e, double v) |
double | vGetNinit (const Eref &e) const |
void | vSetDiffConst (const Eref &e, double v) |
double | vGetDiffConst (const Eref &e) const |
void | vSetConc (const Eref &e, double v) |
double | vGetConc (const Eref &e) const |
void | vSetConcInit (const Eref &e, double v) |
void | vSetVolume (const Eref &e, double v) |
double | vGetVolume (const Eref &e) const |
void | vSetSpecies (const Eref &e, unsigned int v) |
unsigned int | vGetSpecies (const Eref &e) const |
void | vSetSolver (Id ksolve, Id dsolve) |
void | vSetMotorConst (const Eref &e, double v) |
Dummy MotorConst field for most Pool subclasses. | |
double | vGetMotorConst (const Eref &e) const |
Static Public Member Functions | |
static const Cinfo * | initCinfo () |
Protected Attributes | |
ZombiePoolInterface * | dsolve_ |
ZombiePoolInterface * | ksolve_ |
double | diffConst_ |
double | motorConst_ |
This class is used by the Dsolve and Ksolve to take over from regular pools. Possibly other solver classes will eventually use it too.
ZombiePool::ZombiePool | ( | ) |
ZombiePool::~ZombiePool | ( | ) |
const Cinfo * ZombiePool::initCinfo | ( | ) | [static] |
Reimplemented from PoolBase.
Reimplemented in ZombieBufPool.
References PoolBase::initCinfo().
Referenced by ZombieBufPool::initCinfo().
double ZombiePool::vGetConc | ( | const Eref & | e | ) | const [virtual] |
Implements PoolBase.
References lookupVolumeFromMesh(), NA, and vGetN().
double ZombiePool::vGetDiffConst | ( | const Eref & | e | ) | const [virtual] |
Implements PoolBase.
References diffConst_.
double ZombiePool::vGetMotorConst | ( | const Eref & | e | ) | const [virtual] |
Reimplemented from PoolBase.
References motorConst_.
double ZombiePool::vGetN | ( | const Eref & | e | ) | const [virtual] |
Implements PoolBase.
References dsolve_, ZombiePoolInterface::getN(), and ksolve_.
Referenced by vGetConc().
double ZombiePool::vGetNinit | ( | const Eref & | e | ) | const [virtual] |
Implements PoolBase.
References dsolve_, ZombiePoolInterface::getNinit(), and ksolve_.
double ZombiePool::vGetVolume | ( | const Eref & | e | ) | const [virtual] |
void ZombiePool::vSetConc | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Implements PoolBase.
Reimplemented in ZombieBufPool.
References lookupVolumeFromMesh(), NA, and vSetN().
void ZombiePool::vSetConcInit | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Implements PoolBase.
Reimplemented in ZombieBufPool.
References lookupVolumeFromMesh(), NA, and vSetNinit().
void ZombiePool::vSetDiffConst | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Implements PoolBase.
References diffConst_, dsolve_, and ZombiePoolInterface::setDiffConst().
void ZombiePool::vSetMotorConst | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Dummy MotorConst field for most Pool subclasses.
Reimplemented from PoolBase.
References dsolve_, motorConst_, and ZombiePoolInterface::setMotorConst().
void ZombiePool::vSetN | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Implements PoolBase.
Reimplemented in ZombieBufPool.
References dsolve_, ksolve_, and ZombiePoolInterface::setN().
Referenced by vSetConc().
void ZombiePool::vSetNinit | ( | const Eref & | e, | |
double | v | |||
) | [virtual] |
Implements PoolBase.
Reimplemented in ZombieBufPool.
References dsolve_, ksolve_, and ZombiePoolInterface::setNinit().
Referenced by vSetConcInit().
Assign whatever info is needed by the zombie based on the solver Element. Encapsulates some unpleasant field extraction, casting, and assignment. Default version of this function does nothing.
Reimplemented from PoolBase.
References Element::cinfo(), dsolve_, Id::element(), Cinfo::isA(), ksolve_, and Cinfo::name().
double ZombiePool::diffConst_ [protected] |
Referenced by vGetDiffConst(), and vSetDiffConst().
ZombiePoolInterface* ZombiePool::dsolve_ [protected] |
The ZombiePoolInterface pointers hold the solvers for the ZombiePool. At least one must be assigned. Field assignments propagate from the pool to whichever is assigned. Field lookups first check the dsolve, then the ksolve. The ZombiePool may be managed by the diffusion solver without the involvement of the Stoich class at all. So instead of routing the zombie operations through the Stoich, we have pointers directly into the Dsolve and Ksolve.
Referenced by vGetN(), vGetNinit(), vSetDiffConst(), vSetMotorConst(), vSetN(), vSetNinit(), and vSetSolver().
ZombiePoolInterface* ZombiePool::ksolve_ [protected] |
Referenced by vGetN(), vGetNinit(), vSetN(), vSetNinit(), and vSetSolver().
double ZombiePool::motorConst_ [protected] |
Referenced by vGetMotorConst(), and vSetMotorConst().