Networks of spiking neurons: a review of tools and strategies (Brette et al. 2007)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:83319
This package provides a series of codes that simulate networks of spiking neurons (excitatory and inhibitory, integrate-and-fire or Hodgkin-Huxley type, current-based or conductance-based synapses; some of them are event-based). The same networks are implemented in different simulators (NEURON, GENESIS, NEST, NCS, CSIM, XPP, SPLIT, MVAspike; there is also a couple of implementations in SciLab and C++). The codes included in this package are benchmark simulations; see the associated review paper (Brette et al. 2007). The main goal is to provide a series of benchmark simulations of networks of spiking neurons, and demonstrate how these are implemented in the different simulators overviewed in the paper. See also details in the enclosed file Appendix2.pdf, which describes these different benchmarks. Some of these benchmarks were based on the Vogels-Abbott model (Vogels TP and Abbott LF 2005).
References:
1 . Vogels TP, Abbott LF (2005) Signal propagation and logic gating in networks of integrate-and-fire neurons. J Neurosci 25:10786-95 [PubMed]
2 . Brette R, Rudolph M, Carnevale T, Hines M, Beeman D, Bower JM, Diesmann M, Morrison A, Goodman PH, Harris FC, Zirpe M, Natschläger T, Pecevski D, Ermentrout B, Djurfeldt M, Lansner A, Rochel O, Vieville T, Muller E, Davison AP, El Boustani S, Destexhe A (2007) Simulation of networks of spiking neurons: a review of tools and strategies. J Comput Neurosci 23:349-98 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism:
Cell Type(s): Abstract integrate-and-fire leaky neuron;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON; GENESIS; NEST; C or C++ program; XPP; CSIM; NCS; SPLIT; MVASpike; SciLab; Brian; PyNN; Python;
Model Concept(s): Activity Patterns; Methods;
Implementer(s): Carnevale, Ted [Ted.Carnevale at Yale.edu]; Hines, Michael [Michael.Hines at Yale.edu]; Davison, Andrew [Andrew.Davison at iaf.cnrs-gif.fr]; Destexhe, Alain [Destexhe at iaf.cnrs-gif.fr]; Ermentrout, Bard [bard_at_pitt.edu]; Brette R; Bower, James; Beeman, Dave; Diesmann M; Morrison A ; Goodman PH; Harris Jr, FC; Zirpe M ; Natschlager T ; Pecevski D ; Djurfeldt M; Lansner, Anders [ala at kth.se]; Rochel O ; Vieville T ; Muller E ; El Boustani, Sami [elboustani at unic.cnrs-gif.fr]; Rudolph M ;
//genesis

/* FILE INFORMATION
** "Generic" excitatory (glutamate) and inhibitory (GABA) synaptically
**  activated channels  (based on mitsyn.g by Upi Bhalla)
**
** Modified by D. Beeman for conductances similar to those used by
** T. Vogels and L. Abbott, J. Neurosci. 25: 10786-10795

** The channels have a dual exponential type conductance change, with a
** rapid rise to gmax for each synaptic event.
**
*/

// CONSTANTS
float EGlu = 0.0
float EGABA = -0.08
float SOMA_A = 20e-9
float GGlu = SOMA_A * 50 // this will get changed
float GGABA = SOMA_A * 50

//===================================================================
//                     SYNAPTIC CHANNELS
//===================================================================


function make_Ex_channel
	if ({exists Ex_channel})
		return
	end
        float tau1 = 0.005
        float tau2 = 0.001
	create		synchan	Ex_channel
    	setfield	        Ex_channel \
		Ek			{EGlu} \
		tau1		{tau1} \	// sec
		tau2		{tau2} \ 	// sec
		gmax		{GGlu} // Siemens
end

function make_Inh_channel
	if ({exists Inh_channel})
		return
	end
        float tau1 = 0.010
        float tau2 = 0.001
	create		synchan	Inh_channel
    	setfield	        Inh_channel \
	Ek			{ EGABA } \
        tau1            {tau1} \        // sec
        tau2            {tau2} \        // sec
	gmax		{GGABA}		// Siemens
end


function make_iEx_channel
	if ({exists Ex_channel})
		return
	end
        float tau1 = 0.005
        float tau2 = 0.001
	create		isynchan	Ex_channel
    	setfield	        Ex_channel \
		Ek			{EGlu} \
		tau1		{tau1} \	// sec
		tau2		{tau2} \ 	// sec
		gmax		{GGlu} // Siemens
end

function make_iInh_channel
	if ({exists Inh_channel})
		return
	end
        float tau1 = 0.010
        float tau2 = 0.001
	create		isynchan	Inh_channel
    	setfield	        Inh_channel \
	Ek			{ EGABA } \
        tau1            {tau1} \        // sec
        tau2            {tau2} \        // sec
	gmax		{GGABA}		// Siemens
end

Loading data, please wait...