def on_checkBox_clicked(self, checked): """ Slot documentation goes here. """ if (checked): print "waveform sine_bic fed" # pipeInData = spike_train(firing_rate = 10) #pipeInData = gen_sin(F = 0.5, AMP = 5000.0, BIAS = 5001.0, T = 2.0) # pipeInData = gen_tri(T = 2.0) # pipeInData_bic = gen_sin(F = 0.5, AMP = 50000.0, BIAS = 0.0, T = 2.0) # was 150000 for CN_general pipeInData_bic = gen_ramp(T = [0.0, 0.10, 0.11, 0.39, 0.40, 2.0], L = [0.0, 0.0, 150000.0, 150000.0, 0.0, 0.0], FILT = False) pipeInDataBic=[] for i in xrange(0, 2048): pipeInDataBic.append(max(0.0, pipeInData_bic[i])) # elif choice == "middleBoard_sine_Tri": print "waveform sine_tri fed" # pipeIndata_tri = -gen_sin(F = 0.5, AMP = 50000.0, BIAS = 0.0, T = 2.0) pipeIndata_tri = gen_ramp(T = [0.0, 1.10, 1.11, 1.39, 1.40, 2.0], L = [0.0, 0.0, 150000.0, 150000.0, 0.0, 0.0], FILT = False) pipeInDataTri=[] for i in xrange(0, 2048): pipeInDataTri.append(max(0.0, pipeIndata_tri[i])) self.xemList[0].SendPipe(pipeInDataTri) self.xemList[1].SendPipe(pipeInDataBic)
def on_comboBox_activated(self, p0): """ Slot documentation goes here. """ choice = p0 if choice == "waveform 1": # pipeInData = gen_ramp(T = [0.0, 0.1, 0.3, 1.0, 1.2, 2.0], L = [0.0, 0.0, 120000.0, 120000.0, 0.0, 0.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.1, 0.3, 1.0, 1.2, 2.0], L = [0.0, 0.0, 1.4, 1.4, 0.0, 0.0], FILT = False) pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.25, 0.3, 1.1, 1.2, 1.25, 1.3, 2.0], L = [0.8, 0.8, 1.4, 1.4, 0.8, 0.8, 1.4, 1.4, 0.8, 0.8], FILT = False) print "waveform 1 fed" # pipeInData = gen_sin(F = 1.0, AMP = 100.0, T = 2.0) elif choice == "waveform 2": print "waveform fed" # pipeInData = spike_train(firing_rate = 10) # pipeInData = gen_sin(F = 0.5, AMP = 5000.0, BIAS = 5001.0, T = 2.0) # pipeInData = gen_tri(T = 2.0) #pipeInData = gen_ramp(T = [0.0, 0.1, 0.9, 1.4, 1.9, 2.0], L = [0.5, 0.5, 1.5, 1.5, 0.5, 0.5], FILT = False) #pipeInData = gen_ramp(T = [0.0, 1.8, 2.0], L = [0.0, 30000.0, 0.0], FILT = False) #pipeInData = abs(gen_sin(F = 0.5, AMP = 17000.0, BIAS = 0.0, T = 2.0)) #big sine wave for training stdp #pipeInData[:] = [1 - x for x in pipeInData] #( 1 - pipeIndata) pipeInData = gen_rand(T=16.0, BIAS = 1500.0, AMP = 4400.0) # 16 seconds pipeInData2 = gen_rand(T=16.0, BIAS = 1500.0, AMP = 4400.0) # 16 seconds #pipeInData = gen_rand(BIAS = 3500.0, AMP = 400.0) # also works. input current bordered around threshold #pipeInData2 = gen_rand(BIAS = 3500.0, AMP = 400.0) elif choice == "waveform 3": # pipeInData = gen_tri() # pipeInData = spike_train(firing_rate = 1) print "waveform 3 fed" # pipeInData = gen_sin(F = 0.5, AMP = 0.15, BIAS = 1.15, T = 2.0) pipeInData = abs(gen_sin(F = 0.5, AMP = 17000.0, BIAS = 0.0, T = 2.0)) #big sine wave for training stdp #pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.8, 0.9, 2.0], L = [1.0, 1.0, 1.3, 1.3, 1.0, 1.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.4, 1.5, 1.55, 1.6, 2.0], L = [0, 0, 15000, 15000, 0, 0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.2, 0.25, 1.75, 1.8, 2.0], L = [1.0, 1.0, 5000.0, 5000.0, 1.0, 1.0], FILT = False) # abrupt rise / fall # pipeInData = spike_train(firing_rate = 1000) self.nerfModel.SendPipe(pipeInData) self.nerfModel.SendPipe2(pipeInData2)
def point2pointForce(self, checked): if (checked) : print 'checked' # pipeInData_bic = gen_ramp(T = [0.0, 0.01, 0.02, 0.22, 0.23, 2.0], L = [0.0, 0.0, 480000.0, 480000.0, 0.0, 0.0], FILT = False) # pipeInData_bic = gen_sin(F = 1.0, AMP = 480000.0, BIAS = 0.0, T = 2.0) # was 150000 for CN_general b=0.77 # pipeInData_bic = gen_ramp(T = [0.0, b+0.01, b+0.02, b+0.23, b+0.24, b+0.43, b+0.44, b+0.54, b+0.55, 2.0], L = [0.0, 0.0, 460000.0, 460000.0, 50000.0, 50000.0, 80000.0, 80000.0, 0.0, 0.0], FILT = False) # dont change: healthy, b=0.77 pipeInData_bic = gen_ramp(T = [0.0, b+0.01, b+0.02, b+0.23, b+0.24, b+0.43, b+0.44, b+0.64, b+0.65, 2.0], L = [0.0, 0.0, 520000.0, 520000.0, 70000.0, 70000.0, 140000.0, 140000.0, 0.0, 0.0], FILT = False) pipeInDataBic=[] for i in xrange(0, 2048): pipeInDataBic.append(max(0.0, pipeInData_bic[i])) # pipeIndata_tri = gen_ramp(T = [0.0, 0.21, 0.22, 0.52, 0.53, 2.0], L = [0.0, 0.0, 480000.0, 480000.0, 0.0, 0.0], FILT = False) # pipeIndata_tri = -gen_sin(F = 1.0, AMP = 480000.0, BIAS = 0.0, T = 2.0) # pipeIndata_tri = gen_ramp(T = [0.0, 0.21, 0.22, 0.52, 0.53, 2.0], L = [0.0, 0.0, 480000.0, 480000.0, 0.0, 0.0], FILT = False) a=0.01 # pipeIndata_tri = gen_ramp(T = [0.0, a+0.18, a+0.19, a+0.38, a+0.39, a+0.50, a+0.51, a+0.74, a+0.75, 2.0], L = [0.0, 0.0, 360000.0, 360000.0, 50000.0, 50000.0, 30000.0, 30000.0, 0.0, 0.0], FILT = False) # don't change: healthy: a=0.01 pipeIndata_tri = gen_ramp(T = [0.0, a+0.18, a+0.19, a+0.38, a+0.39, a+0.50, a+0.51, a+1.75, a+1.76, 2.0], L = [0.0, 0.0, 470000.0, 470000.0, 60000.0, 60000.0, 50000.0, 50000.0, 0.0, 0.0], FILT = False) # don't change: healthy: a=0.01 pipeInDataTri=[] for i in xrange(0, 2048): pipeInDataTri.append(max(0.0, pipeIndata_tri[i])) xem_cortical_bic.SendPipe(pipeInDataBic) xem_cortical_tri.SendPipe(pipeInDataTri) ## xem_cortical_tri.SendButton(True, BUTTON_RESET_SIM) # xem_cortical_bic.SendButton(True, BUTTON_RESET_SIM) # xem_cortical_tri.SendButton(False, BUTTON_RESET_SIM) # xem_cortical_bic.SendButton(False, BUTTON_RESET_SIM) #
def on_comboBox_activated(self, p0): """ Slot documentation goes here. """ choice = p0 if choice == "Spike Train 1Hz": # pipeInData = spike_train(firing_rate = 1) pipeInData = gen_sin(F = 1.0, AMP = 100.0, T = 2.0) elif choice == "Spike Train 10Hz": # pipeInData = spike_train(firing_rate = 10) # pipeInData = gen_sin(F = 4.0, AMP = 0.3) pipeInData = gen_tri(T = 2.0) elif choice == "Spike Train 20Hz": # pipeInData = gen_tri() # pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.8, 0.9, 2.0], L = [1.0, 1.0, 1.1, 1.1, 1.0, 1.0], FILT = False) pipeInData = gen_ramp(T = [0.0, 0.1, 1.8, 1.85, 1.9, 2.0], L = [0, 0, 15000, 15000, 0, 0], FILT = False) # pipeInData = spike_train(firing_rate = 100) self.nerfModel.SendPipe(pipeInData)
def on_comboBox_activated(self, p0): """ Slot documentation goes here. """ choice = p0 if choice == "Spike Train 1Hz": # pipeInData = spike_train(firing_rate = 1) pipeInData = gen_sin(F = 1.0, AMP = 100.0, T = 2.0) elif choice == "Spike Train 10Hz": # pipeInData = spike_train(firing_rate = 10) # pipeInData = gen_sin(F = 4.0, AMP = 0.3) pipeInData = gen_tri(T = 2.0) elif choice == "Spike Train 20Hz": # pipeInData = gen_tri() pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.8, 0.9, 2.0], L = [1.0, 1.0, 1.3, 1.3, 1.0, 1.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.4, 1.5, 1.55, 1.6, 2.0], L = [0, 0, 15000, 15000, 0, 0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.2, 0.25, 1.75, 1.8, 2.0], L = [1.0, 1.0, 5000.0, 5000.0, 1.0, 1.0], FILT = False) # abrupt rise / fall # pipeInData = spike_train(firing_rate = 1000) self.xemList[0].SendPipe(pipeInData)
def on_comboBox_activated(self, p0): """ Slot documentation goes here. """ choice = p0 if choice == "Spike Train 1Hz": # pipeInData = spike_train(firing_rate = 1) pipeInData = gen_sin(F=1.0, AMP=0.6, T=2.0) elif choice == "Spike Train 10Hz": # pipeInData = spike_train(firing_rate = 10) # pipeInData = gen_sin(F = 4.0, AMP = 0.3) pipeInData = gen_tri(T=2.0) elif choice == "Spike Train 20Hz": # pipeInData = gen_tri() pipeInData = gen_ramp(T=[0.0, 0.1, 0.2, 0.8, 0.9, 2.0], L=[1.0, 1.0, 1.1, 1.1, 1.0, 1.0], FILT=False) # pipeInData = spike_train(firing_rate = 100) self.nerfModel.SendPipe(pipeInData)
def on_comboBox_activated(self, p0): """ Slot documentation goes here. """ choice = p0 if choice == "waveform 1": # pipeInData = gen_ramp(T = [0.0, 0.1, 0.11, 0.65, 0.66, 16.0], L = [0.0, 0.0, 1.4, 1.4, 0.0, 0.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.1, 0.3, 1.0, 1.2, 2.0], L = [0.0, 0.0, 120000.0, 120000.0, 0.0, 0.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.1, 0.3, 1.0, 1.2, 2.0], L = [0.0, 0.0, 1.4, 1.4, 0.0, 0.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.3, 1.1, 1.2,1.3, 2.0], L = [0.8, 0.8, 1.4, 0.8, 0.8, 1.4, 0.8, 0.8], FILT = False) # 100ms rise # pipeInData = gen_ramp(T = [0.0, 0.1, 0.11, 0.12, 1.1, 1.11,1.12, 2.0], L = [0.8, 0.8, 1.4, 0.8, 0.8, 1.4, 0.8, 0.8], FILT = False) # 10ms rise # pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.3, 1.1, 1.2, 1.25, 1.3, 2.0], L = [0.8, 0.8, 1.4, 0.8, 0.8, 1.4, 1.4, 0.8, 0.8], FILT = False) pipeInData, self.gamma_dyn, self.gamma_sta = self.gen_from_file() self.individualWireIn('gamma_sta', float(self.gamma_sta)) self.individualWireIn('gamma_dyn', float(self.gamma_dyn)) """ up_pulse, dummy = gen_jerk(xi=1.0, xf = 1.5, T = 0.05) down_pulse, dummy = gen_jerk(xi=1.5, xf=1.0, T=0.05) flat_tail = np.array([1.0]*np.floor((1.0-0.1)*1024 + 1)) pipeInData = np.hstack((up_pulse, down_pulse, flat_tail, up_pulse, down_pulse, flat_tail)) print len(pipeInData) """ # pipeInData = np.append(p1, flat_tail) print pipeInData print "waveform 1 fed" # pipeInData = gen_sin(F = 1.0, AMP = 100.0, T = 2.0) elif choice == "waveform 2": print "waveform fed" # pipeInData = spike_train(firing_rate = 10) # pipeInData = gen_sin(F = 0.5, AMP = 5000.0, BIAS = 5001.0, T = 2.0) # pipeInData = gen_tri(T = 2.0) # pipeInData = gen_sin(F = 1.0, AMP = 0.15, BIAS = 1.15, T = 2.0) pipeInData = gen_ramp(T = [0.0, 0.1, 0.3, 0.8, 0.9, 2.0], L = [1.0, 1.0, 1.30, 1.30, 1.0, 1.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.1, 0.11, 0.51, 0.52, 1.0, 1.1, 1.11, 1.51, 1.52, 2.0], L = [0.7, 0.7, 1.5, 1.5, 0.7, 0.7, 0.7, 1.5, 1.5, 0.7, 0.7], FILT = False) # one second repeat # pipeInData = gen_ramp(T = [0.0, 0.1, 0.11, 0.51, 0.52, 1.0, 2.0], L = [0.7, 0.7, 1.5, 1.5, 0.7, 0.7, 0.7], FILT = False) # two second repeat # pipeInData = gen_ramp(T = [0.0, 0.1, 0.101, 0.121, 0.122, 1.0, 1.1, 1.101, 1.121, 1.122, 2.0], L = [0.8, 0.8, 1.5, 1.5, 0.8, 0.8, 0.8, 1.5, 1.5, 0.8, 0.8], FILT = False) # 20ms pulse for LLSR elif choice == "waveform 3": # pipeInData = gen_tri() # pipeInData = spike_train(firing_rate = 1) print "waveform 3 fed" #pipeInData = gen_sin(F = 0.5, AMP = 0.4, BIAS = 1.0, T = 2.0) self.j1List=[] self.j2List=[] self.j3List=[] self.j4List=[] self.j5List=[] self.j6List=[] # for line in open('/home/eric/Dropbox/MATLAB/WonJoon_code/matlab_wjsohn/posAllData.txt', "r").readlines(): # j1 , j2, j3, j4, j5, j6= line.split('\t') # j1 = float(j1) # j2 = float(j2) # print type(j1) # print j1 # self.j1List.append(j1) # # self.j2List.append(j2) # # self.j3List.append(j3) # # self.j4List.append(j4) # # self.j5List.append(j5) # # self.j6List.append(j6) # # for line in open('/home/eric/nerf_verilog_eric/source/py/1125_resampled/expt_rampnhold.gd_160.gs_160.rep_5.dev_fpga_resampled.txt', "r").readlines(): j1, j2 = line.split('\n') # j1 = line.splitlines() j1 = float(j1) print type(j1) print j1 self.j1List.append(j1) # # print self.j1List pipeInData_bf = gen_wave(L=self.j1List, FILT = False) pipeInData = [x for x in pipeInData_bf] #pipeInData = gen_ramp(T = [0.0, 0.1, 0.2, 0.8, 0.9, 2.0], L = [1.0, 1.0, 1.3, 1.3, 1.0, 1.0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.4, 1.5, 1.55, 1.6, 2.0], L = [0, 0, 15000, 15000, 0, 0], FILT = False) # pipeInData = gen_ramp(T = [0.0, 0.2, 0.25, 1.75, 1.8, 2.0], L = [1.0, 1.0, 5000.0, 5000.0, 1.0, 1.0], FILT = False) # abrupt rise / fall # pipeInData = spike_train(firing_rate = 1000) self.nerfModel.SendPipe(pipeInData)