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]
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: Neocortex;
Cell Type(s): Neocortex L5/6 pyramidal 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 L5/6 pyramidal 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 *
                            
load_file("nrngui.hoc")
xopen("$(NEURONHOME)/lib/hoc/noload.hoc")
load_proc("nrnmainmenu")

xopen("28_04_10_num19.hoc")

xopen("Cell parameters.hoc")
xopen("charge.hoc")

parameters()
geom_nseg()
init_channels()

objref zz

zz = new Impedance()

func rn() { local rn
  init()  // make sure all changes to g, c, ri etc. have taken effect
  soma zz.loc(0.5)  // sets origin for impedance calculations to middle of soma
  zz.compute(0)  // DC input R
  soma { rn = zz.input(0.5) }  // rn is input R at middle of the soma
  return rn
}


t=5
tstop=580
steps_per_ms=40
dt=0.010		


proc init() {local saveDt, i

	finitialize(v_init)
	fcurrent()
	saveDt = dt
	dt = .5
	for i=1,500/dt fadvance()
	dt = saveDt


	init_channels()

	if (cvode.active()) {
		cvode.re_init()
	} else {
		fcurrent()
	}
	frecord_init()
}


load_file("all_28_04_10_num19.ses")



objref sl
sl = new SectionList()
sl.wholetree()

objref spbox
spbox = new VBox()
spbox.intercept(1)

objref sp
sp = new PlotShape(sl)
sp.show(0)

ncmap=13
vstep=0.0833
vlow=0
vhigh=vlow+(ncmap-1)*vstep
sp.colormap(ncmap,1)

i1=int(3*(ncmap-1)/8)
//print i1
for (i=0; i<=i1; i=i+1) {
	f=i/(3*(ncmap-1)/8)
	print i,f,0,255*f,255
	sp.colormap(i,0,255*f,255)
}
print " "
i2=int((ncmap-1)/2)
for (i=i1+1; i<=i2; i=i+1) {
	f=(i-3*(ncmap-1)/8)/((ncmap-1)/8)
	print i,f,0,255,255*(1-f)
	sp.colormap(i,0,255,255*(1-f))
}
print " "
i3=int(5*(ncmap-1)/8)
for (i=i2+1; i<=i3; i=i+1) {
	f=(i-(ncmap-1)/2)/((ncmap-1)/8)
	print i,f,255*f,255,0
	sp.colormap(i,255*f,255,0)
}
print " "
for (i=i3+1; i<=ncmap-1; i=i+1) {
	f=(i-5*(ncmap-1)/8)/(3*(ncmap-1)/8)
	print i,f,255,255*(1-f),0
	sp.colormap(i,255,255*(1-f),0)
} 

sp.variable("overl_charge_")
sp.exec_menu("Shape Plot")
//sp.view(-608.167, -740.999, 1548.33, 1812, 509, 84, 276, 323)
sp.scale(vlow,vhigh)

fast_flush_list.append(sp)
sp.save_name("fast_flush_list.")

spbox.intercept(0)
spbox.map("Shape plot",500,20,300,400)