Kriging 插值程序,實現(xiàn)二維三維數(shù)據(jù)插值
Makefile_hp700
Makefile_ibm6000
kriging.mdf
kriging.c
outboard.c
inv_m.tar.gz The inverse matrix source codes which got from Netlib.
f2c.tar.gz The head file and library which are used to inverse matrix source codes.
krig.net The example dx file.
DATA1.dx The input example.
function [U,center,result,w,obj_fcn]= fenlei(data)
[data_n,in_n] = size(data)
m= 2 % Exponent for U
max_iter = 100 % Max. iteration
min_impro =1e-5 % Min. improvement
c=3
[center, U, obj_fcn] = fcm(data, c)
for i=1:max_iter
if F(U)>0.98
break
else
w_new=eye(in_n,in_n)
center1=sum(center)/c
a=center1(1)./center1
deta=center-center1(ones(c,1),:)
w=sqrt(sum(deta.^2)).*a
for j=1:in_n
w_new(j,j)=w(j)
end
DATA1=data*w_new
[center, U, obj_fcn] = fcm(DATA1, c)
center=center./w(ones(c,1),:)
obj_fcn=obj_fcn/sum(w.^2)
end
end
display(i)
result=zeros(1,data_n) U_=max(U)
for i=1:data_n
for j=1:c
if U(j,i)==U_(i)
result(i)=j continue
end
end
end