最小二乘法 线与非线性拟合.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
最小二乘法 线与非线性拟合

最小二乘法?线性与非线性拟合 最小二乘法实现数据拟合 ?最小二乘法原理 函数插值是差值函数p x 与被插函数f x 在节点处函数值相同,即p f i 0,1,2,3……,n ,而曲线拟合函数 不要求严格地通过所有数据点 ,也就是说拟合函数 在 处的偏差 不都严格地等于零。但是,为了使近似曲线能尽量反应所给数据点的变化趋势,要求| |按某种度量标准最小。 即 为最小。这种要求误差平方和最小的拟合称为曲线拟合的最小二乘法。 一 线性最小二乘拟合 根据线性最小二乘拟合理论,我们得知关于系数矩阵A的解法为A=R\Y。 例题?假设测出了一组,由下面的表格给出,且已知函数原型为 y x c1+c2*e^ -3*x +c3*cos -2*x *exp -4*x +c4*x^2 x 0 0.2 0.4 0.7 0.9 0.92 0.99 1.2 1.4 1.48 1.5 y 2.88 2.2576 1.9683 1.9258 2.0862 2.109 2.1979 2.5409 2.9627 3.155 3.2052 试用已知数据求出待定系数的值。 在Matlab中输入以下程序 x [0,0.2,0.4,0.7,0.9,0.92,0.99,1.2,1.4,1.48,1.5]; y [2.88;2.2576;1.9683;1.9258;2.0862;2.109; ??2.1979;2.5409;2.9627;3.155;3.2052]; A [ones size x exp -3*x ,cos -2*x .*exp -4*x x.^2]; c A\y; c 运行结果为 ans 1.2200????2.3397???-0.6797????0.8700 下面画出由拟合得到的曲线及已知的数据散点图 x1 [0:0.01:1.5]; A1 [ones size x1 exp -3*x1 ,cos -2*x1 .*exp -4*x1 x1.^2]; y1 A1*c; plot x1,y1,x,y,o 事实上,上面给出的数据就是由已知曲线 y x 0.8700-0.6797*e^ -3*x + 2.3397*cos -2*x *exp -4*x + 1.2200*x^2 产生的,由上图可见拟合效果较好。 多项式最小二乘拟合 在Matlab的线性最小二乘拟合中,用得较多的是多项式拟合,其命令是 A polyfit x,y,m 其中 表示函数中的自变量矩阵, 表示因变量矩阵,是输出的系数矩阵,即多项式的系数。 多项式在自变量x处的函数值y可用以下命令计算: y polyval A,x 例题?对下面一组数据作二次多项式拟合,即要求出二次多项式 中的 ,使最小。 x 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 y -0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2 在Matlab中输入以下命令 x 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 运行结果为 a -9.8108???20.1293???-0.0317 f vpa poly2sym a ,5 %vpa(polyval2sym(),n)只适用于关于多项式函数的拟合。因为此函数对于自变量统一规定为“x”,将由polyfit()所得出的系数按自变量幂次升降放在相应的位置。 运行结果为 f -9.8108*x^2+20.129*x-.31671e-1 下面画出由拟合得到的曲线及已知的数据散点图 y1 polyval a,x ; plot x,y,o,x,y1 (二)非线性最小二乘拟合 (1)lsqcurvefit lsqcurvefit 是非线性最小二乘拟合函数,其本质上是求解 最优化问题。其使用格式为 x lsqcurvefit fun,x0,xdata,ydata 其中,fun是要拟合的非线性函数,x0是初始参数,xdata,ydata是拟合点的数据,该函数最终返回系数矩阵。 例题?假设已知 并已知该函数满足原型为 ,其中 为待定系数。 在Matlab中输入以下命令 x 0:.1:10; y 0.12*exp -0.213*x +0.54*exp -0.17*x .*sin 1.23*x ; f inline a 1 *exp -a 2 *x +a 3 *exp -a 4 *x .*sin a 5 *x ,a,x ; %建立函数原型,则可以根据他来进行下面的求取系数的计算 [a,res] lsqcurvefit f,[1,1,1,1,

文档评论(0)

wgg682 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档