📄 lyapunov_kantz_c_lorenz_main.m
字号:
clc;
clear all;
close all;
%-----------------------------------------------------------------
% 产生 Lorenz 混沌时间序列
disp('---------- Lorenz ----------')
sigma = 16; % Lorenz 方程参数 a
b = 4; % b
r = 45.92; % c
y = [-1,0,1]; % 起始点 (1 x 3 的行向量)
h = 0.01; % 积分时间步长,也是采样间隔
k1 = 10000; % 前面的迭代点数
k2 = 10000; % 后面的迭代点数
z = LorenzData(y,h,k1+k2,sigma,r,b);
xn = z(k1+1:end,1); % 时间序列,xn应为列向量
xn =normalize_1(xn)+0.5; % 归一化
%-----------------------------------------------------------------%
tau = 11; % 时延
mean_period = 100; % 序列平均周期
fs = 100; % 采样频率
evolvement_length=500; % 最大离散演化步数
radius=0.005;
norm=2;
linear_zone = [70:250]; % 线性区域
figure;
for m=3:5 % 嵌入维
data = PhaSpaRecon(xn,tau,m);
data = data';% 每列为一个点
lyapunov_result = lyapunov_kantz_c(data,tau,m,evolvement_length,norm,mean_period,fs,radius);
plot(lyapunov_result,'b.-');
hold on;
F = polyfit(linear_zone,lyapunov_result(linear_zone),1);
fit_curve=polyval(F,linear_zone);
plot(fit_curve,'ro-');
grid; xlabel('i'); ylabel('lyapunov_curve'); title('Lorenz')
Lyapunov1 = F(1)
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -