Browse Source

added filter for circular morphology

Paul Pfeiffer 4 years ago
parent
commit
1da59e8d6a

+ 11 - 1
scripts/spatial_network/analyse_entropy_maximisation_orientation_map.py

@@ -37,6 +37,11 @@ def get_head_direction_indices(directions, firing_rate_dict):
     return np.zeros(len(firing_rate_dict.keys()))
 
 
+def get_runs_with_circular_morphology(traj):
+    filtered_indices = traj.f_find_idx(('parameters.long_axis', 'parameters.short_axis'), lambda r1, r2: r1 == r2)
+    return filtered_indices
+
+
 if __name__ == "__main__":
     traj = Trajectory(TRAJ_NAME, add_time=False, dynamic_imports=Brian2MonitorResult)
     NO_LOADING = 0
@@ -52,11 +57,16 @@ if __name__ == "__main__":
 
     directions = np.linspace(-np.pi, np.pi, traj.input.number_of_directions)
 
-    for run_name in traj.f_get_run_names():
+    circular_indices = list(get_runs_with_circular_morphology(traj))
+
+    for idx, run_name in enumerate(traj.f_get_run_names()):
         firing_rate_dict = get_firing_rate_per_cell_and_direction(traj, run_name)
         head_direction_indices = get_head_direction_indices(directions, firing_rate_dict)
         traj.f_set_crun(run_name)
+        print("Circle" if idx in circular_indices else "Ellipsoid" )
         print("Corr length {:.1f}".format(traj.orientation_map.correlation_length))
         print("Long axis {:.1f}".format(traj.long_axis))
         print("Mean HDI {:.1f}".format(np.mean(head_direction_indices)))
         print()
+
+    traj.f_restore_default()