//DEFINITION OF CELL TEMPLATE begintemplate fibre public Presynapse public x,y,z public StimTrigger objref StimTrigger public nclist objectvar nclist //counting spikes public spiketimes,spikecount objref spiketimes,spikecount public syn objectvar syn public voltagem objref voltagem public randomseed public position create Presynapse //create compartment proc init() { x=$1 y=$2 z=$3 randomseed = $4 //Fabio´s Stuff spiketimes=new Vector() lastspikecount=0 voltagem=new Vector() Presynapse { //initialise and clear the 3D information pt3dclear() pt3dadd(x,y,z,10) //set position of cell pt3dadd(x,y,z+10,10) diam=1.0 L=1 nseg=1 diam=10.0 L=5 Ra=123 insert hh //Hodgkin-Huxley channels gnabar=0.25 gl_hh=.0001666 el_hh=-60 syn=new ExpSyn(0) //Adding synapse nclist=new List() StimTrigger=new NetStim(0.5) //Adding spike generator // Setting the random seed for the Spike Generator StimTrigger.seed(randomseed) //counting spikes //spikecount=new APCount(0.5) //spikecount.thresh=-20 //spikecount.record(spiketimes) //Saving Vm //voltagem.record(&v(0.5)) } } //Fabio´s stuff proc position() {local i access Presynapse for i = 0, n3d()-1 { pt3dchange(i, $1-x+x3d(i), $2-y+y3d(i), $3-z+z3d(i), diam3d(i)) } x = $1 y = $2 z = $3 } endtemplate fibre