Synaptic integration by MEC neurons (Justus et al. 2017)

 Download zip file 
Help downloading and running models
Accession:222359
Pyramidal cells, stellate cells and fast-spiking interneurons receive running speed dependent glutamatergic input from septo-entorhinal projections. These models simulate the integration of this input by the different MEC celltypes.
Reference:
1 . Justus D, Dalügge D, Bothe S, Fuhrmann F, Hannes C, Kaneko H, Friedrichs D, Sosulina L, Schwarz I, Elliott DA, Schoch S, Bradke F, Schwarz MK, Remy S (2017) Glutamatergic synaptic integration of locomotion speed via septoentorhinal projections. Nat Neurosci 20:16-19 [PubMed]
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: Entorhinal cortex;
Cell Type(s): Entorhinal cortex pyramidal cell; Entorhinal cortex stellate cell; Entorhinal cortex fast-spiking interneuron;
Channel(s): I K; I Na,t; I h;
Gap Junctions:
Receptor(s): AMPA;
Gene(s):
Transmitter(s): Glutamate;
Simulation Environment: NEURON;
Model Concept(s): Synaptic Integration; Simplified Models;
Implementer(s): Justus, Daniel [daniel.justus at dzne.de];
Search NeuronDB for information about:  AMPA; I Na,t; I K; I h; Glutamate;
/
NEURON_mEC
data
README.html
exp2syn_depress.mod
h.mod *
kap.mod *
kdr.mod *
nax.mod
vecevent.mod *
cinit.hoc
EPSPparam.hoc
GUI.hoc
GUIfunctions.hoc
init.hoc
insert_noise_Syn.hoc
insert_real_Syn.hoc
insertsyn.hoc
morphology.hoc
mosinit.hoc *
Parameters.hoc
run_real_input.hoc
screenshot1.png
screenshot2.png
screenshot3.png
Voltage.ses
                            
objref SynB[10000]
objref NC_rand[10000]
objref NetS_rand[10000]
objref rexp
objref PoissonStimtimes[10000]


objref APc,APrec

nSyn=0


proc insert_noise_Syn() {			// section, num, start,stop,deltaStim,seed
	nSyn=0
	objref SynB[10000]
	objref rexp
	objref PoissonStimtimes[10000]
	
	soma APc=new APCount(.5)
	APrec=new Vector()
	APc.thresh=-20
	APc.record(APrec)
	
	rexp=new Random($6)
	
	num=$2
	
	A=0
	forsec $o1{
		for (x) A+=area(x)
	}
	
	A_rem=A
	num_rem=num
	nSyn=0
	
	forsec $o1{
		A_branch=0
		for (x) A_branch+=area(x)
		num_branch=int(num_rem*(A_branch/A_rem)+0.5)
			
		for i=1,num_branch {
			nSyn+=1
			
			loc=i/((num_branch+1))
			
			SynB[nSyn]=new Exp2Syn_depress(loc)

			SynB[nSyn].tau1=.01
			SynB[nSyn].tau2=45
			
			SynB[nSyn].tau_recover=300
			SynB[nSyn].attenuation=0.5
			
			SynB[nSyn].e=0	
		}
		
		A_rem-=A_branch
		num_rem-=num_branch
	}
	print nSyn
	
	rexp.negexp($5)
	startstim=$3
	stopstim=$4
	stepstim=$5
	
	for i=1,num{
		ii=0
		PoissonStimtimes[i]=new Vector()
				
		newstim=rexp.repick()+startstim
		if(newstim<=stopstim){
			PoissonStimtimes[i].append(newstim)
			newstim=PoissonStimtimes[i].x(ii)+rexp.repick()
								
			while(newstim<stopstim){
				PoissonStimtimes[i].append(newstim)
				ii+=1
				newstim=PoissonStimtimes[i].x(ii)+.1+rexp.repick()
			}
		}

		NetS_rand[i]=new VecStim()
		NetS_rand[i].play(PoissonStimtimes[i])

		NC_rand[i]=new NetCon(NetS_rand[i],SynB[i])
		NC_rand[i].weight=9e-4
		NC_rand[i].delay=0
	}
	cinit()
}

Loading data, please wait...