62 lines
1.7 KiB
Python
62 lines
1.7 KiB
Python
|
|
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()
|