from FiCurve import FICurve from CellData import icelldata_of_dir import os import helperFunctions as hf from AdaptionCurrent import Adaption from models.NeuronModel import NeuronModel from functionalityTests import * # TODO command line interface needed/nice ? def main(): run_tests() quit() for cell_data in icelldata_of_dir("./data/"): print() print(cell_data.get_data_path()) model = NeuronModel(cell_data) x_values = np.arange(0, 1000, 0.01) stimulus = [0]*int(200/0.01) stimulus.extend([0.19]*int(400/0.01)) stimulus.extend([0]*int(400/0.01)) v, spikes = model.simulate(0, 1000, stimulus) # plt.plot(x_values, v) spikes = [s/1000 for s in spikes] time, freq = hf.calculate_isi_frequency(spikes, 0, 0.01/1000) plt.plot(time, freq) plt.show() quit() continue figures_save_path = "./figures/" + os.path.basename(cell_data.get_data_path()) + "/" ficurve = FICurve(cell_data) ficurve.plot_fi_curve(figures_save_path) adaption = Adaption(cell_data, ficurve) adaption.plot_exponential_fits(figures_save_path + "exponential_fits/", delete_previous=True) for i in range(len(adaption.exponential_fit_vars)): if len(adaption.exponential_fit_vars[i]) == 0: continue tau = round(adaption.exponential_fit_vars[i][1]*1000, 2) contrast = round(ficurve.stimulus_value[i], 3) # print(tau, "ms - tau_eff at", contrast, "contrast") # test_plot_inverses(ficurve) print("Chosen tau [ms]:", adaption.tau_real) def run_tests(): test_lifac() if __name__ == '__main__': main()