A single column thalamocortical network model (Traub et al 2005)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:45539
To better understand population phenomena in thalamocortical neuronal ensembles, we have constructed a preliminary network model with 3,560 multicompartment neurons (containing soma, branching dendrites, and a portion of axon). Types of neurons included superficial pyramids (with regular spiking [RS] and fast rhythmic bursting [FRB] firing behaviors); RS spiny stellates; fast spiking (FS) interneurons, with basket-type and axoaxonic types of connectivity, and located in superficial and deep cortical layers; low threshold spiking (LTS) interneurons, that contacted principal cell dendrites; deep pyramids, that could have RS or intrinsic bursting (IB) firing behaviors, and endowed either with non-tufted apical dendrites or with long tufted apical dendrites; thalamocortical relay (TCR) cells; and nucleus reticularis (nRT) cells. To the extent possible, both electrophysiology and synaptic connectivity were based on published data, although many arbitrary choices were necessary.
Reference:
1 . Traub RD, Contreras D, Cunningham MO, Murray H, LeBeau FE, Roopun A, Bibbig A, Wilent WB, Higley MJ, Whittington MA (2005) Single-column thalamocortical network model exhibiting gamma oscillations, sleep spindles, and epileptogenic bursts. J Neurophysiol 93:2194-232 [PubMed]
2 . Traub RD, Contreras D, Whittington MA (2005) Combined experimental/simulation studies of cellular and network mechanisms of epileptogenesis in vitro and in vivo. J Clin Neurophysiol 22:330-42 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Neocortex; Thalamus;
Cell Type(s): Thalamus geniculate nucleus/lateral principal GLU cell; Thalamus reticular nucleus GABA cell; Neocortex U1 L6 pyramidal corticalthalamic GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell; Neocortex fast spiking (FS) interneuron; Neocortex spiking regular (RS) neuron; Neocortex spiking low threshold (LTS) neuron;
Channel(s): I Na,p; I Na,t; I L high threshold; I T low threshold; I A; I K; I M; I h; I K,Ca; I Calcium; I A, slow;
Gap Junctions: Gap junctions;
Receptor(s): GabaA; AMPA; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON; FORTRAN;
Model Concept(s): Activity Patterns; Bursting; Temporal Pattern Generation; Oscillations; Simplified Models; Epilepsy; Sleep; Spindles;
Implementer(s): Traub, Roger D [rtraub at us.ibm.com];
Search NeuronDB for information about:  Thalamus geniculate nucleus/lateral principal GLU cell; Thalamus reticular nucleus GABA cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell; Neocortex U1 L6 pyramidal corticalthalamic GLU cell; GabaA; AMPA; NMDA; I Na,p; I Na,t; I L high threshold; I T low threshold; I A; I K; I M; I h; I K,Ca; I Calcium; I A, slow;
Files displayed below are from the implementation
/
nrntraub
mod
alphasyndiffeq.mod *
alphasynkin.mod *
alphasynkint.mod *
ampa.mod *
ar.mod *
cad.mod *
cal.mod *
cat.mod *
cat_a.mod *
gabaa.mod *
iclamp_const.mod *
k2.mod *
ka.mod *
ka_ib.mod *
kahp.mod *
kahp_deeppyr.mod *
kahp_slower.mod *
kc.mod *
kc_fast.mod *
kdr.mod *
kdr_fs.mod *
km.mod *
naf.mod *
naf_tcr.mod *
naf2.mod *
nap.mod *
napf.mod *
napf_spinstell.mod *
napf_tcr.mod *
par_ggap.mod *
pulsesyn.mod *
rampsyn.mod *
ri.mod *
traub_nmda.mod *
                            
COMMENT
traub_nmda.mod
Traub-like NMDA synaptic current
This file is a merge of rampsyn.mod and expsyn.mod
The Traub et al 2005 paper contains a nmda synaptic current which
when activated has a linear ramp (in conductance) up to the conductance scale
over 5ms, then there is an exponential decay (in conductance).
Tom Morse, Michael Hines
ENDCOMMENT
NEURON {
	POINT_PROCESS NMDA
	RANGE tau, time_interval, e, i,weight, NMDA_saturation_fact, flag, g
	NONSPECIFIC_CURRENT i
	GLOBAL gfac
: for network debugging
:	USEION nmda1 WRITE inmda1 VALENCE 0
:	USEION nmda2 WRITE inmda2 VALENCE 0
:	RANGE srcgid, targid, comp, synid
}

UNITS {
	(nA) = (nanoamp)
	(mV) = (millivolt)
	(uS) = (microsiemens)
	(mM) = (milli/liter)
}

PARAMETER {
	tau = 130.5 (ms)  <1e-9,1e9>	: NMDA conductance decay time constant
: default choice is tauNMDA_suppyrRS_to_suppyrRS=130.5e0, a sample tau from groucho.f
	time_interval = 5 (ms) <1e-9,1e9>
	e = 0	(mV)
	weight = 2.5e-8 (uS)	: example conductance scale from Traub 2005 et al
			 	: gNMDA_suppyrRS_to_suppyrRS (double check units)
	NMDA_saturation_fact= 80e0 (1) : this saturation factor is multiplied into
		: the conductance scale, weight, for testing against the
		: instantaneous conductance, to see if it should be limited.
: FORTRAN nmda subroutine constants and variables here end with underbar 
	A_ = 0 (1) : initialized with below in INITIAL, assigned in each integrate_celltype.f
	BB1_ = 0 (1) : assigned in each integrate_celltype.f
	BB2_ = 0 (1) : assigned in each integrate_celltype.f
	Mg = 1.5 (mM) : a FORTRAN variable set in groucho.f
	gfac = 1
}

ASSIGNED {
	v (mV)
	i (nA)
	event_count (1)	: counts number of syn events being processed
	k (uS/ms) : slope of ramp or 0
	g (uS)
	A1_ (1)
	A2_ (1)
	B1_ (1)
	B2_ (1)
	Mg_unblocked (1)
:	inmda1 (nA)
:	inmda2 (nA)
:	srcgid
:	targid
:	comp
:	synid
}

STATE {
	A (uS)
	B (uS)
}

INITIAL {
	A_ =  exp(-2.847)  : assigned in each integrate_celltype.f
	BB1_ = exp(-.693)  : assigned in each integrate_celltype.f
	BB2_ = exp(-3.101) : assigned in each integrate_celltype.f
	g = 0
	A = 0
	B = 0
	k = 0
}

BREAKPOINT {
	SOLVE state METHOD cnexp
	g = A + B
	if (g > NMDA_saturation_fact * weight) { g = NMDA_saturation_fact * weight }
	g = g*gfac
	i = g*Mg_unblocked*(v - e)
:	inmda1 = g
:	inmda2 = -g
}

DERIVATIVE state {
	Mg_factor()
	B' = -B/tau
	A' = k
}

NET_RECEIVE(weight (uS)) {
	if (flag>=1) {
		: self event arrived, terminate ramp up
	: remove one event's contribution to the slope, k
		k = k - weight/time_interval
	: Transfer the conductance over from A to B
		B = B + weight
		A = A - weight
	} else {
		: stimulus arrived, make or continue ramp
		net_send(time_interval, 1) : self event to terminate ramp
	: add one event ramp to slope k:
		k = k + weight/time_interval
:	note there are no state discontinuities at event start since the begining of a ramp
:	only has a discontinuous change in derivative
	}
}

: an NMDA subroutine converted from FORTRAN whose sole purpose was to compute the number
: of open nmda recpt channels due to relief from Mg block

PROCEDURE Mg_factor() {
UNITSOFF
           A1_ = exp(-.016*v - 2.91)
           A2_ = 1000.0 * Mg * exp (-.045 * v - 6.97)
           B1_ = exp(.009*v + 1.22)
           B2_ = exp(.017*v + 0.96)
UNITSON
           Mg_unblocked  = 1.0/(1.0 + (A1_+A2_)*(A1_*BB1_ + A2_*BB2_) /
                 (A_*A1_*(B1_+BB1_) + A_*A2_*(B2_+BB2_))  )
}