曲线拟合实验报告_第1页
曲线拟合实验报告_第2页
曲线拟合实验报告_第3页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数值分析课程设计报告学生姓名学生学号 所在班级 指导教师成绩评定一、课程设计名称 函数逼近与曲线拟合二、课程设计目的及要求实验目的:学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题。学会基本的矩阵运算,注意点乘和叉乘的区别。实验要求:编写程序用最小二乘法求拟合数据的多项式,并求平方误差,做出 离散函数(,)和拟合函数的图形;(2)用MATLAB的内部函数polyfit求解上面最小二乘法曲线拟合多项 式的系数及平方误差,并用MATLAB的内部函数plot作出其图形,并与(1) 结果进行比较。三、课程设计中的算法描述用最小二乘法多项式曲线拟合,根据给定的数据点,并不要求这条曲 线精确的经过

2、这些点,而是拟合曲线无限逼近离散点所形成的数据曲线。思路分析:从整体上考虑近似函数两同所给数据点冋丽误差 厂(兀)-片|的大小,常用的方法有三种:一是误差匸刁3)-卅绝对值的 最大值应阴创,即误差向量的无穷范数;二是误差绝对值的和可,即误 差向量的1范数;三是误差平方和围的算术平方根,即类似于误差向量 的2范数。前两种方法简单、自然,但不便于微分运算,后一种方法相当 于考虑2范数的平方,此次采用第三种误差分析方案。算法的具体推导过程:1.设拟合多项式为:y =。+1+2 +? +2.给点到这条曲线的距离之和,即偏差平方和:+? +3为了求得到符合条件的回的值,对等式右边求偏导数,因而我们得到了

3、:2 工(+ 1 +? +=22 工(i +? + =27 7 2 工(o + 1 +? + =1)=0)=0)=04将等式左边进行一次简化,然后应该可以得到下面的等式0 + 1+? +=12=12 “匹=1 =1=1 =1+?+2=15把这些等式表示成矩阵的形式,就可以得到下面的矩阵:nnE/-InD r-1nr-l12n-zr-ln-z-r-laJnE/-In z J-l)inzL/-ikXiftP k/-I+1n-E-r-l2kXiftsL/-i6. 将这个范徳蒙得矩阵化简后得到1 X,彳1 x2X?-用最小二乘法求拟合数据的多项式; 用MATLAB内部函数polyfit函数进行拟合。实

4、验步骤1)首先根据表格中给定的数据,用MATLAB软件画出数据的散点图(图1) o2)观察散点图的变化趋势,近似于二次函数。则用二次多项式进行拟合, 取一组基函数,:勺并令f(x)= + &其中 是待定系数(k= 1,2,3)。 X”0_=y2xj7. 因为X*A = Y|,那么A = Y/X ,计算得到系数矩阵,同时就得到了拟合曲 线。四、课程设计内容实验环境:MATLAB2010实验内容:给定的数据点(,)013) 用MATLAB程序作线性最小二乘法的多项式拟合,求待定系数。算法实现代码如下:x 二0;y=l;R= (x. 2) x ones (7, 1);A=Ry,4) 用MATLAB程

5、序计算平均误差。算法实现代码如下:yl=El ;x=Lo ;y=x. 2+x+l;z=(y-yl). 2;sum(z)5) 作出拟合曲线和数据图形(图2)。6) 用MATLAB的内部函数polyfit求解上面最小二乘法曲线拟合多项式的 系数及平方误差。算法实现代码如下:x 二0;y=l;A二polyfit (x, y, 2) ;%二次多形式拟合z=polyval(A, x);d二sum( (z-y) 2) 7)绘制使用polyfit函数实现的拟合图形。(图3)五、程序流程图图5-1用最小二乘法求多项式拟合曲线流程图图5-2用polyfit函数求多项式拟合曲线流程图六、实验结果图6-1表中数据的

6、散点图实验数抿点的散点图及拟合曲线图6-2最小二乘法实现的拟合曲线系数为A 二则多项式的方程为y=分+ +1平方误差和为ans 二实验数抿点的散点图及拟合曲线图6-3. polyfit函数实现的拟合函数 第2问 系数为A =则多项式的方程为y= 2+1平方误差和为ans七、实验结果分析编写程序用最小二乘法求拟合曲线的多项式的过程中,求出的数据和 拟合函数的平方误差很小,达到了很高的精度要求,以及通过散点求得的 拟合曲线比较光滑。而用MATLAB的内部函数求polyfit求解的曲线拟合 多项式和平方误差与程序求得的相同,还有就是虽然求解过程简单了,但 用MATLAB的内部函数做出的图形由明显的尖

7、点,不够光滑。此次实验数据较少,而且数据基本都是可靠数据。但是在应用实际问 题中,数据会很庞杂,此时对于最小为乘法的算法就需要进一步的细化。 例如在进行数据采集时,由于数据采集器(各种传感器)或机器身的原 因及其外部各种因素的制约,导致数据偶尔会有大幅度的波动,及产生一 些偏差极大的数据,不能真实反映数据的可靠性,所以会对数据进行筛选 或修正。而此时就可应用曲线拟合的最小二乘法的进行处理。八、实验心得体会在E1常的学习和生活中,我们可能会遇到各种方面的跟数据有关的问 题,并不是所有的数据都是有用,必须对数据进行适当的处理,然后找出 数据之间的关系,然后进行分析得出结果。此次实验结果基本没有大的

8、区 别,可是MATLAB提供给我们一个特别简洁的办法,应用一个函数即可实 现相同的结果。虽然很方便,但是对于初学者來说,我觉得打好基础才是 关键,对于一个知识点,应该掌握其最基本的原理,然后在将它应用于实 际。通过这个实验我也理解到了,数值分析是一个工具学科,它教给了我们分析和解决数值计算问题得方法,使我从中得到很多关于算法的思想, 从中受益匪浅。附录:源代码散点图:x二0;y=l1;plot (x, y, r*)titleC实验数据点的散点图);legendC 数据点(xi,yi);xlable ( x);ylable ( y);最小二乘拟合:1;x=Lo ;y 二1R= (x. 2) x ones (7, 1):A 二 Ryxl=O;yl=Ll;x=0;y=x. 2+x+l;plot (xl, yl, k+, x, y, r)titleC实验数据点的散点图及拟合曲线);z=(y-yl). 2sum(z)Polyfit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论