ZombieCompartment Class Reference

#include <ZombieCompartment.h>

Inheritance diagram for ZombieCompartment:
Inheritance graph
[legend]
Collaboration diagram for ZombieCompartment:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ZombieCompartment ()
virtual ~ZombieCompartment ()
void vSetVm (const Eref &e, double Vm)
double vGetVm (const Eref &e) const
void vSetEm (const Eref &e, double Em)
double vGetEm (const Eref &e) const
void vSetCm (const Eref &e, double Cm)
double vGetCm (const Eref &e) const
void vSetRm (const Eref &e, double Rm)
double vGetRm (const Eref &e) const
void vSetRa (const Eref &e, double Ra)
double vGetRa (const Eref &e) const
double vGetIm (const Eref &e) const
void vSetInject (const Eref &e, double Inject)
double vGetInject (const Eref &e) const
void vSetInitVm (const Eref &e, double initVm)
double vGetInitVm (const Eref &e) const
void dummy (const Eref &e, ProcPtr p)
void vProcess (const Eref &e, ProcPtr p)
void vReinit (const Eref &e, ProcPtr p)
void vInitProc (const Eref &e, ProcPtr p)
void vInitReinit (const Eref &e, ProcPtr p)
void vHandleChannel (const Eref &e, double Gk, double Ek)
void vHandleRaxial (double Ra, double Vm)
void vHandleAxial (double Vm)
void vInjectMsg (const Eref &e, double current)
void vRandInject (const Eref &e, double prob, double current)
void vSetSolver (const Eref &e, Id hsolve)
 Assigns the solver to the zombie.

Static Public Member Functions

static const CinfoinitCinfo ()

Detailed Description

Zombie object that lets HSolve do its calculations, while letting the user interact with this object as if it were the original object.


Constructor & Destructor Documentation

ZombieCompartment::ZombieCompartment (  ) 
ZombieCompartment::~ZombieCompartment (  )  [virtual]

Member Function Documentation

void ZombieCompartment::dummy ( const Eref e,
ProcPtr  p 
)
const Cinfo * ZombieCompartment::initCinfo (  )  [static]

Initializes the class info.

The initCinfo() function sets up the Compartment class. This function uses the common trick of having an internal static value which is created the first time the function is called. There are several static arrays set up here. The ones which use SharedFinfos are for shared messages where multiple kinds of information go along the same connection.

Reimplemented from moose::CompartmentBase.

double ZombieCompartment::vGetCm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getCm(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetEm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getEm(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetIm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getIm(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetInitVm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getInitVm(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetInject ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getInject(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetRa ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getRa(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetRm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getRm(), and Eref::id().

Here is the call graph for this function:

double ZombieCompartment::vGetVm ( const Eref e  )  const [virtual]

Implements moose::CompartmentBase.

References HSolve::getVm(), and Eref::id().

Here is the call graph for this function:

void ZombieCompartment::vHandleAxial ( double  Vm  )  [virtual]

handleAxial handles incoming axial message data.

Implements moose::CompartmentBase.

void ZombieCompartment::vHandleChannel ( const Eref e,
double  Gk,
double  Ek 
) [virtual]

handleChannel handles information coming from the channel to the compartment

Implements moose::CompartmentBase.

References HSolve::addGkEk(), and Eref::id().

Here is the call graph for this function:

void ZombieCompartment::vHandleRaxial ( double  Ra,
double  Vm 
) [virtual]

handleRaxial handles incoming raxial message data.

Implements moose::CompartmentBase.

void ZombieCompartment::vInitProc ( const Eref e,
ProcPtr  p 
) [virtual]

The initProc function is for a second phase of 'process' operations. It sends the axial and raxial messages to other compartments. It has to be executed out of phase with the main process so that all compartments are equivalent and there is no calling order dependence in the results.

Implements moose::CompartmentBase.

void ZombieCompartment::vInitReinit ( const Eref e,
ProcPtr  p 
) [virtual]

Empty function to do another reinit step out of phase with the main one. Nothing needs doing there.

Implements moose::CompartmentBase.

void ZombieCompartment::vInjectMsg ( const Eref e,
double  current 
) [virtual]

Injects a constantly updated current into the compartment. Unlike the 'inject' field, this injected current is applicable only for a single timestep. So this is meant to be used as the destination of a message rather than as a one-time assignment.

Implements moose::CompartmentBase.

References HSolve::addInject(), and Eref::id().

Here is the call graph for this function:

void ZombieCompartment::vProcess ( const Eref e,
ProcPtr  p 
) [virtual]

The process function does the object updating and sends out messages to channels, nernsts, and so on.

Implements moose::CompartmentBase.

void ZombieCompartment::vRandInject ( const Eref e,
double  prob,
double  current 
) [virtual]

Injects a constantly updated current into the compartment, with a probability prob. Note that it isn't the current amplitude that is random, it is the presence or absence of the current that is probabilistic.

Implements moose::CompartmentBase.

void ZombieCompartment::vReinit ( const Eref e,
ProcPtr  p 
) [virtual]

The reinit function reinitializes all fields.

Implements moose::CompartmentBase.

void ZombieCompartment::vSetCm ( const Eref e,
double  Cm 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), moose::CompartmentBase::rangeWarning(), and HSolve::setCm().

Here is the call graph for this function:

void ZombieCompartment::vSetEm ( const Eref e,
double  Em 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), and HSolve::setEm().

Here is the call graph for this function:

void ZombieCompartment::vSetInitVm ( const Eref e,
double  initVm 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), and HSolve::setInitVm().

Here is the call graph for this function:

void ZombieCompartment::vSetInject ( const Eref e,
double  Inject 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), and HSolve::setInject().

Here is the call graph for this function:

void ZombieCompartment::vSetRa ( const Eref e,
double  Ra 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), moose::CompartmentBase::rangeWarning(), and HSolve::setRa().

Here is the call graph for this function:

void ZombieCompartment::vSetRm ( const Eref e,
double  Rm 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), moose::CompartmentBase::rangeWarning(), and HSolve::setRm().

Here is the call graph for this function:

void ZombieCompartment::vSetSolver ( const Eref e,
Id  hsolve 
) [virtual]

Assigns the solver to the zombie.

Reimplemented from moose::CompartmentBase.

References Element::cinfo(), Eref::data(), Id::element(), Id::eref(), Cinfo::isA(), and Id::path().

Here is the call graph for this function:

void ZombieCompartment::vSetVm ( const Eref e,
double  Vm 
) [virtual]

Implements moose::CompartmentBase.

References Eref::id(), and HSolve::setVm().

Here is the call graph for this function:


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

Generated on 1 Jul 2015 for MOOSE by  doxygen 1.6.1