#include <viongate.h>
Inheritance diagram for VIonGate:

Generic first order kinitics voltage dependend ion gate.
An ion gate is model via the equation
(
is an interger exponent) where the state variable
obeys the first order kinetics
with the voltage dependent rate constants
and
. This equation can also be written in the (sometimes more convinient) form
with the following relations between the time ``constant''
and the ``resting'' value
and the activation and inactivation parameters
and
.
For an efficient computation we precalculate for each value of
the integration parameters
and
for the exponential Euler integration and store them in a lookup table.
These are given by
and
.
The calculated output of IonGate is
. For its computations it needs the membrane voltage and resting potential of the associated object.
Implementig a specific IonGate
To actually implement a specific gate one has to derive a class from this one and implement either the pair of functions alpha(), beta() or the pair tau(), infty(). Not dooing so will cause an infity recursion fo the current implementation of IonGate.
Furthermore it is neccesarry that you include in your class definition of MyIonGate the macro IONGATE_TABLES and you also need in mygate.cpp the following two lines of code:
double *MyIonGate::C1=0; double *MyIonGate::C2=0;
and
.
:
.
:
.
.
.
.
.
|
|
(at least with gcc 2.95) the virtuals are not called correctly within the destructor |
|
|
virtual methods to correctly acces the static members C1 and C2 Reimplemented from IonGate. Reimplemented in HH_n_Gate, HH_m_Gate, HH_h_Gate, MmGate_Wang98, AmGate_Hoffman97, AhGate_Hoffman97, SICmGate_Maciokas02, SIChGate_Maciokas02, AnGate_Korngreen02, AlGate_Korngreen02, KnGate_Korngreen02, KlGate_Korngreen02, NPmGate_McCormick92, MnGate_Mainen96, HnGate_Stuart98, HVACAuGate_Brown93, HVACAvGate_Brown93, CALmGate_Destexhe98, and CALhGate_Destexhe98. |
|
|
The look up table for the exponential Euler integration 'constant' Reimplemented from IonGate. Reimplemented in GVD_Gate, GVD_cT_Gate, HH_n_Gate, HH_m_Gate, HH_h_Gate, CaGate_Yamada98, MmGate_Wang98, AmGate_Hoffman97, AhGate_Hoffman97, SICmGate_Maciokas02, SIChGate_Maciokas02, AnGate_Korngreen02, AlGate_Korngreen02, KnGate_Korngreen02, KlGate_Korngreen02, NPmGate_McCormick92, MnGate_Mainen96, HnGate_Stuart98, HVACAuGate_Brown93, HVACAvGate_Brown93, CALmGate_Destexhe98, and CALhGate_Destexhe98. |
|
|
The look up table for the exponential Euler integration 'constant' Reimplemented from IonGate. Reimplemented in GVD_Gate, GVD_cT_Gate, HH_n_Gate, HH_m_Gate, HH_h_Gate, CaGate_Yamada98, MmGate_Wang98, AmGate_Hoffman97, AhGate_Hoffman97, SICmGate_Maciokas02, SIChGate_Maciokas02, AnGate_Korngreen02, AlGate_Korngreen02, KnGate_Korngreen02, KlGate_Korngreen02, NPmGate_McCormick92, MnGate_Mainen96, HnGate_Stuart98, HVACAuGate_Brown93, HVACAvGate_Brown93, CALmGate_Destexhe98, and CALhGate_Destexhe98. |