# make a 2007b (section) cell sec07b = h.Section() sec07b.L, sec07b.diam = 5, 6.3 iz07b = h.Izhi2007b(0.5, sec=sec07b) iz07b.Iin = 70 def iz07b_init(): sec07b.v = -60 fih.append(h.FInitializeHandler(iz07b_init)) # make a 2007b (section) cell using the Wrapper iz07bw = izh07.IzhiCell() # defaults to RS iz07bw.izh.Iin = 70 fih.append(h.FInitializeHandler(iz07bw.init)) # vectors and plot h.tstop = 1250 recd = { 'u3a': [iz03a._ref_u], 'v3a': [iz03a._ref_V], 'u3b': [iz03b._ref_u], 'v3b': [sec03b(0.5)._ref_v], 'u7a': [iz07a._ref_u], 'v7a': [iz07a._ref_V], 'u7b': [iz07b._ref_u], 'v7b': [sec07b(0.5)._ref_v], 'u7bw': [iz07bw.izh._ref_u],
('Class 1' , (0.02 , -0.1 , -55.0 , 6.0 , -60.0 , 300.0)) , ('resonator' , (0.1 , 0.26 , -60.0 , -1.0 , -62.0 , 400.0)) , ('threshold variability' , (0.03 , 0.25 , -60.0 , 4.0 , -64.0 , 100.0)) , ('inhibition-induced spiking' , (-0.02 , -1.0 , -60.0 , 8.0 , -63.8 , 350.0)) , ('phasic bursting' , (0.02 , 0.25 , -55.0 , 0.05 , -64.0 , 200.0)) , ('Class 2' , (0.2 , 0.26 , -65.0 , 0.0 , -64.0 , 300.0)) , ('integrator' , (0.02 , -0.1 , -55.0 , 6.0 , -60.0 , 100.0)) , ('bistability' , (0.1 , 0.26 , -60.0 , 0.0 , -61.0 , 300.0)) , ('inhibition-induced bursting' , (-0.026 , -1.0 , -45.0 , -2.0 , -63.8 , 350.0))]) choices = collections.OrderedDict([ ('2003 PP model' , (lambda: h.Izhi2003a(0.5,sec=cell03), lambda: izh._ref_V, type2003)), ('2003 Sec model', (lambda: h.Izhi2003b(0.5,sec=cell03), lambda: cell03(0.5)._ref_v, type2003)), ('2004 PP model' , (lambda: h.Izhi2003a(0.5,sec=cell03), lambda: izh._ref_V, type2004)), ('2004 Sec model', (lambda: h.Izhi2003b(0.5,sec=cell03), lambda: cell03(0.5)._ref_v, type2004)), ('2007 PP model' , (lambda: izh07.IzhiCell(host=izh07.dummy), lambda: izh._ref_V, izh07.type2007)), ('2007 Sec model' , (lambda: izh07.IzhiCell(), lambda: cell07.sec(0.5)._ref_v, izh07.type2007))]) ch=choices.keys() def newmodel (ty=None) : "2003,2004 was the orig model; 2007 is the redesign; look at global izhtype if no " return izhtype.find('2007') > -1 if ty is None else ty.find('2007') > -1 #* setup the cell izhtype='2004 PP model' def cellset (): global cell07, cell03, izh, vref, uvvset, fih, izhtype if newmodel(): cell07 = choices[izhtype][0]() izh = cell07.izh def uvvset () : pass
('Class 2', (0.2, 0.26, -65.0, 0.0, -64.0, 300.0)), ('integrator', (0.02, -0.1, -55.0, 6.0, -60.0, 100.0)), ('bistability', (0.1, 0.26, -60.0, 0.0, -61.0, 300.0)), ('inhibition-induced bursting', (-0.026, -1.0, -45.0, -2.0, -63.8, 350.0)) ]) choices = collections.OrderedDict([ ('2003 PP model', (lambda: h.Izhi2003a(0.5, sec=cell03), lambda: izh._ref_V, type2003)), ('2003 Sec model', (lambda: h.Izhi2003b(0.5, sec=cell03), lambda: cell03(0.5)._ref_v, type2003)), ('2004 PP model', (lambda: h.Izhi2003a(0.5, sec=cell03), lambda: izh._ref_V, type2004)), ('2004 Sec model', (lambda: h.Izhi2003b(0.5, sec=cell03), lambda: cell03(0.5)._ref_v, type2004)), ('2007 PP model', (lambda: izh07.IzhiCell(host=izh07.dummy), lambda: izh._ref_V, izh07.type2007)), ('2007 Sec model', (lambda: izh07.IzhiCell(), lambda: cell07.sec(0.5)._ref_v, izh07.type2007)) ]) ch = choices.keys() def newmodel(ty=None): "2003,2004 was the orig model; 2007 is the redesign; look at global izhtype if no " return izhtype.find('2007') > -1 if ty is None else ty.find('2007') > -1 #* setup the cell izhtype = '2004 PP model'