Parvalbumin-positive basket cells differentiate among hippocampal pyramidal cells (Lee et al. 2014)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:153280
This detailed microcircuit model explores the network level effects of sublayer specific connectivity in the mouse CA1. The differences in strengths and numbers of synapses between PV+ basket cells and either superficial sublayer or deep sublayer pyramidal cells enables a routing of inhibition from superficial to deep pyramidal cells. At the network level of this model, the effects become quite prominent when one compares the effect on firing rates when either the deep or superficial pyramidal cells receive a selective increase in excitation.
Reference:
1 . Lee SH, Marchionni I, Bezaire M, Varga C, Danielson N, Lovett-Barron M, Losonczy A, Soltesz I (2014) Parvalbumin-positive basket cells differentiate among hippocampal pyramidal cells. Neuron 82:1129-44 [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: Hippocampus;
Cell Type(s): Hippocampus CA1 pyramidal GLU cell; Hippocampus CA1 basket cell;
Channel(s): I Sodium; I Calcium; I Potassium;
Gap Junctions:
Receptor(s): GabaA; Glutamate;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Detailed Neuronal Models; Connectivity matrix; Laminar Connectivity;
Implementer(s): Bezaire, Marianne [mariannejcase at gmail.com];
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; GabaA; Glutamate; I Sodium; I Calcium; I Potassium;
/
superdeep
stimulation
spontaneous_stimulation.hoc
                            
proc perfpathStims() { local i, wgt, reli, typei, jgid, celltype, idx, counter, jstart, jend, jtot localobj cell		// Connect the perforant path cells to the model cells
	// find ppspont index
	for celltype=0, numCellTypes-1 {
		if (cellType[celltype].is_art==1) {
			idx = celltype // assume only one type of artificial cell
			for celltype=0, numCellTypes-1 {
				if (cellType[celltype].is_art==0) {
					wgt = cellType[idx].wgtConns.x[celltype]
					if (wgt > 0) {
						for pcitr(&reli, &typei, &jgid, cellType[celltype].cellStartGid, cellType[celltype].cellEndGid) {
							if (pc.gid_exists(jgid)) {
								cell = pc.gid2cell(jgid)
								wgt = cellType[idx].wgtConns.x[celltype]
								if (cell.pre_list.o(idx).count()>0) {
									nc_appendo(jgid-cellType[celltype].cellEndGid-1+cellType[idx].cellStartGid, cell, idx, 0, wgt, 3)  // 1e-3
									cellType[idx].numCons.x[celltype] +=1
								}
							}
						}
					}
				}
			}
		}
	}
}
if (strcmp("Connectivity", "try_all_randfast")==0) { // only run this if the art stims are not being connected at another time
	perfpathStims()
}

proc setnoise() {local reli, typei, jgid, celltype, idx localobj cell 
	// find ppspont index
	for celltype=0, numCellTypes-1 {
		if (cellType[celltype].is_art==1) {
			idx = celltype
			for pcitr(&reli, &typei, &jgid, cellType[idx].cellStartGid, cellType[idx].cellEndGid) {
				cell = pc.gid2cell(jgid)
				ranstimlist.object(reli).r.negexp(1) // always use 1 for this - the interval for the netstim will set the 'rate'
													// for another example (which has the randomstream class defined differently,
													// and therefore calls different commands at different times) see the following file:
													// <http://senselab.med.yale.edu/modeldb/showmodel.asp?model=83319&file=\destexhe_benchmarks\NEURON\common\netstim.hoc>
													// use the ranstimlist because we can continue along this stream for a very long time

				cell.noiseFromRandom(ranstimlist.object(reli).r)
			}
		}
	}
}
setnoise()