diff --git a/run_Fitter.py b/run_Fitter.py index ba8037f..558895c 100644 --- a/run_Fitter.py +++ b/run_Fitter.py @@ -274,8 +274,9 @@ def test_effect_of_refractory_period(): ref_periods = [0.0006, 0.001, 0.0015] counter = 0 core_count = mp.cpu_count() - pool = mp.Pool(core_count - 1) + for cell in icelldata_of_dir("./data/"): + pool = mp.Pool(core_count - 1) counter += 1 if counter < 10: continue @@ -293,6 +294,7 @@ def test_effect_of_refractory_period(): fit_all_cells_parallel_sync([cell], all_start_parameters, pool, results_base_folder) del cell + del pool if __name__ == '__main__': diff --git a/sam_experiments.py b/sam_experiments.py index fb1e244..8077d75 100644 --- a/sam_experiments.py +++ b/sam_experiments.py @@ -9,45 +9,48 @@ from CellData import CellData def main(): # 2012-12-13_ao fit and eod frequency: - parameters = {'mem_tau': 0.0133705462739553, 'tau_a': 0.06682759542588587, 'input_scaling': 60.766243690761144, - 'v_base': 0, 'step_size': 5e-05, 'dend_tau': 0.0008667253013050408, 'v_zero': 0, 'v_offset': -6.25, - 'noise_strength': 0.03337309379328535, 'a_zero': 2, 'threshold': 1, 'delta_a': 0.0726267312975076} + parameters = {'step_size': 5e-05, 'mem_tau': 0.009946816831208656, 'v_base': 0, 'v_zero': 0, 'threshold': 1, + 'v_offset': -9.375, 'input_scaling': 85.90592189374783, 'delta_a': 0.11098554500597714, + 'tau_a': 0.04533432159583689, 'a_zero': 2, 'noise_strength': 0.02947375332925044, + 'dend_tau': 0.001154822221492827, 'refractory_period': 0.0006} eod_freq = 658 cell_data = CellData("./data/2012-12-13-ao-invivo-1/") model = LifacNoiseModel(parameters) mean_duration = np.mean(cell_data.get_sam_durations()) contrasts = cell_data.get_sam_contrasts() spiketimes = cell_data.get_sam_spiketimes() - for i, m_freq in enumerate(cell_data.get_sam_delta_frequencies()): + delta_freqs = np.unique(cell_data.get_sam_delta_frequencies()) + for i, m_freq in enumerate(delta_freqs): - stimulus = SAM(eod_freq, contrasts[i], m_freq) - prob_desnity_function_model = generate_pdf(model, stimulus, sim_length=mean_duration) - for spikes in spiketimes[i]: - prob_density_cell = spiketimes_calculate_pdf(spikes, cell_data.get_sampling_interval()) + stimulus = SAM(eod_freq, contrasts[i]/100, m_freq) + v1, spikes_model = model.simulate_fast(stimulus, mean_duration) + prob_density_function_model = spiketimes_calculate_pdf(spikes_model, model.get_sampling_interval()) + for spikes_cell in spiketimes[i]: + prob_density_cell = spiketimes_calculate_pdf(spikes_cell, cell_data.get_sampling_interval()) + plt.plot(prob_density_function_model) plt.plot(prob_density_cell) - plt.plot(prob_desnity_function_model) plt.show() plt.close() - # __init__(carrier_frequency, contrast, modulation_frequency, start_time=0, duration=np.inf, amplitude=1) - mod_freqs = np.arange(-60, eod_freq*4 + 61, 10) - sigma_of_pdfs = [] - for m_freq in mod_freqs: - print(m_freq, "max: {:.2f}".format(mod_freqs[-1])) - stimulus = SAM(eod_freq, 0.2, m_freq) - - prob_density_function = generate_pdf(model, stimulus) - buffer = 0.25 - buffer_idx = int(buffer / model.get_parameters()["step_size"]) - - sigma_of_pdfs.append(np.std(prob_density_function[buffer_idx:-buffer_idx])) - - normed_mod_freqs = (mod_freqs + eod_freq) / eod_freq - plt.plot(normed_mod_freqs, sigma_of_pdfs) - plt.savefig("./figures/sam/test.png") - plt.close() + # # __init__(carrier_frequency, contrast, modulation_frequency, start_time=0, duration=np.inf, amplitude=1) + # mod_freqs = np.arange(-60, eod_freq*4 + 61, 10) + # sigma_of_pdfs = [] + # for m_freq in mod_freqs: + # print(m_freq, "max: {:.2f}".format(mod_freqs[-1])) + # stimulus = SAM(eod_freq, 0.2, m_freq) + # + # prob_density_function = generate_pdf(model, stimulus) + # buffer = 0.25 + # buffer_idx = int(buffer / model.get_parameters()["step_size"]) + # + # sigma_of_pdfs.append(np.std(prob_density_function[buffer_idx:-buffer_idx])) + # + # normed_mod_freqs = (mod_freqs + eod_freq) / eod_freq + # plt.plot(normed_mod_freqs, sigma_of_pdfs) + # plt.savefig("./figures/sam/test.png") + # plt.close() pass