📄 lc_2.m
字号:
%这里设采样信号为leleccum
load leleccum;
%取其中的1024个点
signal=leleccum(1:1024);
s=sum(signal);
%y为101*11的二维数组,每一行对应不同q值的配分函数
y=zeros(101,11);
i=1;
%q取值范围为-50~50,步进为1
for q=-50:50
j=1;
%以下循环用于求q相同而测量单元尺寸不同的配分函数,存于y的第i行中
for n=0:10
p=zeros(1,1024/2^n);
m=1;
%以下的循环用于求测量单元尺寸为2^n时,各个盒子的平均高度概率分布,存于数组p中
for k=1:2^n:1024
Ins=signal(k:2^n+k-1);
p(m)=sum(Ins)/s;
m=m+1;
end;
y(i,j)=sum(p.^q);
j=j+1;
end;
%x为测量单元尺寸
x=zeros(1,11);
for n=1:11
x(n)=2^n/1024;
end
n=1:11;
xlabel('测量单元尺寸的自然对数');ylabel('配分函数的自然对数');
plot(log(x),log(y(i,n)));
hold on;
i=i+1;
end;
Dy=diff(log(y),1,2);
De=diff(log(x),1,2);
%Tq为质量指数,是q的函数
Tq=zeros(101,1);
for n=1:101
Tq(n)=mean(Dy(n,:)./De);
end;
Tq=Tq';
%广义分形维数Dq
q=-50:1:50;
Dq=zeros(101,1);
for i=1:1:101
Dq(i)=Tq(i)/(q(i)-1)
end;
figure;
xlabel('质量指数');ylabel('广义分形维数');
plot(q,Dq);
q=-49:49;
z=diff(Tq,1,2);
%Alf为奇异指数
Alf=1:99;
for n=1:99
Alf(n)=(z(n)+z(n+1))/2;
end;
Tq=Tq(2:100);
%fa为多重分形谱函数
fa=Alf.*q-Tq;
n=1:99;
figure;
xlabel('a');ylabel('f(a)');
plot(Alf,fa);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -