function meanFreq = meanSpikeFreq( spike_train, dt, period )
% meanSpikeFreq - Returns the mean firing frequency in Hz according to mean \
% inter-spike-interval of the given spike train and the
% time resolution dt.
%
% Usage:
% meanFreq = meanSpikeFreq( spike_train, dt, period )
%
% Description:
% Parameters:
% spike_train: Spike times returned by findspikes
% dt: Time step size [s]
% period: Duration of the total time period [dt]
%
% See also:
%
% Author: Cengiz Gunay <cgunay@emory.edu>, 2004/03/08
% Copyright (c) 2007 Cengiz Gunay <cengique@users.sf.net>.
% This work is licensed under the Academic Free License ("AFL")
% v. 3.0. To view a copy of this license, please look at the COPYING
% file distributed with this software or visit
% http://opensource.org/licenses/afl-3.0.php.
if ( length(spike_train) == 0 )
meanFreq = 0;
elseif ( length(spike_train) == 1 )
meanFreq = 1 / (dt * period);
else
isi = diff(spike_train);
meanFreq = 1 / (dt * mean(isi));
end