MyFirstNEURON (Houweling, Sejnowski 1997)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:3808
MyFirstNEURON is a NEURON demo by Arthur Houweling and Terry Sejnowski. Perform experiments from the book 'Electrophysiology of the Neuron, A Companion to Shepherd's Neurobiology, An Interactive Tutorial' by John Huguenard & David McCormick, Oxford University Press 1997, or design your own one or two cell simulation.
Reference:
1 . Huguenard J, McCormick DA, Shepherd GM (1997) Electrophysiology of the Neuron, A Companion to Shepherd's Neurobiology, An Interactive Tutorial. Electrophysiology of the Neuron
2 . Houweling AR, Sejnowski TJ (1997) Personal communication from Arthur Houweling.
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism:
Cell Type(s):
Channel(s): I Na,t; I L high threshold; I T low threshold; I A; I K; I M; I K,Ca; I CAN; I Sodium; I Calcium; I Potassium;
Gap Junctions:
Receptor(s): GabaA; GabaB; AMPA; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Action Potential Initiation; Activity Patterns; Bursting; Ion Channel Kinetics; Temporal Pattern Generation; Oscillations; Parameter Fitting; Detailed Neuronal Models; Tutorial/Teaching; Action Potentials; Sleep; Calcium dynamics;
Implementer(s): Houweling, Arthur [Arthur at Salk.edu];
Search NeuronDB for information about:  GabaA; GabaB; AMPA; NMDA; I Na,t; I L high threshold; I T low threshold; I A; I K; I M; I K,Ca; I CAN; I Sodium; I Calcium; I Potassium;
/
MyFirstNEURON
MyFirstNEURONmanual_files
readme.txt
ampa.mod
ampa2.mod
cadyn.mod
gabaA.mod
gabaA2.mod
gabaB.mod
gabaB2.mod
HH1.mod
HH2.mod
ia.mod *
iahp.mod
iahp2.mod *
ic.mod *
ican.mod
ih.mod *
il.mod *
im.mod *
it.mod *
it2.mod
leak.mod *
nmda.mod
nmda2.mod
synstim.mod
about.hoc
e1.par
e10.par
e11a.par
e11b.par
e12.par
e13.par
e14.par
e15a.par
e15b.par
e16a.par
e16b.par
e16c.par
e17a.par
e17b.par
e3.par
e5.par
e7.par
manual.htm
mcontrl1.hoc
mcontrl2.hoc
mcontrl3.hoc
methods.htm
mosinit.hoc
my1stnrn.hoc
parpanl1.hoc
parpanl2.hoc
parpanl3.hoc
plotcurr.hoc
                            
TITLE Hippocampal HH channels
:
: Fast Na+ and K+ currents responsible for action potentials
: Iterative equations
:
: Equations modified by Traub, for Hippocampal Pyramidal cells, in:
: Traub & Miles, Neuronal Networks of the Hippocampus, Cambridge, 1991
:
: range variable vtraub adjust threshold
:
: Written by Alain Destexhe, Salk Institute, Aug 1992
:
: Modifications by Arthur Houweling for use in MyFirstNEURON

INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)}

NEURON {
	SUFFIX HH2
	USEION na READ ena WRITE ina
	USEION k READ ek WRITE ik
	RANGE gnabar, gkbar, vtraub
	RANGE m_inf, h_inf, n_inf
	RANGE tau_m, tau_h, tau_n
	RANGE m_exp, h_exp, n_exp
	RANGE ik, ina 
}


UNITS {
	(mA) = (milliamp)
	(mV) = (millivolt)
}

PARAMETER {
	gnabar	= .1 	(mho/cm2)
	gkbar	= .01 	(mho/cm2)

	ena		(mV)
	ek		(mV)
	celsius		(degC)
	dt              (ms)
	v               (mV)
	vtraub	= -55	(mV)	: adjusts threshold
}

STATE {
	m h n
}

ASSIGNED {
	ina	(mA/cm2)
	ik	(mA/cm2)
	il	(mA/cm2)
	m_inf
	h_inf
	n_inf
	tau_m
	tau_h
	tau_n
	m_exp
	h_exp
	n_exp
	tadj
}


BREAKPOINT {
	SOLVE states
	ina = gnabar * m*m*m*h * (v - ena)
	ik  = gkbar * n*n*n*n * (v - ek)
}


:DERIVATIVE states {   : use this for exact Hodgkin-Huxley equations
:	evaluate_fct(v)
:	m' = (m_inf - m) / tau_m
:	h' = (h_inf - h) / tau_h
:	n' = (n_inf - n) / tau_n
:}

PROCEDURE states() {	: this discretized form is more stable
	evaluate_fct(v)
	m = m + m_exp * (m_inf - m)
	h = h + h_exp * (h_inf - h)
	n = n + n_exp * (n_inf - n)
	VERBATIM
	return 0;
	ENDVERBATIM
}

UNITSOFF
INITIAL {
:
:  Q10 was assumed to be 3 for both currents
:
	tadj = 3.0 ^ ((celsius-36)/ 10 )
	evaluate_fct(v)
	m= m_inf
	h= h_inf
	n= n_inf
}

PROCEDURE evaluate_fct(v(mV)) { LOCAL a,b,v2

	v2 = v - vtraub : convert to traub convention

	a = 0.32 * (13-v2) / ( exp((13-v2)/4) - 1)
	b = 0.28 * (v2-40) / ( exp((v2-40)/5) - 1)
	tau_m = 1 / (a + b) / tadj
	m_inf = a / (a + b)

	a = 0.128 * exp((17-v2)/18)
	b = 4 / ( 1 + exp((40-v2)/5) )
	tau_h = 1 / (a + b) / tadj
	h_inf = a / (a + b)

	a = 0.032 * (15-v2) / ( exp((15-v2)/5) - 1)
	b = 0.5 * exp((10-v2)/40)
	tau_n = 1 / (a + b) / tadj
	n_inf = a / (a + b)

	m_exp = 1 - exp(-dt/tau_m)
	h_exp = 1 - exp(-dt/tau_h)
	n_exp = 1 - exp(-dt/tau_n)
}

UNITSON