/*---------------------------------------------------------------------------- CURRENT-CLAMP SIMULATIONS OF TC CELLS ===================================== Simulations of a simplified model of thalamic relay cell. This model is described in the following paper: Destexhe A, Neubig M, Ulrich D and Huguenard JR. Dendritic low-threshold calcium currents in thalamic relay cells. Journal of Neuroscience 18: 3574-3588, 1998. Please cite this reference if use that model. All details about the morphology and the physiology of that cell, its passive cable properties and its intrinsic (burst) firing properties, are described in this article. The present program reproduces the burst firing of the TC cell (as shown in Fig. 11 of the paper) See also: http://www.cnl.salk.edu/~alain http://cns.fmed.ulaval.ca Alain Destexhe, Laval University, 1997 ----------------------------------------------------------------------------*/ //---------------------------------------------------------------------------- // load and define general graphical procedures //---------------------------------------------------------------------------- // xopen("$(NEURONHOME)/lib/hoc/nrngui.hoc") load_file("nrngui.hoc") // updated command version of above nrncontrolmenu() // create control menu objectvar g[20] // max 20 graphs ngraph = 0 proc addgraph() { local ii // define subroutine to add a new graph // addgraph("variable", minvalue, maxvalue) ngraph = ngraph+1 ii = ngraph-1 g[ii] = new Graph() g[ii].size(tstart,tstop,$2,$3) g[ii].xaxis() g[ii].yaxis() g[ii].addvar($s1,1,0) g[ii].save_name("graphList[0].") graphList[0].append(g[ii]) } proc addshape() { local ii // define subroutine to add a new shape // addshape() ngraph = ngraph+1 ii = ngraph-1 g[ii] = new PlotShape() g[ii].scale(-130,50) } //---------------------------------------------------------------------------- // transient time //---------------------------------------------------------------------------- trans = 00 print " " print ">> Transient time of ",trans," ms" print " " //---------------------------------------------------------------------------- // create multi-compartment geometry and insert currents //---------------------------------------------------------------------------- xopen("cells/tc3.geo") // read geometry file corrD = 7.954 // dendritic surface correction // (estimated by fitting voltage-clamp traces) G_pas = 3.79e-5 E_pas = -73 // to fit current-clamp data (was -71 to -73) E_pas = -76.5 // within 3 mV error forall { // insert passive current everywhere insert pas g_pas = G_pas * corrD e_pas = E_pas cm = 0.88 * corrD Ra = 173 L = L } soma { g_pas = G_pas cm = 0.88 insert hh2 // insert fast spikes ena = 50 ek = -100 vtraub_hh2 = -52 gnabar_hh2 = 0.1 gkbar_hh2 = 0.1 } forall { insert itGHK // T-current everywhere cai = 2.4e-4 cao = 2 eca = 120 shift_itGHK = -1 // screening charge shift + 3 mV error gcabar_itGHK = corrD * 0.0002 qm_itGHK = 2.5 qh_itGHK = 2.5 insert cad // calcium diffusion everywhere depth_cad = 0.1 * corrD kt_cad = 0 // no pump kd_cad = 1e-4 taur_cad = 5 cainf_cad = 2.4e-4 } xopen("loc3.oc") // load procedures for localizing T-current // uniform T-current with same density as in dissociated cells // localize(1.7e-5,corrD*1.7e-5) // high distal density, same total T-channels as intact cell // intact cell total = 1.7928302; here: total = 1.7927744 // localize(1.7e-5,corrD*9.634e-5) // high distal density, match detailed model in voltage-clamp localize(1.7e-5,corrD*9.5e-5) //---------------------------------------------------------------------------- // insert electrodes in the soma //---------------------------------------------------------------------------- if(ismenu==0) { xopen("El.oc") // Electrode with series resistance ismenu = 1 } access soma objectvar El // insert electrode El = new Electrode() electrodes_present = 1 // // CURRENT-CLAMP MODE // soma El.stim.loc(0.5) // put electrode in current-clamp mode El.stim.del = 480 El.stim.dur = 900 El.stim.amp = 0.05 //---------------------------------------------------------------------------- // setup simulation parameters //---------------------------------------------------------------------------- Dt = 0.2 npoints = 4000 dt = 0.1 // must be submultiple of Dt tstart = trans tstop = trans + npoints * Dt runStopAt = tstop steps_per_ms = 1/Dt celsius = 34 // temperature of John's experiments v_init = -74 // approximate resting Vm //---------------------------------------------------------------------------- // add graphs //---------------------------------------------------------------------------- addgraph("soma.v(0.5)",-120,40) // soma addgraph("dend1[0].v(0.5)",-120,40) // proximal addgraph("dend1[1].v(0.5)",-120,40) // distal addshape()