1、2022年8月3日9时17分MATLAB语言与应用1第第 6 6 章章数据插值与函数逼近问题数据插值与函数逼近问题2022年8月3日9时17分MATLAB语言与应用2主要内容主要内容l数据插值问题l函数拟合(逼近)问题2022年8月3日9时17分MATLAB语言与应用36.1 6.1 数据插值数据插值l一维数据的插值问题l二维网格数据的插值问题l二维一般分布数据的插值问题l高维插值问题2022年8月3日9时17分MATLAB语言与应用46.1.1 6.1.1 一维数据的插值问题一维数据的插值问题2022年8月3日9时17分MATLAB语言与应用5【例例6-16-1】已知的数据点来自函数根据生成
2、的数据进行插值处理,得出较平滑的曲线直接生成数据。2022年8月3日9时17分MATLAB语言与应用6max(abs(y0-y1),max(abs(y0-y2),.max(abs(y0-y3),max(abs(y0-y4)2022年8月3日9时17分MATLAB语言与应用7【例例6-26-2】编写一段程序,允许利用插值方法手工绘编写一段程序,允许利用插值方法手工绘制制一条光滑的曲线2022年8月3日9时17分MATLAB语言与应用82022年8月3日9时17分MATLAB语言与应用96.1.2 6.1.2 二维网格数据的插值问题二维网格数据的插值问题2022年8月3日9时17分MATLAB语言
3、与应用10【例例6-36-3】2022年8月3日9时17分MATLAB语言与应用112022年8月3日9时17分MATLAB语言与应用122022年8月3日9时17分MATLAB语言与应用136.1.3 6.1.3 二维一般分布数据的插值问题二维一般分布数据的插值问题2022年8月3日9时17分MATLAB语言与应用14【例例6-46-4】3,3,x 在2022年8月3日9时17分MATLAB语言与应用152022年8月3日9时17分MATLAB语言与应用166.1.4 高维插值问题高维插值问题三维的网格数据:维网格数据的生成:2022年8月3日9时17分MATLAB语言与应用17【例例6-5
4、6-5】2022年8月3日9时17分MATLAB语言与应用186.2 6.2 由已知数据拟合数学模型由已知数据拟合数学模型l多项式拟合l样条函数插值与拟合l函数线性组合的曲线拟合方法l最小二乘曲线拟合2022年8月3日9时17分MATLAB语言与应用196.2.1 6.2.1 多项式拟合多项式拟合2022年8月3日9时17分MATLAB语言与应用20【例例6-66-6】2022年8月3日9时17分MATLAB语言与应用212022年8月3日9时17分MATLAB语言与应用226.2.2 样条函数插值与拟合6.2.2.1 三次样条函数2022年8月3日9时17分MATLAB语言与应用236.2.
5、2.2 spline函数的插值与拟合yy=spline(x,y,xx)pp=spline(x,y)xx、yy分别为需要插值的点与值分别为需要插值的点与值pp为结构数据类型,包括为结构数据类型,包括length(x)-1个个3阶多项阶多项式的系数矩阵。式的系数矩阵。2022年8月3日9时17分MATLAB语言与应用24 已知x=0:10;y=sin(x)的11个点,用三次样条函数拟合数据。x=0:10;y=sin(x);xx=0:.25:10;yy=spline(x,y,xx);plot(x,y,o,xx,yy)【例例6-76-7】2022年8月3日9时17分MATLAB语言与应用25 pp=s
6、pline(x,y)xx=0:.25:10;yy=ppval(pp,xx);plot(x,y,o,xx,yy)样条函数拟合样条函数求值2022年8月3日9时17分MATLAB语言与应用266.2.3 6.2.3 函数线性组合的曲线拟合方法函数线性组合的曲线拟合方法2022年8月3日9时17分MATLAB语言与应用27该方程的最小二乘解为:其中2022年8月3日9时17分MATLAB语言与应用28【例例6-86-8】2022年8月3日9时17分MATLAB语言与应用292022年8月3日9时17分MATLAB语言与应用30【例例6-96-9】2022年8月3日9时17分MATLAB语言与应用31
7、2022年8月3日9时17分MATLAB语言与应用326.2.4 6.2.4 最小二乘曲线拟合最小二乘曲线拟合2022年8月3日9时17分MATLAB语言与应用332022年8月3日9时17分MATLAB语言与应用34【例例6-106-10】2022年8月3日9时17分MATLAB语言与应用352022年8月3日9时17分MATLAB语言与应用36【例例6-116-11】2022年8月3日9时17分MATLAB语言与应用37 y1=c8f3(a,x);plot(x,y,x,y1)2022年8月3日9时17分MATLAB语言与应用38本章内容简介本章内容简介函数名函数名函数功能函数功能inter
8、p1()()一维数据插值,实现各种插值算法一维数据插值,实现各种插值算法interp2()()二维网格数据插值,实现各种插值算法二维网格数据插值,实现各种插值算法griddata()()任意分布点数据的二维插值任意分布点数据的二维插值meshgrid()()二维、三维网格数据生成二维、三维网格数据生成interp3()()三元网格数据插值三元网格数据插值ndgrid()()N维网格数据生成维网格数据生成interpn()()N维网格数据插值维网格数据插值2022年8月3日9时17分MATLAB语言与应用39本章内容简介本章内容简介函数名函数名函数功能函数功能griddata3()()三元一般分
9、布数据的插值三元一般分布数据的插值griddatan()()N维一般数据插值维一般数据插值polyfit()()多项式函数拟合多项式函数拟合polyval()()多项式函数求值多项式函数求值spline()()三次样条函数拟合三次样条函数拟合ppval()()三次样条函数求值三次样条函数求值lsqcurvefit()()利用最小二乘法的曲线参数拟合利用最小二乘法的曲线参数拟合2022年8月3日9时17分MATLAB语言与应用40l由已知样本点去计算其他点函数值的方法称为数由已知样本点去计算其他点函数值的方法称为数据插值,本章介绍了一维数据插值的方法及据插值,本章介绍了一维数据插值的方法及 MATLAB 求解,介绍了二维网格数据及一般分布求解,介绍了二维网格数据及一般分布数据的插值问题求解,并简单介绍了高维数据插数据的插值问题求解,并简单介绍了高维数据插值的求解。值的求解。函数线性组合的曲线拟合方法、函数线性组合的曲线拟合方法、本章内容简介本章内容简介