logo资料库

matlab最佳平方逼近.doc

第1页 / 共1页
资料共1页,全文预览结束
function S=squar_appox(a,b,n) global i;global j; if nargin<3 n=1;end; Phi2=zeros(n+1); for i=0:n for j=0:n end Phi2(i+1,j+1)=quad(@omiga_phi,a,b); PhiF(i+1)=quad(@fun_phi,a,b); end PhiF=zeros(n+1,1) for i=0:n end S=Phi2\PhiF; function y=omiga_phi(x) global i;global j; y=(omiga(x).*phi_k(x,i).*phi_k(x,j)); function y=fun_phi(x) global i; y=(omiga(x).*phi_k(x,i).*obj(x)); function y=omiga(x) y=1; function y=phi_k(x,k) if k==0 else end function y=obj(x) y=exp(x); >> S=squar_appox(-1,1,4) y=ones(size(x)); y=x.^k; PhiF = 0 0 0 0 0 S = 1.0000 0.9980 0.4994 0.1761 0.0436 >> x=-1:0.01:1; >> y1=exp(x); >> y2=0.0436*x.^4+0.1761*x.^3+0.4994*x.^2+0.9980*x+1.0000; >> subplot(1,2,1);plot(x,y1);title('exp(x)'); >> subplot(1,2,2); >> plot(x,y2);title('y2=0.0436*x.^4+01761*.^3+0.4994*.^2+0.9980*x+1.0000');
分享到:
收藏