Network recruitment to coherent oscillations in a hippocampal model (Stacey et al. 2011)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:135903
"... Here we demonstrate, via a detailed computational model, a mechanism whereby physiological noise and coupling initiate oscillations and then recruit neighboring tissue, in a manner well described by a combination of Stochastic Resonance and Coherence Resonance. We develop a novel statistical method to quantify recruitment using several measures of network synchrony. This measurement demonstrates that oscillations spread via preexisting network connections such as interneuronal connections, recurrent synapses, and gap junctions, provided that neighboring cells also receive sufficient inputs in the form of random synaptic noise. ..."
Reference:
1 . Stacey WC, Krieger A, Litt B (2011) Network recruitment to coherent oscillations in a hippocampal computer model. J Neurophysiol 105:1464-81 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Hippocampus;
Cell Type(s): Hippocampus CA1 pyramidal GLU cell; Hippocampus CA3 pyramidal GLU cell; Hippocampus CA1 interneuron oriens alveus GABA cell; Hippocampus CA1 basket cell;
Channel(s): I Na,t; I A; I K; I h;
Gap Junctions: Gap junctions;
Receptor(s): GabaA; AMPA; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Oscillations;
Implementer(s): Lazarewicz, Maciej [mlazarew at gmu.edu]; Stacey, William [wstacey at med.umich.edu];
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; Hippocampus CA3 pyramidal GLU cell; Hippocampus CA1 interneuron oriens alveus GABA cell; GabaA; AMPA; NMDA; I Na,t; I A; I K; I h;
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
// NOTICE OF COPYRIGHT AND OWNERSHIP OF SOFTWARE
//
// Copyright 2010, The University Of Michigan
// 	
//   All rights reserved.
//   For research use only; commercial use prohibited.
//   No Distribution without permission of William Stacey
//   wstacey@umich.edu
//
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

// Definition of the synaptic properties in the network

begintemplate SynParam

public preCell, postCell, synName, tao1, tao2, Erev, synLocSec, synLoc, Npre, gmax, gmaxUnits, delay, synID, globalID, modFileName, r

strdef preCell, postCell, synName, modFileName

proc init() {
	
	preCell     = $s1 // Name of the presynaptic cell, e.g. Pyr
	postCell    = $s2 // Name of the postsynaptic cell, e.g Pyr
	synName     = $s3 // Usually the type of the synamse eg. AMPA
	tao1        = $4 
	tao2        = $5
	Erev        = $6
	modFileName = $s7 // name of the used mod file, it is used in the syn.tmp
	synLocSec   = $8  // ID 0->soma, 1->dendrite
	synLoc      = $9  // [0-1]
	Npre        = $10 // Number of the presynaptic connections from Pyr
	gmax        = $11 // gmax for connections from Pyr
	gmaxUnits   = $12 // gmax for connections from Pyr
	delay       = $13 // delay for connections from Pyr
	r           = $14 // NMDA/AMPA ratio
	synID       = -2 //$14 // synaptic ID used to define the connections in the conn.dat files
	globalID    = $15  // Global ID to identify the entity in SynParamSet

}

endtemplate SynParam


// This object keeps the description of synapses in the public list "synSet"


begintemplate SynParamSet

public synSet
objref synSet
strdef preCell, postCell, synName, tmpstr, tmpstr2, modFileName

proc init() { local i localobj fo, strFun
	tao1      = 0
	tao2      = 0
	Erev      = 0
	synLocSec = 0
	synLoc    = 0
	Npre      = 0
	gmax      = 0
	gmaxUnits = 0
	delay     = 0
	r         = 0
	
	synSet   = new List()
	strFun   = new StringFunctions()
	
	// READ synapses
	fo = new File("parameters/synapses.par")
	fo.ropen()
	while(!fo.eof()) {
	
		fo.gets(tmpstr)
		
		// Find in tmpstr all that follows non-blank character, and store it in tmpstr2
		strFun.tail(tmpstr, "[^\t]", tmpstr2)
		
		// Remove end of the line
		strFun.head(tmpstr2, "\n", tmpstr2)
		
		// Process data if nonepty line
		if (strFun.len(tmpstr2)>0 && strFun.substr(tmpstr, "//")==-1) {
		
			sscanf(tmpstr, "%[^,], %[^,], %[^,], %lf, %lf, %lf, %[^,], %d, %lf, %d, %lf, %d, %*lf, %*lf\n", preCell, postCell, synName, &tao1, &tao2, &Erev, modFileName, &synLocSec, &synLoc, &Npre, &gmax, &gmaxUnits)
			sscanf(tmpstr, "%*[^,], %*[^,], %*[^,], %*lf, %*lf, %*lf, %*[^,], %*d, %*lf, %*d, %*lf, %*d, %lf\n, %lf", &delay, &r)
			
			synSet.append(new SynParam( preCell, postCell, synName, tao1, tao2, Erev, modFileName, synLocSec, synLoc, Npre, gmax, gmaxUnits, delay, r, synSet.count()))
			//printf("%s, %s, %s, %lf, %lf, %lf, %s, %d, %lf, %d, %lf, %d, %lf\n", preCell, postCell, synName, tao1, tao2, Erev, modFileName, synLocSec, synLoc, Npre, gmax, gmaxUnits, delay, synSet.count())
		}
	}
	
	fo.close()
}

endtemplate SynParamSet

Loading data, please wait...