previous next Up Title Contents

Neuron_HHuxley: Neural Cell Model


File name
MoNCHHuxley.[ch]


Description
This module implements an efficient version of the Hodgkin-Huxley general neural cell model. Its fast operation is enabled through the use of tables for the ion-channel voltage-dependent conductances (see ).

The module has two operating modes: "normal" and "voltage_clamp" respectively. At the time of writing, only the "normal" mode of operation has been tested. If these operating modes are prefaced with "debug_", e.g. "debug_normal", then a signal file "test.dat" will be output in the format:

membrane potential, leakage current, IC 1 (activating, inactivating currents), IC2 ...

This module is configured to be connected to up to three EarObjects. When the injection mode is "on", the first connected EarObject is always treated as an injected current. Otherwise the first and second EarObjects (or second and third if the injection mode is "on") are used as excitatory and inhibitory signals respectively.

The ion channels will be listed if the print ion channel tables mode is "On", but as these tables can be very long, it is mostly useful to set this option to "off". One would set this option to "On" for diagnostic or de-bugging purposes.

The format for the ion-channels is defined by the ion channel mode: "User" or "Rothman". Examples of these ion-channel formats are given in the example parameter files below. For more information about the "Rothman" Ion channel mode, see ??.



Example parameter file format

"User" ion-channel mode.

#HHDCN1.par
normal		Operation mode ("normal" or "voltage clamp").
on		Injection mode ("on" or "off").
-0.010		Excitatory reversal potential (V).
-0.010		Inhibitory reversal potential (V).
80.0e-12	Cell capacitance (Farads).
100e-3		Resting signal duration - used when finding V0(s).
1e-8		Resting criteria, dV (V).

# Ion channel parameters
off		Print ion channel tables mode ("on" or "off").
25e-9		Base leakage conductance (S).
-0.017		Leakage equilibrium potential (V).
User		Ion channel mode ("User", later we'll have "wood" too).
3		Number of ion channel files.
ParFiles/NC/IonChans/NaPConnr1.par		Sodium ion channel format file.
ParFiles/NC/IonChans/KPConnr1.par		Potassium ion channel file.
ParFiles/NC/IonChans/KAConnr1.par		Potassium 'A' ion channel file.



Example parameter file format

"Rothman" ion channel mode.

#HHDCNRo1.par
normal		Operation mode ("normal" or "voltage clamp").
on		Injection mode ("on" or "off").
-0.010		Excitatory reversal potential (V).
-0.010		Inhibitory reversal potential (V).
23e-12		Cell capacitance (Farads/cm^2).
100e-3		Resting signal duration - used when finding V0(s).
1e-5		Resting criteria, dV (V).

# Ion channel parameters
off		Print ion channel tables mode ("on" or "off").
1.7e-9		Leakage conductance (S).
0.0028		Leakage equilibrium potential (V).
Rothman	Mode option ("user", "rothman").
3		Number of ion channels.
22.0		Operating temperature (degrees C).
2.0		Leakge conductance Q10.
-0.120		Initial voltage for tables (V).
0.055		Final voltage for tables (V).
0.001		Voltage step for tables (V).

#Ion channels

Na+_Rothman	Description.
0.055		Equilibrium potential (V).
325e-9		Base maximum conductance - 22oC (S).
2.0		Conductance Q10.
2		Activation exponent (int).
#Current parameters
# a		b	c	d	e		f	g	h	i	j	k
0.36	3	1	49	-1		49	-3	0	1	0	0		alpha
0		3	1	1	-0.4		3	1	58	-1	58	20		beta
2.4		3	0	1	1		68	3	0.8	10	1	61.3	alpha
0		3	1	1	3.60	3	0	1	1	21	-10		beta

K+High_Rothman	Description.
-0.077			Equilibrium potential (V).
40e-9			Base maximum conductance - 22oC (S).
2.5			Conductance Q10.
1			Activation exponent (int).
#Current parameters
# a		b	c		d	e	f	g	h	i	j	k
0.0282	3	1		9	-1	9	-12	0	1	0	0		alpha
6		3	144	-	30	6	3	0	1	1	62	1		beta
0		0	0		0	0	0	0	0	0	0	0		alpha
0		0	0		0	0	0	0	0	0	0	0		beta

K+Low_Rothman	Description.
-0.077			Equilibrium potential (V).
20e-9			Base maximum conductance - 22oC (S).
2.5			Conductance Q10.
1			Activation exponent (int).
#Current parameters
# a		b	c	d		e	f	g		h	i	j	k
0.107	3	0	1		1	33	-13.1	0	1	0	0	alpha
0.0188	3	30	-30.3	0	1	0		0	1	0	1	beta
0		0	0	0		0	0	0		0	0	0	0	alpha
0		0	0	0		0	0	0		0	0	0	0	beta



Test program directories
Tests/Models/Neuron, Tests/SSPrograms

Generic Module Routines

This module has the standard Generic Module Routines (see Basic Module Routines used in Generic Programming, page 52).

The RunModel_Neuron_HHuxley(...) Process Routine

Syntax
BOOLN RunModel_Neuron_HHuxley(EarObjectPtr data);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The GetICListPtr_Neuron_HHuxley(...) Routine

Syntax
IonChanListPtr GetICListPtr_Neuron_HHuxley(void);


Returns
A pointer to the ion-channel list data structure.

The GetPotentialResponse_Neuron_HHuxley(...) Routine

Syntax
double GetPotentialResponse_Neuron_HHuxley(double potential);


Returns
The potential response of the cell (V). This is included for compatibility with the other neural cell models.

The GetRestingResponse_Neuron_HHuxley(...) Routine

Syntax
double GetRestingResponse_Neuron_HHuxley(void);


Returns
The resting potential of the cell (V).

The SetCellCapacitance_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetCellCapacitance_Neuron_HHuxley(double theCellCapacitance);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetExcitatoryReversalPot_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetExcitatoryReversalPot_Neuron_HHuxley(double theExcitatoryReversalPot);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetICList_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetICList_Neuron_HHuxley(IonChanListPtr theICList);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetInhibitoryReversalPot_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetInhibitoryReversalPot_Neuron_HHuxley(double theInhibitoryReversalPot);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetInjectionmode_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetInjectionmode_Neuron_HHuxley(char *theInjectionmode);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetOperationMode_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetOperationMode_Neuron_HHuxley(char *theOperationMode);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetRestingCriteria_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetRestingCriteria_Neuron_HHuxley(double theRestingCriteria);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetRestingSignalDuration_Neuron_HHuxley(...) Routine

Syntax
BOOLN SetRestingSignalDuration_Neuron_HHuxley(double theRestingSignalDuration);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

Example: Tests/SSPrograms/ModelResp.c

Parameter file:ModelResp.par:
#
# SimulationSpec main parameter file.
#

output.dat				Output file.

SimSpecs/NC/HHDCN1Resp.sim	Simulation Specification file.

# Misc. parameters.

1		Number of repeat runs.
Output

Figure [129] The current step response of the Hodgkin-Huxley neural cell model.


previous next Up Title Contents