分形维数.txt

来自「一个计算混沌时间序列相关维数的matlab程序」· 文本 代码 · 共 139 行

TXT
139
字号



function d=d_seq(x) 
%used to calculate the dimension of the sequence 
%d=d_seq(x) 
%x,times sequence 

%data 
load c:\matlab\work\data\data_c1.mat; 
x=xy(1001:length(xy(:,1)),1); %提取X向量 
%y=xy(1001:length(xy(:,2)),2); %提取Y向量 
clear xy; %清除变量xy以释放空间 

m=4; %m为嵌入维数 
tao=1/pi; %时间序列之间的间隔 
N=length(x)-m; 
w=ceil(tao*((2/N)^(2/m))); % 
r=[0.001:-0.0001:0.0005]; %半径 

h=0; 
for n=w:N 
for i=1N-n) 

%for j=1:m 
% vi(j)=x(i+j); 
% vipn(j)=x(i+j+n); 
%end 

j=1:m; 
vi=x(i+j); 
vipn=x(i+j+n); 
rou=norm(vipn-vi);%||vipn-vi|| 
h1=heaviside(r-rou); 
h=h+h1; 
end 
end 

CrNw=2*h/((N-w+1)*(N-w)); % 
d=log2(CrNw+eps)./log2(r); %关联维数 
tlength=etime(clock,t0); 

fprintf('嵌入维数:m=%d tao=%8.5f',m,tao); 
fprintf(' w=%d N=%d\n',w,N); 
fprintf('r=%8.5f\t',r); 
fprintf('\n关联维数:\n'); 
fprintf('d=%8.5f\t',d); 



























































































⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?