Parametric computation and persistent gamma in a cortical model (Chambers et al. 2012)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:144579
Using the Traub et al (2005) model of the cortex we determined how 33 synaptic strength parameters control gamma oscillations. We used fractional factorial design to reduce the number of runs required to 4096. We found an expected multiplicative interaction between parameters.
Reference:
1 . Chambers JD, Bethwaite B, Diamond NT, Peachey T, Abramson D, Petrou S, Thomas EA (2012) Parametric computation predicts a multiplicative interaction between synaptic strength parameters that control gamma oscillations. Front Comput Neurosci 6:53 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Axon; Synapse; Channel/Receptor; Dendrite;
Brain Region(s)/Organism:
Cell Type(s): Neocortex V1 L6 pyramidal corticothalamic GLU cell; Neocortex V1 L2/6 pyramidal intratelencephalic GLU cell; Neocortex V1 interneuron basket PV GABA cell; Neocortex fast spiking (FS) interneuron; Neocortex spiny stellate cell; Neocortex spiking regular (RS) neuron; Neocortex spiking low threshold (LTS) neuron;
Channel(s): I A; I K; I K,leak; I K,Ca; I Calcium; I_K,Na;
Gap Junctions: Gap junctions;
Receptor(s): GabaA; AMPA; NMDA;
Gene(s):
Transmitter(s): Gaba; Glutamate;
Simulation Environment: NEURON;
Model Concept(s): Oscillations; Parameter sensitivity;
Implementer(s): Thomas, Evan [evan at evan-thomas.net]; Chambers, Jordan [jordandchambers at gmail.com];
Search NeuronDB for information about:  Neocortex V1 L6 pyramidal corticothalamic GLU cell; Neocortex V1 L2/6 pyramidal intratelencephalic GLU cell; Neocortex V1 interneuron basket PV GABA cell; GabaA; AMPA; NMDA; I A; I K; I K,leak; I K,Ca; I Calcium; I_K,Na; Gaba; Glutamate;
/
FRBGamma
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 *
rand.mod *
ri.mod
traub_nmda.mod *
                            
COMMENT
pulsesyn.mod 
For use to make pulses for the ectopic current injection into the
axons of the Traub et al 2005 model.  This replaces the role of the
curr_cellname currents in the FORTRAN code.

The point process is located in an axon compartment of the cell
receiving this (default) infrequent background stimulus.  A netstim is
set to the poisson probability desired and to this point process.

The variables amp (current amplitude in nanoamps when on) and
time_interval (milliseconds) (length of time to keep injected current
on for each event) are the only two variables that this point process
expects to be set before running the simulation.

Tom Morse, Michael Hines
ENDCOMMENT
NEURON {
	POINT_PROCESS PulseSyn
	RANGE time_interval,  i, amp, instantaneous_amp, on
	NONSPECIFIC_CURRENT i
}

UNITS {
	(nA) = (nanoamp)
	(mV) = (millivolt)
	(uS) = (microsiemens)
}

PARAMETER {
	time_interval = 0.4 (ms) <1e-9,1e9> : the time of one pulse
	amp = 0.4 (nA) : positive values depolarize the cell
}

ASSIGNED {
	i (nA)
	instantaneous_amp (nA)
	on (1) : state of Point Proc. 0 = off, 1 = on
}

INITIAL {
	instantaneous_amp = 0
	on = 0
}

BREAKPOINT {

	i = instantaneous_amp : in groucho.f the curr_cellname currents are
		: present in the diff eqs with the opposite sign
		: as the ampa and nmda therefore to be consistent
		: with this, e.g. the default value of 0.4 having the
		: same (excitatory) effect, the minus sign is included
		: in the net_receive equation marked with a (*)

}

NET_RECEIVE(weight (uS)) {
	if (flag>=1) {
		: self event arrived, terminate pulse
		instantaneous_amp = 0
		on = 0
	} else {
		: stimulus arrived, make or continue pulse
		if (on) {
			: if already processing a pulse then prolong the pulse
			net_move(t + time_interval)
		} else {
			net_send(time_interval, 1) : self event to terminate pulse
			on = 1
		}
		instantaneous_amp = - amp : see comment in BREAKPOINT.  (*)
	}
}