//genesis float dt = 10e-6 str label = "basalonly" // "notuft" // "fixbug" // 'try' str filename = "./" // "/cluster/scratch/local/reinoud/" setclock 0 {dt} setclock 1 50e-6 float tmax = 0.15 str name include defaults.g //Make prototype channels and compartments in library include L5P_const+axon+syn.g if (!({exists /library })) create neutral /library end disable /library pushe library // We borrow channels from cerebellar granule/Golgi cell, hoping to // produce a cell with narrower action potentials if (! {exists /library/granule}) create neutral /library/granule end ce /library/granule include ../Granule_cell/Gran_const.g include ../Granule_cell/Gran_chan_tab.g //include ../Granule_cell/Gran_synchan.g include L5P_synchan.g include ../Granule_cell/Gran_const.g include Gran_comp_soma_dend_axon.g if (! {exists /library/granule}) create neutral /library/granule end ce /library/granule // Make the prototypes of channels and compartments that can be invoked in .p files make_Granule_chans // make_Granule_syns make_Granule_comps_soma_dend_axon pope //Set up multicompartmental model in Hines solver mode based on reconstructed morphology readcell DS1_141099_rot2_sc_defmesh_axon_onlybasal.p /L5P // -hsolve //rotcoord /L5P {-3.1415927/2} -x // does not work : gives segmentation violation // the following trick works foreach name ({el /L5P/##[][TYPE=compartment]}) rotcoord {name} {3.1415927/2} -x -fixkids end foreach name ({el /L5P/##[]/##[]}) rotcoord {name} {3.1415927/2} -x -fixkids end foreach name ({el /L5P/##[][TYPE=compartment]}) rotcoord {name} {3.1415927/2} -y -fixkids end foreach name ({el /L5P/##[]/##[]}) rotcoord {name} {3.1415927/2} -y -fixkids end setfield /L5P/soma/InNa Gbar {{getfield /L5P/soma/InNa Gbar} * 10} setfield /L5P/soma/KDr Gbar {{getfield L5P/soma/KDr Gbar} * 10} //Set up differential distributions of Rm and h-channels include DiffRm.g include Hgradient.g DiffRm /L5P 4.0 0.27 500e-6 50e-6 Hgradient /L5P H 0.15 6.0 500e-6 50e-6 //Set up graphical and ascii output include L5P_graph.g include L5P_ascout.g // include electrodes.g include electrodes_fixbug.g ce /L5P // setup the hines solver echo preparing hines solver... create hsolve solve ce solve // if this is set then reset will NOT change Vm in Hines setfield . path "../##[][TYPE=compartment]" comptmode 1 chanmode 5 // 4 // 5 // 3 call . SETUP setmethod 11 reset randseed 54321 // 12345 // generate for each compartment as associated fibre include Excitatory_fibres include Inhibitory_fibres //include nsynapses include Firing_rate_profile.g make_firing_rate_profile /Excitatory_fibres/FF 0.0008 0.0002 2 -0.0001 0.0001 1 10 make_firing_rate_profile /Excitatory_fibres/FBintra 0.001 0.0002 2 -0.0001 0.0001 1 10 make_firing_rate_profile /Inhibitory_fibres/FF 0.0008 0.0004 1 -0.000 0.0004 2 45 make_firing_rate_profile /Inhibitory_fibres/FBintra 0.001 0.0004 1 -0.000 0.0002 2 45 include Harsch-Robinson_modulation.g Harsch_Robinson_modulation 30 0.1 include Firing_rate_modulation.g include L5P_history.g randseed 12345 // current injection //setfield /L5P/soma inject 540e-12 // 400e-12 // 800e-12 // 1200e-12 // 1600e-12 // 800e-12 // because there is a bug with the graph window when plotting with hines solver /* name = {findsolvefield /L5P/solve /L5P/soma Vm} addmsg /L5P/solve /data1/DS1_141099 PLOT {name} *Soma_Vm *red name = {findsolvefield /L5P/solve /L5P/axon[19] Vm} addmsg /L5P/solve /data1/DS1_141099 PLOT {name} *Axon_Vm *blue name = {findsolvefield /L5P/solve /L5P/p6b2b2[15] Vm} addmsg /L5P/solve /data1/DS1_141099 PLOT {name} *Dend_Vm *black */ reset step 0.1 -t //quit