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

float dt = 20e-6

str disk = "results_gap/"

int amp = {1 / dt}
str a = (amp)
int i, k, l
str el, name
float t

/*********************************************************************
** Simple Granule cell model script  (#1)
** Carl Piaf BBF 1994
*********************************************************************/

str filename = (disk) @ "test"
/* always include these default definitions! */
include defaults 
str cellpath = "/Granule"

/* Purkinje cell constants */
include Gran_const.g 

/* special scripts  to create the prototypes */
include Gran_chan_tab.g
//include Gran_synchan2_biexpGABA.g
include Gran_synchan.g 
include Gran_comp.g 


/* Set the clocks */
for (i = 0; i <= 7; i = i + 1)
	setclock {i} {dt}
end
setclock 8 2.0e-5
setclock 9 1

/* To ensure that all subsequent elements are made in the library */
if (! {exists /library/granule})
    create neutral /library/granule
end

ce /library/granule

/* These make the prototypes of channels and compartments that can be
**  invoked in .p files */

make_Granule_chans

make_Granule_syns

make_Granule_comps
/*
call Gran_InNa TABSAVE tabInNa37.data
call Gran_KDr  TABSAVE tabKDr37.data
call Gran_KA   TABSAVE tabKA37.data
call Gran_CaHVA TABSAVE tabCaHVA37.data
call Gran_H    TABSAVE tabH37.data
call Moczyd_KC TABSAVE tabKCa37.data
*/

//make_Vmgraph

/* create the model and set up the run cell mode */
// read cell data from .p file
readcell Gran1M0.p  {cellpath}  // Gran1M0.p {cellpath}


   createmap {cellpath} /granule_cell_layer \
             2  1 -delta 1.0 0.0 -origin 0.0 0.0

   disable {cellpath}

//   addmsg /granule_cell_layer/Granule[0]/soma /granule_cell_layer/Granule[1]/soma CHANNEL 0.000000001 Vm

create neutral /library/granule/soma/mf_presyn
disable /library/granule/soma/mf_presyn
setfield /library/granule/soma/mf_presyn z 0
// Comment out whichever one to switch it off 
//addmsg /library/granule/soma/mf_presyn /Granule/soma/GABAA ACTIVATION z
//addmsg /library/granule/soma/mf_presyn /Granule/soma/GABAB ACTIVATION z
//addmsg /library/granule/soma/mf_presyn /Granule/soma/mf_NMDA ACTIVATION z
//addmsg /library/granule/soma/mf_presyn /Granule/soma/mf_AMPA ACTIVATION z


/* Create the output element */
create asc_file /output/plot_out
//create disk_out /output/plot_out
useclock /output/plot_out 8
enable /output
enable /output/plot_out

ce {cellpath}

// setup the hines solver

echo preparing hines solver...

       create hsolve /granule_cell_layer/Granule[0]/solve
       ce /granule_cell_layer/Granule[0]/solve
       setfield . path "../##[][TYPE=compartment]" comptmode 1 chanmode 4
//       call . SETUP


       create hsolve /granule_cell_layer/Granule[1]/solve
       ce /granule_cell_layer/Granule[1]/solve
       setfield . path "../##[][TYPE=compartment]" comptmode 1 chanmode 4
//       call . SETUP


   addmsg /granule_cell_layer/Granule[0]/soma /granule_cell_layer/Granule[1]/soma CHANNEL 0.000000001 Vm
   call 

setmethod 11


// setmethod 0


// addmsg {cellpath}/soma /output/plot_out SAVE Vm


el = ({findsolvefield /granule_cell_layer/Granule[0]/solve soma Vm})       //#1
addmsg /granule_cell_layer/Granule[0]/solve /output/plot_out SAVE {el}


el = ({findsolvefield /granule_cell_layer/Granule[1]/solve soma Vm})       //#1
addmsg /granule_cell_layer/Granule[1]/solve /output/plot_out SAVE {el}


setfield /output/plot_out filename {filename} initialize 1 leave_open 1  \
    flush 1
echo Output to {filename}

//check
reset



// Synaptic stimulation protocol
/*
setfield {cellpath}/soma inject 20.0e-12
call {cellpath}/solve HPUT {cellpath}/soma
step 0.3 -time
*/

/*
setfield {cellpath}/soma Em -0.065
setfield {cellpath}/soma Vm -0.0625
setfield {cellpath}/soma initVm -0.0625


call {cellpath}/solve HPUT {cellpath}/soma

*/

/*
// step 0.05 -time
setfield /library/granule/soma/mf_presyn z {amp}
step 1
setfield /library/granule/soma/mf_presyn z 0
step 100e-3 -time
*/

step 0.3 -t

// Current injection protocol

step 0.1 -time

setfield /granule_cell_layer/Granule[1]/soma inject 20.0e-12
call /granule_cell_layer/Granule[1]/solve HPUT /granule_cell_layer/Granule[1]/soma
step 0.5 -time

call /granule_cell_layer/Granule[1]/solve HSAVE /granule_cell_layer/Granule[1]/soma
setfield /granule_cell_layer/Granule[1]/soma inject 0.0e-12
call /granule_cell_layer/Granule[1]/solve HPUT /granule_cell_layer/Granule[1]/soma
step 0.2 -time








Loading data, please wait...