📄 main_correlationdimension_gp.m
字号:
% G-P 算法求关联维(输入时间序列数据)% 使用平台 - Matlab7.0% 作者:陆振波,海军工程大学% 欢迎同行来信交流与合作,更多文章与程序下载请访问我的个人主页% 电子邮件:luzhenbo@yahoo.com.cn% 个人主页:http://luzhenbo.88uu.com.cnclcclearclose all%---------------------------------------------------% 产生 Lorenz 时间序列% dx/dt = sigma*(y-x)% dy/dt = r*x - y - x*z% dz/dt = -b*z + x*ysigma = 16; % Lorenz方程参数r = 45.92; b = 4; y = [-1;0;1]; % 起始点 (3x1 的列向量)h = 0.01; % 积分时间步长k1 = 30000; % 前面的迭代点数k2 = 3000; % 后面的迭代点数Z = LorenzData(y,h,k1+k2,sigma,r,b);X = Z(k1+1:end,1); % 时间序列(列向量)%------------------------------------------------------% G-P算法计算关联维delta = 0.5;Log2_R = -2:delta:6;R = 2.^(Log2_R);t = 10; % 时延M = 2:6; % 嵌入维 p = 1; % 限制短暂分离,大于序列平均周期(不考虑该因素时 p = 1) tic Log2_Cr = log2(CorrelationIntegral(X,t,M,R,p)); % 输出每一行对应一个嵌入维toc%------------------------------------------------------% 作图figureplot(Log2_R,Log2_Cr,'.-'); axis tight;grid;xlabel('log2(r)'); ylabel('log2(C(r))');title('Lorenz');%------------------------------------------------------% 拟合线性区域linear = [4:8];lM = length(M);F = zeros(lM,2);for i = 1:lM F(i,:) = polyfit(Log2_R(linear),Log2_Cr(i,linear),1);endFCorrelationDimension = F(lM,1)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -