State and location dependence of action potential metabolic cost (Hallermann et al., 2012)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:144526
With this model of a layer 5 pyramidal neuron the state and location dependence of the ATP usage and the metabolic efficiency of action potentials can be analyzed. Model parameters were constrained by direct subcellular recordings at dendritic, somatic and axonal compartments.
Reference:
1 . Hallermann S, de Kock CP, Stuart GJ, Kole MH (2012) State and location dependence of action potential metabolic cost in cortical pyramidal neurons. Nat Neurosci 15:1007-14 [PubMed]
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: Neocortex;
Cell Type(s): Neocortex V1 L6 pyramidal corticothalamic GLU cell;
Channel(s): I Na,t; I K;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Action Potential Initiation; Action Potentials;
Implementer(s): Hallermann, Stefan [hallermann at medizin.uni-leipzig.de]; Kole, Maarten [m.kole at nin.knaw.nl];
Search NeuronDB for information about:  Neocortex V1 L6 pyramidal corticothalamic GLU cell; I Na,t; I K;
/
HallermannEtAl2012
readme.txt *
Cad.mod *
CaH.mod *
CaT.mod *
charge.mod *
h.mod *
Kca.mod *
Kv.mod *
Kv1_axonal.mod *
Kv7.mod *
na8st.mod
nax8st.mod
28_04_10_num19.hoc *
all_28_04_10_num19.ses *
Cell parameters.hoc
charge.hoc *
mosinit.hoc *
                            
TITLE Axonal voltage-gated potassium current

COMMENT
	Hallermann, de Kock, Stuart and Kole, Nature Neuroscience, 2012
	doi:10.1038/nn.3132
	
	n8*h1 + n8*h2 Hodgkin-Huxley model
ENDCOMMENT


NEURON {
	SUFFIX Kv1
	USEION k READ ek WRITE ik
	RANGE gkv1, ikv1, gbar
	GLOBAL ninf, ntau
	GLOBAL h1inf, h1tau
	GLOBAL h2inf, h2tau
	GLOBAL h3inf, h3tau
}

UNITS {
	(mV) = (millivolt)
	(mA) = (milliamp)
	(nA) = (nanoamp)
	(pA) = (picoamp)
	(S)  = (siemens)
	(nS) = (nanosiemens)
	(pS) = (picosiemens)
	(um) = (micron)
	(molar) = (1/liter)
	(mM) = (millimolar)		
}


CONSTANT {
:	ek = -98 (mV)
	a1 = 48.02279
	a2 = 42.662
	b1 = 58.44509
	c1 = 13.44182
	c2 = 49.38797

	a1H1 = 1.300293e-03
	a2H1 = 6.247311
	b2H1 = 66.13843
	c1H1 = 8.611435
	c2H1 = 7.948768

	a12H2fact = 1.554639e-02
	propH2 = 0.73157
	sToMs = 0.001
}


PARAMETER {
	v (mV)

	vShift = 0
	vShift_inact = 0
	gbar (pS/um2)
	temp = 33	(degC)		: original temp 
	q10  = 3			: temperature sensitivity
	q10h  = 3			: temperature sensitivity for inactivation
	celsius		(degC)
}


ASSIGNED {
 	ik (mA/cm2) 
 	ikv1 (mA/cm2) 
	gkv1  (mho/cm2)
	ek (mV)

	ninf
	ntau (ms)
	nalpha (1/ms)
	nbeta (1/ms)

	h1inf
	h1tau (ms)
	h1alpha (1/ms)
	h1beta (1/ms)

	h2inf
	h2tau (ms)
	h2alpha (1/ms)
	h2beta (1/ms)

	h3inf
	h3tau (ms)
	h3alpha (1/ms)
	h3beta (1/ms)

	tadj
	tadjh
}

STATE { 
	n
	h1
	h2
}

INITIAL {
	rates(v)
	n = ninf
	h1 = h1inf
	h2 = h2inf
}

BREAKPOINT {
	SOLVE states METHOD cnexp
      	gkv1 = gbar * ( (1-propH2)*n^8*h1 + propH2*n^8*h2 )
	ikv1 = (1e-4)*gkv1 * (v - ek)
	ik = ikv1
}

DERIVATIVE states {
	rates(v)
	n' = (ninf-n)/ntau
	h1' = (h1inf-h1)/h1tau 
	h2' = (h2inf-h2)/h2tau 
}

PROCEDURE rates(v (mV)) {

	tadj = q10^((celsius - temp)/10)
	tadjh = q10h^((celsius - temp)/10)

	nalpha = tadj*nalphafkt(v-vShift)
	nbeta = tadj*nbetafkt(v-vShift)
	ninf = nalpha/(nalpha+nbeta) 
	ntau = 1/(nalpha + nbeta)

	h1alpha = tadjh*h1alphafkt(v-vShift-vShift_inact)
	h1beta = tadjh*h1betafkt(v-vShift-vShift_inact)
	h1inf = h1alpha/(h1alpha+h1beta) 
	h1tau = 1/(h1alpha + h1beta)

	h2alpha = tadjh*h2alphafkt(v-vShift-vShift_inact)
	h2beta = tadjh*h2betafkt(v-vShift-vShift_inact)
	h2inf = h2alpha/(h2alpha+h2beta) 
	h2tau = 1/(h2alpha + h2beta)
}

FUNCTION nalphafkt(v (mV)) (1/ms) {
	nalphafkt = sToMs * a1*(-(v+b1))/( exp(-(v+b1)/c1) -1)
}

FUNCTION nbetafkt(v (mV)) (1/ms) {
	nbetafkt = sToMs * a2*exp(-(v)/c2)
}

FUNCTION h1alphafkt(v (mV)) (1/ms) {
	h1alphafkt = sToMs * a1H1*exp(-(v)/c1H1)
}

FUNCTION h1betafkt(v (mV)) (1/ms) {
	h1betafkt = sToMs * a2H1/(exp(-(v+b2H1)/c2H1)+1)
}

FUNCTION h2alphafkt(v (mV)) (1/ms) {
	h2alphafkt = sToMs * a12H2fact*a1H1*exp(-(v)/c1H1)
}

FUNCTION h2betafkt(v (mV)) (1/ms) {
	h2betafkt = sToMs * a12H2fact*a2H1/(exp(-(v+b2H1)/c2H1)+1)
}

Loading data, please wait...