📄 autocorr_fun.m
字号:
function y=autocorr_fun(x,maxLag);
% AUTOCORR_FUN(x,maxLag) compute autocorrelation function
% Lags from 0 to maxLag
% if output argument not specified acf plotted
%
% last modified 07.12.04
if nargin<2
prompt = {'Enter maximal lag (in samples)'};
dlg_title = 'Enter maximal lag';
num_lines= 1;
def = {num2str(min([128 floor(length(x)/2)]))};
answer = inputdlg(prompt,dlg_title,num_lines,def);
if isempty(answer)
return
end
maxLag=str2num(answer{1});
end
if ~nargout
titles='';
[T,B]=acf(x,maxLag);
plot(T,B),grid on
xlim([T(1) T(end)]);
xlabel('lag (samples)');
else
[T,y]=acf(x,maxLag);
end
function [T,B]=acf(x,M);
av=mean(x);
T=0:M;
B=zeros(length(T),1);
for tau=T
m=length(x)-tau;
B(tau+1)=mean((x(1:m)-av).*(x(1+tau:m+tau)-av))/var(x(1:m));
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -