解法1.用解超定方程的方法 此时R=: x11x1 1)输入以下命令: x=0:0.1:1; y=[-0.4471.9783.286.167.087.347.66 9.569.489.3011.2]; R=[(x.^2)x!ones(11,1)]; MATLAB(EXecl) A=R\ 2)计算结果:A=9810820.1293-0.0317 f(x)=-9.8108x2+20.1293x-00317
1)输入以下命令: x=0:0.1:1; y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; R=[(x.^2)' x' ones(11,1)]; A=R\y' 2 1 1 2 11 11 1 1 x x R x x = 此时 MATLAB(zxec1) 解法1.用解超定方程的方法 2)计算结果: A = -9.8108 20.1293 -0.0317 ( ) 9.8108 20.1293 0.0317 2 f x = − x + x −
解法2.用多项式拟合的命令 1)输入以下命令: x=0:0.1:1; y=[-0.4471.9783.286.167.087.347.66 9.569.489.3011.2]; A-polyfit(x,y 2) z=polyval(A, x)i MATLAB(ZXec2 pot(x,y,"k+',x,z,"x")%作出数据点和拟合曲线的图形 2)计算结果:A=-9810820.12930.0317 f(x)=-9.8108x2+20.1293x-00317
1)输入以下命令: x=0:0.1:1; y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; A=polyfit(x,y,2) z=polyval(A,x); plot(x,y,'k+',x,z,'r') %作出数据点和拟合曲线的图形 2)计算结果: A = -9.8108 20.1293 -0.0317 解法2.用多项式拟合的命令 MATLAB(zxec2) 0 0.2 0.4 0.6 0.8 1 -2 0 2 4 6 8 10 12 ( ) 9.8108 20.1293 0.0317 2 f x = − x + x −
用 MATLAB作非线性最小二乘拟合 MATLAB提供了两个求非线性最小二乘拟合的函数: 1 sqcurvefit和1 senon1in.两个命令都要先建立M文件 fun,m,在其中定义函数/x),但两者定义f(x)的方式是不同 的,可参考例题. 1. lsqcurvefit 已知数据点: xdata=( xdata1; xdata21…, xdata), ydata=(ydata, ydata2.ydata,) 1 sqcurvefit用以求含参量x(向量)的向量值函数 F(xi xdata)=(F (x, xdata..,F(x, xdata,))T 中的参变量x(向量),使得 ∑(F(x,xdan)-yn)最小
1. lsqcurvefit 已知数据点: xdata=(xdata1,xdata2,…,xdatan), ydata=(ydata1,ydata2,…,ydatan) 用MATLAB作非线性最小二乘拟合 MATLAB提供了两个求非线性最小二乘拟合的函数: lsqcurvefit和lsqnonlin.两个命令都要先建立M文件 fun.m,在其中定义函数f(x),但两者定义f(x)的方式是不同 的,可参考例题. 2 1 ( ( , ) ) n i i i F x xdata ydata = − 最小 lsqcurvefit用以求含参量x(向量)的向量值函数 F(x,xdata)=(F(x,xdata1),…,F(x,xdatan))T 中的参变量x(向量),使得