📄 functionchaospredict.asv
字号:
%AOLMM多步预测函数
function [FChaosPredict] = FunctionChaosPredict(Data,N,mtbp,deltaT,tao,d,MaxStep)
%Data是一维信号时间序列,N是信号数据长度,mtbp,deltaT,tao,d分别是重构相空间的平均时间序列、采样周期、时延及嵌入维
roll=Data;%取横摇数据
M = N - (d - 1)*tao;
for i = 1 : M
for j = 1 : d
MatrixX(i,j) = roll(i + (j - 1)*tao);
end
end
%计算相空间中第M点与各点的距离
%用最小二乘法计算a[],b[]
for step=1:1:MaxStep
x=MatrixX(1:M-1-step,:);
y=MatrixX(1+step:M-1,:);
xt=MatrixX(M,:);
yy=calculatey(x,y,xt);
%误差修正
% if M-tao+step+(d-1)*tao < N+1
% for j=1:d-1
% err(j)=MatrixX(M + step,j)-roll(M+step+(j-1)*tao);
% end
% ppp=1:d-1;ttt=err;neterr=newrbe(ppp,ttt);xxx=2:d;errp=sim(neterr,xxx);
% PredictedData(step) = MatrixX(M + step,d) - errp(d-1);
% roll(N+step)=PredictedData(step);
% else PredictedData(step) = MatrixX(M + step,d);
% end% roll(N+k)=PredictedData(k);
% PredictedData(step) = MatrixX(M + step,d);
% FChaosPredict(step) = PredictedData(step);
FChaosPredict(step) = yy(end);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -