function isicorr = isiserialcorr( isis, maxlag ) % serial correlation of interspike intervals % % isicorr = isiserialcorr( isis, maxlag ) % isis: vector of interspike intervals in seconds % maxlag: the maximum lag in seconds % isicorr: vector with the serial correlations for lag 0 to maxlag lags = 0:maxlag; isicorr = zeros( size( lags ) ); for k = 1:length(lags) lag = lags(k); if length( isis ) > lag+10 % ensure "enough" data % DANGER: the arguments to corr must be column vectors! % We insure this in the isis() function that generats the isis. isicorr(k) = corr( isis(1:end-lag), isis(lag+1:end) ); end end if nargout == 0 % plot: plot( lags, isicorr, '-b' ); hold on; scatter( lags, isicorr, 100.0, 'b', 'filled' ); hold off; xlabel( 'Lag k' ) ylabel( '\rho_k') end end