//genesis // MSsimSyn.g /*************************** MS Model, Version 12 ***************/ //*********** includes - functions for constructing model and outputs, and doing simulations include PSim_Params.g //simulation control parameters, can be overridden in this file /*Set up blocking experiments here */ gNaFsoma_UI = {gNaFsoma_UI} gNaFprox_UI = {gNaFprox_UI} gNaFdist_UI = {gNaFdist_UI} gCaL13soma_UI = {gCaL13soma_UI} gCaL13dend_UI = {gCaL13dend_UI} gCaT32prox = {gCaT32prox} gCaT32dist = {gCaT32dist} gCaT33prox = {gCaT33prox} gCaT33dist = {gCaT33dist} spineDensity = 1.0 gCaRsoma = {gCaRsoma} gCaRdend = {gCaRdend} gCaL12soma_UI = {gCaL12soma_UI} gCaL12dend_UI = {gCaL12dend_UI} gKIRsoma_UI = {gKIRsoma_UI} gKIRdend_UI = {gKIRdend_UI} gKAfsoma_UI = {gKAfsoma_UI} gKAfprox_UI = {gKAfprox_UI} gKAfdist_UI = {gKAfdist_UI} gKAssoma_UI = {gKAssoma_UI} gKAsdend_UI = {gKAsdend_UI} gBKdend = {gBKdend} gBKsoma = {gBKsoma} gSKdend = {gSKdend} gSKsoma = {gSKsoma} gKrpdend = {gKrpdend} gCaL12spine = {gCaL12spine} gCaL13spine = {gCaL13spine} gCaRspine = {gCaRspine} gCaT32spine = {gCaT32spine} gCaT33spine = {gCaT33spine} gSKspine = {gSKspine} NMDAgmax = {NMDAgmax} AMPAgmax = {AMPAgmax} calciuminact = {calciuminact} nmdacdiyesno = {nmdacdiyesno} neckRA = {neckRA} //GABAtype: 0 for fast kinetics, e.g. LTSI, SPN, FSI; 1 for slow kinetics, e.g. NYP-NGF interneuron int GABAtype = 1 str GABAname = "GABA" if ({GABAtype} == 0) float GABAtau1 = 1.0e-3 float GABAtau2 = 14.4e-3 float GABAgmax = 1200e-12 str GABAlabel = "GABAAfast" elif ({GABAtype} == 1) float GABAtau1 = 10e-3 float GABAtau2 = 83e-3 float GABAgmax = 1200e-12 str GABAlabel = "GABAAslow" end include MScell/MScellSynSpines // access make_MS_cell include InOut/add_output.g //functions for ascii file output include InOut/IF.g //function to create pulse generator for current injection, also IF & IV curves include InOut/SpikeMakerFunctions.g //functions to create randomspikes and connect to synapes include InOut/PreSynSync.g //functions for setting up synchronous pre-synaptic stimulation include InOut/UpState.g //run upstate simulations - asynchronous synaptic stimulation include InOut/UpStateSTDP.g //run upstate simulations include InOut/PlasStim.g //run plasticity protocols - pattern of PSPS, no current injection include InOut/STDP.g //run STDP protocols - single PSP with current injection include InOut/ConstrainUp.g //include RebekahSims/Store_Parameters.g include graphics7.g str prestim = 2 float pulseFreq = 1 int pulses = 1 pulseYN = 0 //Post-synaptic parameters float inject=1e-9 //1e-9 float burstFreq = 1 int numbursts = 1 float trainFreq=1 int numtrains=1 AP_durtime=0.005 float APinterval={1.0/50.0} int numAP=1 float isi=0.4 //block spine channels //gCaL12spine = 0 //gCaL13spine = 0 //gCaRspine = 0 //gCaTspine = 0 //set random seed so for each simulation the randomspike train will be the same //3 = 5757538 //5 = 9824501 //4 = 2394075 //6 = 492 //7 = 2370 int seedvalue= 5757538 //**************** end of parameters, now contruct model and do simulations setclock 0 {simdt} setclock 1 {outputclock} int totspine={make_MS_cell_SynSpine {neuronname} {pfile} {spinesYesNo} {DA}} // MS_cell.g reset if (hsolveYesNo==1) create hsolve {neuronname}/solve setfield {neuronname}/solve chanmode 1 comptmode 1 setfield {neuronname}/solve path {neuronname}/##[][TYPE=compartment] setmethod {neuronname}/solve 11 //call {neuronname}/solve SETUP - done later, immediately before simulation end //Set up asc_file outputs and get headers for the files Vmhead={add_outputVm {comps} {Vmfile} {neuronname}} if ({CaOut}) Cafile="Ca" Cahead={add_outputCal {comps} {CaBufs} {Cafile} {neuronname}} else Cafile="X" Cahead="" end if ({GkOut}) Gkfile="Gk" Gkhead={add_outputGk {comps} {chans} {Gkfile} {neuronname}} else Gkfile="X" Gkhead="" end Ikfile = "Ik" Ikhead={add_outputIk {comps} {chans} {Ikfile} {neuronname}} str spinefile="spine" str multispinefile = "multispines" //multispinehead={add_outputSpines {substring {comps} 15} {CaBufs} {multispinefile} {neuronname}} ce / //Simulation of "upstate" by stimulation of limited number of spines, e.g. Plotkin et al. //This is specific to a neuron with spines. Won't work otherwise int numstim=16 str stimcomp="tertdend1_8" str startcomp=stimcomp//"tertdend1_9" //tertdend1_1 or 1_5 int parenttype=3 float maxpath= 18e-6 float meanDelay = 0//2e-3//0 float branchoffset = 100e-3 int mirrorYesNo =0 int randDelayYesNo = 0 GABAYesNo=1 str GABAloc = "tertdend1_8" float GABA_delay = 0e-3 str diskpath="SimData/PSim_ConstrainUp_"@{GABAlabel}@"_"@{GABAloc}@"_"@{GABA_delay}@"_16spines" //Note that function call to setup multi spine files is within ConstrainUp ConstrainUp {numstim} {startcomp} {parenttype} {maxpath} {meanDelay} {diskpath} {mirrorYesNo} {branchoffset} {randDelayYesNo} //ConstrainUp 1 "tertdend1_2" 3 1e-6 0 {diskpath} 0 0e-3 0 connectGABA 0 "/cell/"{GABAloc} {precell} {{branchoffset}+{GABA_delay}} 0 runConstrainUp {numstim} {startcomp} {parenttype} {maxpath} {meanDelay} {diskpath} {mirrorYesNo} {branchoffset} {randDelayYesNo} quit