#include <MgBlock.h>
Public Member Functions | |
MgBlock () | |
void | setKMg_A (double Gbar) |
double | getKMg_A () const |
void | setKMg_B (double Ek) |
double | getKMg_B () const |
void | setCMg (double CMg) |
double | getCMg () const |
void | setZk (double Zk) |
double | getZk () const |
void | vProcess (const Eref &e, ProcPtr p) |
void | vReinit (const Eref &e, ProcPtr p) |
void | origChannel (const Eref &e, double Gk, double Ek) |
Static Public Member Functions | |
static const Cinfo * | initCinfo () |
Specify the Class Info static variable for initialization. |
MgBlock::MgBlock | ( | ) |
double MgBlock::getCMg | ( | ) | const |
Referenced by initCinfo().
double MgBlock::getKMg_A | ( | ) | const |
Referenced by initCinfo().
double MgBlock::getKMg_B | ( | ) | const |
Referenced by initCinfo().
double MgBlock::getZk | ( | ) | const |
Referenced by initCinfo().
const Cinfo * MgBlock::initCinfo | ( | ) | [static] |
Specify the Class Info static variable for initialization.
Reimplemented from ChanCommon.
References getCMg(), getKMg_A(), getKMg_B(), getZk(), ChanBase::initCinfo(), origChannel(), setCMg(), setKMg_A(), setKMg_B(), and setZk().
void MgBlock::origChannel | ( | const Eref & | e, | |
double | Gk, | |||
double | Ek | |||
) |
Assign the local Vm_ to the incoming Vm from the compartment
References ChanBase::setEk().
Referenced by initCinfo().
void MgBlock::setCMg | ( | double | CMg | ) |
References EPSILON.
Referenced by initCinfo().
void MgBlock::setKMg_A | ( | double | Gbar | ) |
References EPSILON.
Referenced by initCinfo().
void MgBlock::setKMg_B | ( | double | Ek | ) |
References EPSILON.
Referenced by initCinfo().
void MgBlock::setZk | ( | double | Zk | ) |
Referenced by initCinfo().
processFunc handles the update and calculations every clock tick. It first sends the request for evaluation of the gate variables to the respective gate objects and recieves their response immediately through a return message. This is done so that many channel instances can share the same gate lookup tables, but do so cleanly. Such messages should never go to a remote node. Then the function does its own little calculations to send back to the parent compartment through regular messages.
Implements ChanBase.
References ChanCommon::sendProcessMsgs(), ChanBase::setGk(), ChanCommon::updateIk(), and ChanCommon::Vm_.
Reinitializes the values for the channel. This involves computing the steady-state value for the channel gates using the provided Vm from the parent compartment. It involves a similar cycle through the gates and then updates to the parent compartment as for the processFunc.
Implements ChanBase.
References EPSILON, and ChanCommon::sendReinitMsgs().