5-neuron-model of neocortex for producing realistic extracellular AP shapes (Van Dijck et al. 2012)

 Download zip file 
Help downloading and running models
Accession:226812
This is a 5-neuron model of neocortex, containing one tufted layer-5 pyramidal cell, two non-tufted pyramidal cells, and two inhibitory interneurons. It was used to reproduce extracellular spike shapes in a study comparing algorithms for spike sorting and electrode selection. The neuron models are adapted from Dyhrfjeld-Johnsen et al. (2005).
Reference:
1 . Van Dijck G, Seidl K, Paul O, Ruther P, Van Hulle MM, Maex R (2012) Enhancing the yield of high-density electrode arrays through automated electrode selection. Int J Neural Syst 22:1-19 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Extracellular; Neuron or other electrically excitable cell; Realistic Network;
Brain Region(s)/Organism:
Cell Type(s): Neocortex U1 L5B pyramidal pyramidal tract GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: GENESIS;
Model Concept(s):
Implementer(s): Maex, Reinoud [reinoud at bbf.uia.ac.be];
Search NeuronDB for information about:  Neocortex U1 L5B pyramidal pyramidal tract GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell;
/
Five-neuron-neocortex
Granule_cell
Axon10.p
Axon20.p
Gran_chan.g
Gran_chan_KA.g *
Gran_chan_KCa.g *
Gran_chan_KCa_tab.g *
Gran_chan_tab.g *
Gran_comp.g
Gran_comp_soma_dend.g
Gran_comp_soma_dend_axon.g
Gran_comp_soma_dend_noH.g
Gran_const.g *
Gran_synchan.g
Gran1M0.p *
Gran1M0_dend.p
Gran1M0_dend_axon.p
Gran1M0_dend10.p
Gran1M0_dend20.p
Gran1M0_dend3D.p
Gran1M0_dend3D_axon.p
Gran1M0_dend3D_axon10_RM2.p
Gran1M0_dend3D_axon20_RM2.p
Gran1M0_dend3D_axon3.p
Gran1M0_dend3D_axon3_RM2.p
Gran1M0_dend3D_axon5_RM2.p
Gran1M0_dend40.p
tabCaHVA37.data
tabH37.data
tabInNa37.data
tabKA37.data
tabKCa37.data
tabKDr37.data
TEST.g
TEST_dend.g
TEST_exp.g
TEST_gapjunction.g
TEST_soma_dend_axon.g
TEST2_gapjunction.g
TEST2exp_gapjunction.g
TEST3_gapjunction.g
TEST4_gapjunction.g
                            
// genesis


/*********************************************************************
**               The current equations themselves 
*********************************************************************/

float offset = 0.01

function make_Granule_KA

    int i, cdivs
    float zinf, ztau, c, dc, cmin, cmax
    float x, dx, y
    float a, b
    /* The folowing variables are temporary (not temperature) variables
	used to speed up computations */
    float mintau
    float max
    float tau
    float temp1
    float temp2


/*  K A-current  fast transient potassium channel, following Bardoni and Belluzzi 1993 */

	create tabchannel Gran_KA
	setfield Gran_KA Ek {EK} Gbar 3.67 Ik 0 Gk 0 Xpower 3 Ypower 1  \
	    Zpower 0

	call Gran_KA TABCREATE X {tab_xdivs} {tab_xmin} {tab_xmax}
	x = {tab_xmin} - {offset}
	dx = ({tab_xmax} - {tab_xmin})/{tab_xdivs}

        openfile KA_a_max.test w
        openfile KA_a_tau.test w

	for (i = 0; i <= ({tab_xdivs}); i = i + 1)

		tau = 0.410 * ({exp {(- (x * 1e3 + 43.5) / 42.8)}}) + 0.167

                max = 1 / (1 + {exp {((-46.7 - x * 1e3) / 19.8)}})

		setfield Gran_KA X_A->table[{i}] {tau * 0.001}    //    0.005}
		setfield Gran_KA X_B->table[{i}] {max}

                writefile KA_a_max.test {x} {getfield Gran_KA X_B->table[{i}]}
                writefile KA_a_tau.test {x} {getfield Gran_KA X_A->table[{i}]}

		x = x + dx
	end
        tweaktau Gran_KA X
	setfield Gran_KA X_A->calc_mode 1 X_B->calc_mode 1

        closefile KA_a_max.test
        closefile KA_a_tau.test

	call Gran_KA TABCREATE Y {tab_xdivs} {tab_xmin} {tab_xmax}
	x = {tab_xmin} - {offset}

        openfile KA_i_max.test w
        openfile KA_i_tau.test w

	for (i = 0; i <= ({tab_xdivs}); i = i + 1)

                tau = 10.8 + 30 * x  + \
                      1 / (57.9 * {exp {x * 127}} + 134e-6 * {exp {- x * 59}})

                max = 1 / (1 + {exp {((x * 1e3 + 78.8) / 8.4)}})

		setfield Gran_KA Y_A->table[{i}] {tau * 0.001} // 0.0002} // correction for sec and for 37 deg C
		setfield Gran_KA Y_B->table[{i}] {max}

                writefile KA_i_max.test {x} {getfield Gran_KA Y_B->table[{i}]}
                writefile KA_i_tau.test {x} {getfield Gran_KA Y_A->table[{i}]}

		x = x + dx
	end
        tweaktau Gran_KA Y
	setfield Gran_KA Y_A->calc_mode 1 Y_B->calc_mode 1

        closefile KA_i_max.test
        closefile KA_i_tau.test

//        call Gran_KA TABSAVE tabKA37.data
end




Loading data, please wait...