vector strength
This commit is contained in:
parent
466a46c966
commit
cf4d63966a
@ -3,6 +3,7 @@ import matplotlib.pyplot as plt
|
|||||||
from read_baseline_data import *
|
from read_baseline_data import *
|
||||||
from IPython import embed
|
from IPython import embed
|
||||||
from NixFrame import *
|
from NixFrame import *
|
||||||
|
from utility import *
|
||||||
|
|
||||||
inch_factor = 2.54
|
inch_factor = 2.54
|
||||||
data_dir = '../data'
|
data_dir = '../data'
|
||||||
@ -53,6 +54,7 @@ max_cut = int(np.max(np.diff(eod_idx)))
|
|||||||
eod_cuts = np.zeros([len(eod_idx)-1, max_cut])
|
eod_cuts = np.zeros([len(eod_idx)-1, max_cut])
|
||||||
# eods 15 + 16 are to short
|
# eods 15 + 16 are to short
|
||||||
relative_times = []
|
relative_times = []
|
||||||
|
eod_durations = []
|
||||||
|
|
||||||
for i, idx in enumerate(eod_idx[:-1]):
|
for i, idx in enumerate(eod_idx[:-1]):
|
||||||
eod_cut = eod[int(idx):int(eod_idx[i+1])]
|
eod_cut = eod[int(idx):int(eod_idx[i+1])]
|
||||||
@ -63,14 +65,20 @@ for i, idx in enumerate(eod_idx[:-1]):
|
|||||||
relative_time = spike_cut - time_cut[0]
|
relative_time = spike_cut - time_cut[0]
|
||||||
if len(relative_time) > 0:
|
if len(relative_time) > 0:
|
||||||
relative_times.append(relative_time[:][0]*1000)
|
relative_times.append(relative_time[:][0]*1000)
|
||||||
|
eod_durations.append(len(eod_cut))
|
||||||
|
|
||||||
|
|
||||||
mu_eod = np.nanmean(eod_cuts, axis=0)
|
mu_eod = np.nanmean(eod_cuts, axis=0)
|
||||||
std_eod = np.nanstd(eod_cuts, axis=0)*3
|
std_eod = np.nanstd(eod_cuts, axis=0)*3
|
||||||
|
|
||||||
time_axis = np.arange(max_cut)/sampling_rate*1000
|
vs = vector_strength(relative_times, eod_durations)
|
||||||
|
embed()
|
||||||
|
exit()
|
||||||
|
|
||||||
|
#time_axis = np.arange(max_cut)/sampling_rate*1000
|
||||||
|
|
||||||
#fig = plt.figure(figsize=(12/inch_factor, 8/inch_factor))
|
#fig = plt.figure(figsize=(12/inch_factor, 8/inch_factor))
|
||||||
|
'''
|
||||||
fig, ax1 = plt.subplots(figsize=(12/inch_factor, 8/inch_factor))
|
fig, ax1 = plt.subplots(figsize=(12/inch_factor, 8/inch_factor))
|
||||||
ax1.hist(relative_times, color='crimson')
|
ax1.hist(relative_times, color='crimson')
|
||||||
ax1.set_xlabel('time [ms]', fontsize=12)
|
ax1.set_xlabel('time [ms]', fontsize=12)
|
||||||
@ -90,4 +98,5 @@ plt.xticks(fontsize = 8)
|
|||||||
plt.yticks(fontsize = 8)
|
plt.yticks(fontsize = 8)
|
||||||
fig.tight_layout()
|
fig.tight_layout()
|
||||||
plt.show()
|
plt.show()
|
||||||
|
'''
|
||||||
|
|
||||||
|
@ -11,8 +11,10 @@ def zero_crossing(eod,time):
|
|||||||
|
|
||||||
|
|
||||||
def vector_strength(spike_times, eod_durations):
|
def vector_strength(spike_times, eod_durations):
|
||||||
alphas = spike_times/ eod_durations
|
n = len(spike_times)
|
||||||
cs = (1/len(spike_times))*np.sum(np.cos(alphas))^2
|
phase_times = np.zeros(n)
|
||||||
sn = (1/len(spike_times))*np.sum(np.sin(alphas))^2
|
for i, idx in enumerate(spike_times):
|
||||||
vs = np.sqrt(cs+sn)
|
phase_times[i]= spike_times[i]/eod_durations[i]
|
||||||
|
|
||||||
|
vs = np.sqrt((1/n*sum(np.cos(phase_times)))**2 + (1/n*sum(np.sin(phase_times)))**2)
|
||||||
return vs
|
return vs
|
||||||
|
Loading…
Reference in New Issue
Block a user