无标度区间的matlab程序
G_P方法求关联维时,确定无标度区间的matlab程序怎么编啊?最好是三折线法的。求高手啊,其他方法也可以。以下是我编的,参考的是《地震数据关联维的快速计算方法》。能运算,但是肯定不正确,请高手指正
function KK=three_line(ss,d,CC,rr)
%ss 插入点数
%d 重构后空间数值
%CC lnC的值
%rr lnr的值
d(d==0)=[];
p=log(d);
x=(max(p)-min(p))/ss;
B1=0;
for b=1:ss-1
B1=B1+CC(b)+CC(b+1);
end
A1=abs(0.5*B1*x);
G=inf;
min_n=0;
max_n=0;
for n1=2:ss-1
for n2=n1+1:ss-1
S1=abs(0.5*(CC(1)+CC(n1))*(rr(1)-rr(n2)));
S2=abs(0.5*(CC(n1)+CC(n2))*(rr(n1)-rr(n2)));
S3=abs(0.5*(CC(n2)+CC(ss))*(rr(n2)-rr(ss)));
A2=S1+S2+S3;
G1=A2-A1;
if G>G1
G=G1;
min_n=n1;
max_n=n2;
end
end
end
h=0;
for hh=min_n:max_n
h=h+1;
rrr(h)=rr(hh);
CCC(h)=CC(hh);
end
KK=polyfit(rrr,CCC,1);
[ 本帖最后由 6958192460 于 2010-7-20 21:09 编辑 ]
页:
[1]