def run_stim(self, model: sciunit.Model, stim: float): stim_start = 50.0 # ms stim_dur = 500.0 # ms stim_amp = stim # nA model.inject_step_current_soma(current={ 'delay': stim_start, 'duration': stim_dur, 'amplitude': stim_amp }) start = timeit.default_timer() trace = model.get_membrane_potential_soma_eFEL_format( tstop=stim_start + stim_dur, start=stim_start, stop=stim_start + stim_dur) stop = timeit.default_timer() self.run_times[str(stim)] = stop - start self.traces.append({ "stim": stim_amp, "t": trace["T"], "v": trace["V"] }) try: result = efel.getFeatureValues([trace], [ "Spikecount_stimint" ])[0]["Spikecount_stimint"][0] / (stim_dur * 1e-3) # (Hz) except: result = float("nan") return result
def run_stim(self, model: sciunit.Model, stim: float): stim_start = 50.0 # ms stim_dur = (60 * 1000) - 50.0 # ms stim_amp = stim # nA model.inject_step_current_soma(current={ 'delay': stim_start, 'duration': stim_dur, 'amplitude': stim_amp }) start = timeit.default_timer() trace = model.get_membrane_potential_soma_eFEL_format( tstop=stim_start + stim_dur, start=stim_start, stop=stim_start + stim_dur) stop = timeit.default_timer() run_time = stop - start self.traces.append({ "stim": stim_amp, "t": trace["T"], "v": trace["V"] }) return run_time