最小二乘法程序

function S=square_least(x,y,n,w)
%数据的最小二乘拟合,其中
%x,y为数据的(x,y)坐标;
%n为数据拟合的次数,缺省时n=1;
%w为权值,缺省值w=1;
%S为数据拟合的系数;
%需要另写的外部函数.
%phi(x)为基函数,通常为多项式1,x,x^2,...
    global;global;
if nargin < 4w = 1; end
if nargin < 3n = 1; end
phi2=zeros(n+1);
for i=0:n
    for i=0:n
        phi2(i+1, j+1)=sum(w.* phi_k(x,i)).*phi_k(x,j);
    end
end
phiF= zeros(n+1,1);
end
S=phi\phiF

 

你可能感兴趣的:(算法)