马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
大家好,本人是一名分形初学者,从网上下了一个用G-P算法计算分形维数的程序(如下),有3个地方不能明白,请教各位分形学习者,急~急~急~~~
(1)语句Y=reconstitution(data,N,m,tau)中reconstitution()应该是多少?
(2)tau的初值如何设定,应设定为多少?
(3)ss的初值如何设定,应设定为多少?
function [ln_r,ln_C]=G_P(data,N,tau,min_m,max_m,ss)
% the function is used to calculate correlation dimention with G-P algorithm
% data:the time series
% N: the length of the time series
% tau: the time delay
% min_m:the least embedded dimention m
% max_m:the largest embedded dimention m
% ss:the stepsize of r
%skyhawk
data=[396 393 385 384 399 396 389 399 389 387 393 392 385 388 399 378 379 376 392 393 396 393 385 384 399 396 389 399 389 387 393 392 385 388 399 378 379 376 392 393 396 393 385 384 399 396 389 399 389 387 393 385 384 399 396 389 399 389 387 393 392 385 388 399 378 379 376 392 393 396 393 385 384 399 396 389 399 389 387 393 385 384 399 396 389 399 389 387 393 392 385 399 389 387 393 385 384 399 396];
N=length(data);
tau=10;
min_m=3;
max_m=10;
ss=0.001;
for m=min_m:max_m
Y=reconstitution(data,N,m,tau);%reconstitute state space
M=N-(m-1)*tau;%the number of points in state space
for i=1:M-1
for j=i+1:M
d(i,j)=max(abs(Y(:,i)-Y(:,j)));%calculate the distance of each two
end %points in state space
end
max_d=max(max(d));%the max distance of all points
d(1,1)=max_d;
min_d=min(min(d));%the min distance of all points
delt=(max_d-min_d)/ss;%the stepsize of r
for k=1:ss
r=min_d+k*delt;
C(k)=correlation_integral(Y,M,r);%calculate the correlation integral
ln_C(m,k)=log(C(k));%lnC(r)
ln_r(m,k)=log(r);%lnr
fprintf('%d/%d/%d/%d\n',k,ss,m,max_m);
end
plot(ln_r(m,:),ln_C(m,:));
hold on;
end |