load_file("nrngui.hoc") create axon axon insert hh objref stim1 axon stim1=new IClamp(0.5) objref stim2 axon stim2=new IClamp(0.5) proc init(){ tstop=40 stim1.del=0 stim1.dur=0 stim1.amp=0 stim2.del=0 stim2.dur=0 stim2.amp=0 axon.L=10000 axon.diam=800 nai=50 nao=450 ki=400 ko=20 cli=41 clo=563 gnabar_hh=0.12 gkbar_hh=0.036 ttx50=0 tea50=0 ttx=0 tea=0 tds=0 Amp1=stim1.amp Dur1=stim1.dur Del1=stim1.del Amp2=stim2.amp Dur2=stim2.dur Del2=stim2.del Fin=tstop sl=axon.L sd=axon.diam Nai=nai Nao=nao Ki=ki Ko=ko Cli=cli Clo=clo ena=nernst(nai,nao,1) ek=nernst(ki,ko,1) } init() proc update(){ stim1.amp=Amp1*1000 stim1.dur=Dur1 stim1.del=Del1 stim2.amp=Amp2*1000 stim2.dur=Dur2 stim2.del=Del2 tstop=Fin axon.L = sl axon.diam = sd nai=Nai ki=Ki nao=Nao ko=Ko cli=Cli clo=Clo gnabar_hh=0.12 gkbar_hh=0.036 ena=nernst(nai,nao,1) ek=nernst(ki,ko,1) } objref main main=new HBox(2) main.intercept(1) xpanel("menu1") xlabel("Temperature (celsius): 6") xlabel("Axone") xvalue("longueur (um)","sl") xslider(&sl,100,10100,"update()",0) xvalue("Diametre (um)","sd") xslider(&sd,10,1010,"update()",0) xlabel("Concentrations (mM)") xvalue("Ki","Ki") xslider(&Ki,20,520,"update()",0) xvalue("Ko","Ko") xslider(&Ko,2,52,"update()",0) xvalue("Nai","Nai") xslider(&Nai,5,105,"update()",0) xvalue("Nao","Nao") xslider(&Nao,100,600,"update()",0) xvalue("Cli","Cli") xslider(&Cli,5,105,"update()",0) xvalue("Clo","Clo") xslider(&Clo,500,600,"update()",0) xlabel("Drogues (injection a 5 ms)") xcheckbox("TTX",&ttx,"update()") xcheckbox("TEA",&tea,"update()") xcheckbox("TTX50",&ttx50,"update()") xcheckbox("TEA50",&tea50,"update()") xpanel() xpanel("menu2") xlabel("Acquisition") xvalue("Duree (ms)","Fin") xslider(&Fin,0,100,"update()",0) xlabel("Electrode de stimulation 1") xvalue("Intensite (uA)","Amp1") xslider(&Amp1,-10,10,"update()",0) xvalue("Duree (ms)","Dur1") xslider(&Dur1,0,20,"update()",0) xvalue("Delai (ms)","Del1") xslider(&Del1,0,100,"update()",0) xlabel("Electrode de stimulation 2") xvalue("Intensite (uA)","Amp2") xslider(&Amp2,-20,30,"update()",0) xvalue("Duree (ms)","Dur2") xslider(&Dur2,0,20,"update()",0) xvalue("Delai (ms)","Del2") xslider(&Del2,0,100,"update()",0) xlabel("Enregistrement") xbutton("GO","run_it()") xlabel("Init") xbutton("INIT","init()") xpanel() main.intercept(0) main.map() objref main1 main1=new VBox(2) main1.intercept(1) objref pix1 pix1=new Graph() pix1.gif("Axone.gif") objref pix2 pix2=new Graph() pix2.gif("RC0.gif") main1.intercept(0) main1.map() objref gr0 gr0=new Graph() gr0.addexpr("axon.v(0.5)",3,2) gr0.size(0,tstop,-100,50) proc run_it(){ update() gr0.size(0,tstop,-100,50) gr0.begin() finitialize(-63.05) while(t5){ if (ttx50==1) gnabar_hh=0.06 if (tea50==1) axon gkbar_hh=0.018 if (ttx==1) gnabar_hh=0 if (tea==1) axon gkbar_hh=0 } fadvance() gr0.plot(t) } gr0.flush() }