最小二乘曲线拟合及MATLAB实现_测绘专业论文.doc
《最小二乘曲线拟合及MATLAB实现_测绘专业论文.doc》由会员分享,可在线阅读,更多相关《最小二乘曲线拟合及MATLAB实现_测绘专业论文.doc(67页珍藏版)》请在三一文库上搜索。
1、内蒙古科技大学 本科生毕业设计说明书(毕业论文) 题 目:最小二乘曲线拟合及 MATLAB 实现 学生姓名:李亚 学 号:0972143230 专 业:测绘工程 班 级:2009 测绘 2 班 指导教师:孙同贺 讲师 内蒙古科技大学毕业设计说明书(毕业论文) I 最小二乘曲线拟合及最小二乘曲线拟合及 MATLABMATLAB 实现实现 摘摘 要要 介绍曲线拟合的基本理论,对最小二乘原理进行了全方位的理论阐述,同时也阐 述了曲线拟合的基本原理及多项式曲线拟合模型的建立。详细的解答了曲线拟合中的 最小二乘法,并介绍了部分的正交最小二乘法理论。重点讲解多项式拟合的具体步骤, 同时也介绍了非线性方程的
2、最小二乘拟合,在建立理论的基础上对最小二乘曲线拟合 法的 MATLAB 实现方法进行研究,利用 MATLAB2012b 的平台对测量数据进行最小 二乘曲线拟合,介绍 MATLAB 的具体构造和曲线拟合工具。利用 MATLAB 中的 ployfit 函数对实测数据进行多项式曲线拟合,并给出曲线拟合 MATLAB 实现的源程序, 给出拟合曲线,并评定拟合的精度证明该方法是行之有效的。 关键词:关键词:最小二乘法,曲线拟合,MATLAB,测量数据 内蒙古科技大学毕业设计说明书(毕业论文) II Curve Fitting in Least-Square Method and Its Realizat
3、ion with Matlab Abstract To introduce the basic theory of curve fitting and discuss the least squares principle in this paper, whats more, we also discuss the basic principle of curve fitting and the establishment of polynomial curve fitting model. Meanwhile, we also introduce the least-square metho
4、d of curve fitting in detail and part of the theory of orthogonal least square method. We mainly discuss the specific steps of polynomial fitting, and also introduces the nonlinear equation of the least squares fitting at the same time, which established on the theory of least squares curve fitting
5、in MATLAB in order to realize the method to do research. Using MATLAB2012b platform to achieve the goal of measuring data and introducing the special structure of MATLAB and curve fitting tool. We can use ployfit function in MATLAB to polynomial curve fitting of experimental data, and get the MATLAB
6、 source program about curve fitting and the fitting curve. Finally, we need to prove the method of assessing the precision of the fitting is effective. Key words: least square method; curve fitting; MATLAB, metrical data 内蒙古科技大学毕业设计说明书(毕业论文) III 最小二乘曲线拟合及最小二乘曲线拟合及 MATLABMATLAB 实现实现.I 摘摘 要要.I CURVE F
7、ITTING IN LEAST-SQUARE METHOD AND ITS REALIZATION WITH MATLABII ABSTRACTII 第一章第一章 引引 言言.1 1.1 研究背景研究背景.1 1.1.1 历史理论原理历史理论原理.1 1.1.2 现代研究现代研究.1 1.2 问题定义问题定义2 1.2.1 曲线拟合的思想曲线拟合的思想.2 1.2.2 多项式拟合多项式拟合.3 1.2.3 利用利用 Matlab 的的 polyfit 函数进行多项式拟合函数进行多项式拟合.3 1.3 论文结构论文结构3 第二章第二章 数据曲线拟合数据曲线拟合.4 2.1 测量数据测量数据.4
8、2.2 拟合模型拟合模型.4 2.3 最小二乘原理最小二乘原理.5 2.3.1 最小二乘法最小二乘法5 2.3.2 最小二乘估计与极大似然估计最小二乘估计与极大似然估计7 内蒙古科技大学毕业设计说明书(毕业论文) IV 2.4 数据拟合数据拟合.9 2.4.1 曲线拟合理论曲线拟合理论9 2.4.2 最小二乘法线性拟合原理最小二乘法线性拟合原理10 2.4.3 最小二乘非线性拟合最小二乘非线性拟合12 2.4.4 正交多项式正交多项式13 2.4.5 正交最小二乘曲线拟合正交最小二乘曲线拟合15 2.5 曲线拟合精度评定曲线拟合精度评定.17 第三章第三章 MATLAB19 3.1MATLAB
9、 概述概述.19 3.1.1MATLAB 简介简介19 3.1.2MATLAB 的主要组成部分的主要组成部分21 3.2MATLAB2012B的运行简介的运行简介.23 3.2.1 启动和退出启动和退出 MATLAB2012b.23 3.2.2MATLAB2012b 桌面系统桌面系统24 3.2.3MATLAB 函数调用系统函数调用系统26 3.2.4MATLAB2012b 的帮助系统的帮助系统27 3.2.5 附件管理系统附件管理系统28 3.2.6 数据交换系统数据交换系统28 3.2.7MATLAB 中的其他系统中的其他系统.29 3.3 最小二乘曲线拟合法的最小二乘曲线拟合法的 MAT
10、LAB 实现实现.30 第四章第四章 最小二乘法曲线拟合的最小二乘法曲线拟合的 MATLAB 实现实现.32 4.1 使用使用POLYFIT函数实现多项式拟合函数实现多项式拟合32 内蒙古科技大学毕业设计说明书(毕业论文) V 4.2 二次多项式的曲线拟合二次多项式的曲线拟合33 4.3 三次多项式的曲线拟合三次多项式的曲线拟合.34 4.4 四次多项式曲线拟合四次多项式曲线拟合35 4.5 数据处理和精度评定数据处理和精度评定.36 第五章第五章 总结总结.40 参考文献参考文献.41 附录附录 1 1:43 MATLABMATLAB 语言编程源代码语言编程源代码43 附录附录 2:45 各
11、次拟合的拟合曲线方程各次拟合的拟合曲线方程.45 致谢致谢.46 外文翻译外文翻译.47 外文部分外文部分.47 翻译部分翻译部分.54 内蒙古科技大学毕业设计说明书(毕业论文) 1 第一章第一章 引引 言言 1.1 研究背景研究背景 1.1.1 历史理论原理历史理论原理 Weierstrass 第一逼近定理第一逼近定理1 对任意函数和任意给定的,都存在 n 次代数多项式,满足 fCa,bx 0 n px (1-1-1) , |”为命令提示符,该提示符表明 MATLAB 处于编辑调试状态。一般在命 令窗口中 MATLAB 为单行操作,其中包含两方面含义:一方面表明每一个命令提示符 后在一行内为
12、完整的命令或函数调用,另一方面也表明 MATLAB 是给定操作后立即执 行,然后重新进入编辑调试状态,等待新的操作。 内蒙古科技大学毕业设计说明书(毕业论文) 29 在命令窗口中也可以通过按【Shift+Enter】组合键来续行操作,但只能禁止命令立 即执行而不能实现多行命令。 例如: 图 3.8 MATLAB 数组运算 3.2.4MATLAB2012b 的帮助系统的帮助系统 完善的帮助系统是任何应用软件必要的组成部分。MATLAB2012b 提供了相当丰 富的帮助信息,同时也提供了多种获得帮助的方法。 MATLAB 的帮助信息的种类及简要说明如表 3.1 所示 帮助类别帮助类别说明说明 版本
13、信息(Release Note)提供当前使用软件的版本信息 简要帮助(Getting Star With)提供软件的简要信息 详细帮助(Using)软件的详细信息 参考信息(Reference Pages)给出函数的符号、说明、示例及其他信息 M 文件帮助(M-file Help)给出 M 文件的简要帮助信息 产品信息(Product Page)给出相应产品信息 在线帮助(On-line Knowledge Base)在线获得 MATLAB 帮助 表 3. 1 MATLAB 帮助系统 面对丰富的帮助信息,MATLAB 提供了相应的获取帮助的方法。首先,我们可以 通过桌面平台的【Help】菜单来
14、获得帮助, 内蒙古科技大学毕业设计说明书(毕业论文) 30 也可以通过工具栏中的帮助选项获得帮助3。此外,MATLAB 也提供了在命令窗口中 的获得帮助的多种方法。主要帮助命令有: doc:在帮助浏览器中显示指定函数的参考信息 help:在命令窗口中显示 M 文件帮助 helpbrowser:打开帮助浏览器,无参数 helpwin:打开帮助浏览器,并且将初始界面置于 MATLAB 函数的 M 文件帮助信息 lookfor:在命令窗口中显示具有指定参数特征函数的 M 文件帮助 web:显示指定的网络页面,默认为 MATLAB 帮助浏览器 另外我们还可以通过在组建平台中调用演示模型(demo)来获
15、得特殊帮助。 3.2.5 附件管理系统附件管理系统 MATLAB 附件管理系统包括工作空间管理系统、路径管理系统以及文件管理系统。 工作空间管理系统是显示在 MATLAB 运行期间内存中变量的有关信息,使用工作 空间管理系统将打开工作空间浏览器。 路径管理系统是在 MATLAB 环境中管理 M 文件及其他相关 MATLAB 文件的系 统。当创建任何新的 MATLAB 文件时,应将文件所在目录加入 MATLAB 搜寻路径以 便于 MATLAB 的调用。 一般而言,用户创建或修改的 M 文件不应放在 MATLAB 的默认文件路径下,否 则重装或升级新的版本时,该文件将被删除或覆盖,一般可以放在 M
16、ATLABroot/work 目录下。 当创建或修改默认文件路径下的文件时,需要重新启动 MATLAB 或使用 rehash 函数以加载,因为 MATLAB 的默认文件均在 MATLAB 启动时加载至内存。 用户也可以根据自己的需要更改搜索路径,MATLAB 的搜索路径存于 内蒙古科技大学毕业设计说明书(毕业论文) 31 MATLABroot/toolbox/local/pathdef.m 文件中,用户可以对其进行修改。 3.2.6 数据交换系统数据交换系统 MATLAB 提供了多种方法将数据从磁盘或剪贴板中读入 MATLAB 工作空间,同 时也提供了多种将工作空间的数据写入磁盘的方法。 (1
17、) 文本数据的输入输出 对于文本数据(ASCII)而言,最简单的读入方法就是通过 MATLAB 的数据输入 向导,也可以通过 MATLAB 函数实现数据读入。 (2) 二进制数据的输入输出 MATLAB 中二进制数据的输入输出与文本数据的输入输出方法相似 (3) 级次数据结构的处理 级次数据结构(Hierarchical Data Format,HDF)是由美国超级计算中心 (NCSA)开发的一种独立于机器之外的科学数据的存储结构。为了完善与 C 和 Fortran 的数据交换,MATLAB 也提供了对级次数据结构的支持。 (4) 低级文件输入输出函数 MATLAB 也提供了与标准 C 类型的
18、低级文件输入输出函数,如 fopen 用于打开指 定的文件,fread 用于从文件中读取数据,fwrite 用于向文件中写入数据等。 3.2.7MATLAB 中的其他系统中的其他系统 (1)M 文件编辑调试系统 M 文件编辑调试系统将为用户提供创建、编辑和调试 M 文件的环境,主要为 M 文件的编辑调试器。 (2)M 文件优化系统 M 文件优化系统可以得到被处理的 M 文件执行时每一行语句运算所消耗的时间, 通过对事件的分析,用户可以: 内蒙古科技大学毕业设计说明书(毕业论文) 32 避免程序中无效的运算 改变算法以避免使用处理问题效率低的函数 避免对以后将会使用的数据进行操作 (3)源控制处
19、理系统 MATLAB 不能执行源控制函数,但可以提供源控制界面,即可以打开 M 文件编 辑源控制文件,但不改变其只读特点,即不会覆盖源文件。 (5) 记事本系统 MATLAB 也提供将数值计算以及可视化结果与文字处理环境相结合的记事本系统。 通过记事本系统可以得到 M 文件,其中将包括文档、MATLAB 命令以及 MATLAB 命 令执行结果等。 3.3 最小二乘曲线拟合法的最小二乘曲线拟合法的 MATLAB 实现实现 采用 Basic,Fortran,C 等编程语言来实现曲线拟合,需要编写非常复杂的算法程序, 对一般的工程技术人员而言,将是一个非常艰巨的任务。而 MATLAB 语言是集数值计
20、 算、符号运算和图形处理等强大功能于一体的科学计算语言,适合于工程应用各领域 的分析、设计和复杂计算,而且他易学易用,不要求使用者具有高深的数学知识和编 程技巧,在这方面,MATLAB 具有一般高级语言无法比拟的优势2。 在 MATLAB 环境中,他提供了许多函数来实现曲线的拟合,这里简述几种曲线拟 合法的 MATLAB 实现方法。 (1) 使用 MATLAB 的最优化工具箱中的 lsqcurvefit()函数来实现,该函数的调用 格 式为:a,J=lsqcurvefit(原型函数名,x,y) 0 其中:为最优的初值;x,y 为原始输入输出数据矢量 0 (2) 采用线性方程组编程来实现:根据线
21、性方程组的构造原则,针对不同的原型函 内蒙古科技大学毕业设计说明书(毕业论文) 33 数,构造矩阵不同,编写程序不同。下面我们以指数函数拟合为例,MATLAB 实现方法的源程序如图 3.9 所示: 图 3.9 MATLAB 的脚本编辑器 (3) 采用 MATLAB2012b 自带曲线拟合工具箱进行曲线拟合,MATLAB2012b 自带 的曲线拟合工具箱,每一种曲线拟合的方法都是前人优秀工作的结晶。其中包 括 Gaussion(高斯) ,Interpolant(插值) ,Ploynomial(多项式) ,Power(幂函 数) ,Weibull(韦伯分布),Smoothing spline(平滑
22、样条函数) ,Sum of sine(正弦 函数)等可以为我们直接提供的样板模型,为我们的工作带来了方便。具体窗 口我们可以看图 3.10 所示: 内蒙古科技大学毕业设计说明书(毕业论文) 34 图 3.10 MATLAB 的曲线拟合工具箱 我们可以在窗口中添加需要拟合的离散数据,选择上面介绍的具体拟合函数,给定参 数进行相关的数据拟合,利用这些经典的函数模型可以使我们工作更加方便简单。 (4) 采用 ployfit 函数实现多项式拟合 在本文中我们主要利用 ployfit 函数进行算例的解答,具体操作在第四章给出完美 解答。 3.4 本章小结本章小结 本章介绍了 MATLAB 的发展和一些基
23、本的运用,在此基础上又介绍了 MATLAB 的曲线拟合方法。 第四章第四章 最小二乘法曲线拟合的最小二乘法曲线拟合的 MATLAB 实现实现 在这一章中我们利用上面所论述的观点及算法对实际工作进行验证,利用 MATLAB 的相关工具通过最小二乘法曲线拟合实现测量中地表移动变形模型的建立与 内蒙古科技大学毕业设计说明书(毕业论文) 35 预测,下面是济宁某矿采空区 A 点的变形观测资料,如表所示 累计天数 (T/d) 实际累计下 沉值(Y/mm) 累计天数 (T/d) 实际累计下 沉值(Y/mm) 0 0 135 105 15 4 150 126 30 9 165 146 45 15 180 1
24、63 60 21 195 180 75 33 210 192 90 45 225 200 105 61 240 206 120 83 255 207 表 4.1 济宁某矿采空区 A 点的变形观测资料 (引用参考文献6 曲线拟合与插值模型在矿区变形预测中的应用 数据) 4.1 使用使用 polyfit 函数实现多项式拟合函数实现多项式拟合 在 MATLAB 中 ployfit 函数的基本调用格式为:p=ployfit(x,y,n) ,其中 x,y 为样本数据向量,而 n 为拟合的多项式的项数3。如果要查看拟合的多项式的表达式, 则可以使用符号工具箱中的 ploy2sym 函数,这时多项式按照幂次
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最小 曲线拟合 MATLAB 实现 测绘 专业 论文
链接地址:https://www.31doc.com/p-3935683.html