《最小二乘曲线拟合及其MATLAB实现》由会员分享,可在线阅读,更多相关《最小二乘曲线拟合及其MATLAB实现(5页珍藏版)》请在金锄头文库上搜索。
1、1最小二乘曲线拟合及其 MATLAB 实现摘 要:随着人类认识能力的不断进步以及计算技术的快速发展,对于变量之间的未知关系,应用曲线拟合的方法对揭示其内在规律具有重要的理论与现实意义。在科学实验数据的处理、分析时,实验数据拟合是经常采用的一种方法。本文为了解决所给数据的曲线拟合问题,采用了最小二乘曲线进行拟合。根据最小二乘拟合理论,并利用MATLAB数值分析软件进行编程,实现相应数据的曲线拟合,获得了曲线模型对相应数据的拟合曲线,很好地解决了所给数据的曲线拟合问题。关键词:曲线拟合,最小二乘法,MATLAB前 言在科学实验数据处理,分析中,有时往往需要根据一组给定的实验数据,求出自变量x与因变
2、量y的函数关系,有时很难找到它们(,)ixy0,123.)m之间的精确表达式 , 这时就要根据观察点的数值,利用最小二乘曲线(f拟合去构造一个近似解析式 。利用该方法“拟合”出的函数曲*)(yfxS线 虽然不能保证通过所有的样本点,但是很好地“逼近”了它们,*()fxS充分反映了已知数据间内在的数量关系.因此,这种方法在生产实践和科学实验中具有广泛的应用前景.一般构造 的方法很多,本文针对最小二乘曲线()yfx拟合的有关问题以及相应的MATLAB实现进行探讨。1. 最小二乘曲线拟合最小二乘曲线拟合方法:根据给定的实验数据 ,(,)ixy0,123.)m要求所给的实验数据与一个函数 【1】 拟合
3、,若记误差*()ySx*()ixiyis, , 【1】 设 , , 是(0,123.m(0,1.)Tm0()x1()()nx上线性无关函数族,在 【1】 中找一个函数Cab,.nspan,使误差平方和*()Sx2,22*2()00 02()min()mi xiiSxiyiys 这里(nclear all;xdata=0.1 0.4 0.5 0.7 0.7 0.9;ydata=0.61 0.92 0.99 1.52 1.47 2.03;3x0=1 1 1 1;x,resnorm,residual=lsqcurvefit(fun,x0,xdata,ydata)运行程序,输出如下:x =-5.588
4、1-21.245414.64666.2096resnorm =0.0067residual =0.0022 -0.0390 0.0590 -0.0397 0.0103 0.0072从而拟合函数为 ()5.812.45*1.64sin6.209xfxxxe绘制拟合曲线的代码如下:plot(xdata,ydata,ro);xi=0:0.1:1.0;y=fun(x,xi);grid on;hold onplot(xi,y);legend(观测数据点,拟合数据点);xlabel(数据);ylabel(拟合);运行程序,效果如图 1 所示。4图 1 最小二乘曲线拟合效果图4.结论首先介绍了最小二乘法,其
5、次针对相应的曲线拟合问题应用MATLAB具体实现了最小二乘曲线的拟合,获得了最小二乘拟合曲线,使相应的曲线拟合问题得到了解决。在今后的研究和工作中也可以应用MATLAB 来实现建立曲线模型对相应数据对象进行曲线拟合,从而找到更好更形象的反映变量之间关系的曲线,找到合适的拟合曲线。5参考文献1.李庆杨,王能超,易大义.数值分析M.北京:清华大学出版社,2008:73-782.张德.MATLAB 数值分析M.北京:机械工业出版社,2012:254-2623.唐培培,戴晓霞,谢龙汉.MATLAB 科学计算及分析M.北京:电子工业出版社,2012:253-261完成人签名: 沈小龙 汪强 王华敏完成时间: 2012 年 11 月 26 日