From b3265ee95bba96e5ea56569c1b5a418a812a4121 Mon Sep 17 00:00:00 2001
From: didihou <didi.hou@rwth-aachen.de>
Date: Thu, 14 Sep 2023 01:34:42 +0200
Subject: [PATCH] /

---
 ...taneous_and_mean_firing_rates-checkpoint.py | 18 ++++++++++++++++++
 ...lize_instantaneous_and_mean_firing_rates.py | 18 ++++++++++++++++++
 2 files changed, 36 insertions(+)
 create mode 100644 figures/MAM2EBRAINS/.ipynb_checkpoints/M2E_visualize_instantaneous_and_mean_firing_rates-checkpoint.py
 create mode 100644 figures/MAM2EBRAINS/M2E_visualize_instantaneous_and_mean_firing_rates.py

diff --git a/figures/MAM2EBRAINS/.ipynb_checkpoints/M2E_visualize_instantaneous_and_mean_firing_rates-checkpoint.py b/figures/MAM2EBRAINS/.ipynb_checkpoints/M2E_visualize_instantaneous_and_mean_firing_rates-checkpoint.py
new file mode 100644
index 0000000..6aa8b69
--- /dev/null
+++ b/figures/MAM2EBRAINS/.ipynb_checkpoints/M2E_visualize_instantaneous_and_mean_firing_rates-checkpoint.py
@@ -0,0 +1,18 @@
+import numpy as np
+
+def plot_instan_mean_firing_rate(M):
+    # load spike data and calculate instantaneous and mean firing rates
+    data = np.loadtxt(M.simulation.data_dir + '/recordings/' + M.simulation.label + "-spikes-1-0.dat", skiprows=3)
+    tsteps, spikecount = np.unique(data[:,1], return_counts=True)
+    firing_rate = spikecount / M.simulation.params['dt'] * 1e3 / np.sum(M.N_vec)
+    
+    # visualize calculate instantaneous and mean firing rates
+    ax = pl.subplot()
+    ax.plot(tsteps, rate)
+    ax.plot(tsteps, np.average(rate)*np.ones(len(tsteps)), label='mean')
+    ax.set_title('Instantaneous and mean firing rate across all populations')
+    ax.set_xlabel('time (ms)')
+    ax.set_ylabel('firing rate (spikes / s)')
+    ax.set_xlim(0, M.simulation['t_sim'])
+    ax.set_ylim(0, 50)
+    ax.legend()
\ No newline at end of file
diff --git a/figures/MAM2EBRAINS/M2E_visualize_instantaneous_and_mean_firing_rates.py b/figures/MAM2EBRAINS/M2E_visualize_instantaneous_and_mean_firing_rates.py
new file mode 100644
index 0000000..6aa8b69
--- /dev/null
+++ b/figures/MAM2EBRAINS/M2E_visualize_instantaneous_and_mean_firing_rates.py
@@ -0,0 +1,18 @@
+import numpy as np
+
+def plot_instan_mean_firing_rate(M):
+    # load spike data and calculate instantaneous and mean firing rates
+    data = np.loadtxt(M.simulation.data_dir + '/recordings/' + M.simulation.label + "-spikes-1-0.dat", skiprows=3)
+    tsteps, spikecount = np.unique(data[:,1], return_counts=True)
+    firing_rate = spikecount / M.simulation.params['dt'] * 1e3 / np.sum(M.N_vec)
+    
+    # visualize calculate instantaneous and mean firing rates
+    ax = pl.subplot()
+    ax.plot(tsteps, rate)
+    ax.plot(tsteps, np.average(rate)*np.ones(len(tsteps)), label='mean')
+    ax.set_title('Instantaneous and mean firing rate across all populations')
+    ax.set_xlabel('time (ms)')
+    ax.set_ylabel('firing rate (spikes / s)')
+    ax.set_xlim(0, M.simulation['t_sim'])
+    ax.set_ylim(0, 50)
+    ax.legend()
\ No newline at end of file
-- 
GitLab