function S = golomb_measure(NUM, raster, gauss_width)
spike_times = cell(NUM,1);
for k = 1:length(raster(:,1))
spike_times{raster(k,2)} = [spike_times{raster(k,2)} raster(k,1)];
end
srate=1000; %sampling rate (in Hz) at which to reconstruct the voltage signal from spike_times
duration=.5; %duration of recording (in seconds)
time = 1000/srate:1000/srate:duration*1000; %in ms
timeseries = zeros(srate*duration,NUM);
%first, take spike_times for each electrode and convert them to a time
%series of 1's and 0's, sampled at 1000 Hz
for i_elec = 1:NUM
[time, timeseries(:,i_elec)] = convert_spiketimes(spike_times{i_elec},duration,srate);
end
conv_sig = 0*timeseries;
if gauss_width <= 0
gauss_width = 2;
end
%next, convolve each timeseries of 1's and 0's with a gaussian of width
%'gauss_width' (in milliseconds)
for i_n = 1:NUM
conv_sig(:,i_n) = conv_gaussian(timeseries(:,i_n),srate,gauss_width);
end
%% Here one can print out the gaussian on the raster plot
% for j = 1:NUM
% plot(time,conv_sig(:,j) + (j))
% hold on
% end
%%
num_traces = size(conv_sig,2);
% C = zeros(num_traces,num_traces);
%
% max_lag=300;
%
% for ii = 1:num_traces
% for jj = ii+1:num_traces
%
% tic
% [temp_xcorr2,delay_vals]=xcorrnorm(conv_sig(:,ii),conv_sig(:,jj),max_lag);
% toc
% ii
% jj
% C(ii,jj) = max(temp_xcorr2);
% end
% end
%
% C_mean = 0;
% for ii = 1:num_traces
% for jj = ii+1:num_traces
% C_mean = C_mean + C(ii,jj);
% end
% end
%
% C_mean = 2*C_mean/(num_traces*(num_traces-1))
%tic
[G,G_rescaled] = golomb_synch(conv_sig);
%toc
S = G_rescaled;