《第六讲插值与拟合课件.ppt》由会员分享,可在线阅读,更多相关《第六讲插值与拟合课件.ppt(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第六讲插值与拟合第1页,此课件共61页哦插值与拟合插值与拟合一、插值的基本原理一、插值的基本原理二、拟合的基本原理二、拟合的基本原理三、插值与拟合的关系三、插值与拟合的关系四、插值的四、插值的MATLABMATLAB实现实现五、拟合的五、拟合的MatlabMatlab实现实现第2页,此课件共61页哦 我们经常会遇到大量的数据需要处理,而处我们经常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,例如数据拟合、理数据的关键就在于这些算法,例如数据拟合、参数估计、插值等数据处理算法。此类问题在参数估计、插值等数据处理算法。此类问题在MATLAB中有很多现成的函数可以调用,熟悉中有很多现成的
2、函数可以调用,熟悉MATLAB,这些方法都能游刃有余的用好。,这些方法都能游刃有余的用好。一、概述第3页,此课件共61页哦 数据拟合在很多赛题中有应用,与图形处理有数据拟合在很多赛题中有应用,与图形处理有关的问题很多与插值和拟合有关系,例如关的问题很多与插值和拟合有关系,例如9898年美国年美国赛赛A A题,生物组织切片的三维插值处理,题,生物组织切片的三维插值处理,9494年年A A题逢题逢山开路,山体海拔高度的插值计算,山开路,山体海拔高度的插值计算,20032003年吵的年吵的沸沸扬扬的沸沸扬扬的“非典非典”问题也要用到数据拟合算法,问题也要用到数据拟合算法,观察数据的走向进行处理,观察
3、数据的走向进行处理,20052005年的雨量预报的年的雨量预报的评价的插值计算。评价的插值计算。20012001年的公交车调度拟合问题,年的公交车调度拟合问题,20032003年的饮酒驾车拟合问题。年的饮酒驾车拟合问题。第4页,此课件共61页哦喝两瓶酒的拟合曲线喝两瓶酒的拟合曲线喝喝1-5瓶酒的拟合曲线瓶酒的拟合曲线第5页,此课件共61页哦 在实际中,常常要处理由实验或测量所得到在实际中,常常要处理由实验或测量所得到的一些离散数据。插值与拟合方法就是要通过这的一些离散数据。插值与拟合方法就是要通过这些数据去确定某一类已知函数的参数或寻求某个些数据去确定某一类已知函数的参数或寻求某个近似函数,使
4、所得到的近似函数与已知数据有较近似函数,使所得到的近似函数与已知数据有较高的拟合精度。高的拟合精度。如果要求这个近似函数(曲线或曲面)经过如果要求这个近似函数(曲线或曲面)经过所已知的所有数据点,则称此类问题为所已知的所有数据点,则称此类问题为插值问题插值问题。(不需要函数表达式)(不需要函数表达式)二、基本概念第6页,此课件共61页哦 如果不要求近似函数通过所有数据点,而如果不要求近似函数通过所有数据点,而是要求它能较好地反映数据变化规律的近似函是要求它能较好地反映数据变化规律的近似函数的方法称为数的方法称为数据拟合数据拟合。(必须有函数表达式)。(必须有函数表达式)近似函数不一定(曲线或曲
5、面)通过所有近似函数不一定(曲线或曲面)通过所有的数据点。的数据点。第7页,此课件共61页哦1 1、联系、联系都是根据实际中一组已知数据来构造一个能够都是根据实际中一组已知数据来构造一个能够反映数据变化规律的近似函数的方法。反映数据变化规律的近似函数的方法。2 2、区别、区别插值问题插值问题不一定得到近似函数的表达形式,仅通不一定得到近似函数的表达形式,仅通过插值方法找到未知点对应的值。过插值方法找到未知点对应的值。数据拟合数据拟合要求要求得到一个具体的近似函数的表达式。得到一个具体的近似函数的表达式。三、插值与拟合的区别和联系第8页,此课件共61页哦四、插值的使用及求解 当数据量不够,需要补
6、充,且认定已有数据当数据量不够,需要补充,且认定已有数据可信时可信时,通常利用函数插值方法。通常利用函数插值方法。实际问题当中碰到的函数实际问题当中碰到的函数 f(x)是各种各样的,是各种各样的,有的表达式很复杂,有的甚至给不出数学的式子,有的表达式很复杂,有的甚至给不出数学的式子,只提供了一些离散数据,警如,某些点上的函数只提供了一些离散数据,警如,某些点上的函数值和导数值。值和导数值。4.1 4.1 引言引言第9页,此课件共61页哦 选选用用不不同同类类型型的的插插值值函函数数,逼逼近近的的效效果果就就不不同,一般有:同,一般有:(1)拉格朗日插值()拉格朗日插值(lagrange插值)插
7、值)(2)分段线性插值)分段线性插值(3)Hermite(4)三次样条插值。)三次样条插值。4.2 4.2 插值方法插值方法第10页,此课件共61页哦一维插值的定义一维插值的定义已知已知 n+1个节点个节点其中其中互不相同,不妨设互不相同,不妨设求任一插值点求任一插值点处的插值处的插值节点可视为由节点可视为由产生产生,,表达式复杂表达式复杂,,或无显式形式或无显式形式,,或未知或未知.。第11页,此课件共61页哦 构造一个构造一个(相对简单的相对简单的)函数函数通过全部节点通过全部节点,即即再用再用计算插值,即计算插值,即返回返回第12页,此课件共61页哦 称为拉格朗日插值基函数拉格朗日插值基
8、函数。已知函数f(x)在n+1个点x0,x1,xn处的函数值为 y0,y1,yn。求一n次多项式函数Pn(x),使其满足:Pn(xi)=yi,i=0,1,n.解决此问题的拉格朗日插值多项式公式如下其中Li(x)为n次多项式:拉格朗日拉格朗日(Lagrange)插值插值第13页,此课件共61页哦拉格朗日拉格朗日(Lagrange)插值插值特别地特别地:两点一次两点一次(线性线性)插值多项式插值多项式:三点二次三点二次(抛物抛物)插值多项式插值多项式:第14页,此课件共61页哦 拉格朗日多项式插值的这种振荡现象叫 Runge现象现象 采用拉格朗日多项式插值:选取不同插值节点个数n+1,其中n为插值
9、多项式的次数,当n分别取2,4,6,8,10时,绘出插值结果图形.例例To MatlabTo Matlablch(larg1)lch(larg1)第15页,此课件共61页哦分段线性插值分段线性插值计算量与n无关;n越大,误差越小.xjxj-1xj+1x0 xnxoy第16页,此课件共61页哦To MATLABxch11,xch12,xch13,xch14例例用分段线性插值法求插值用分段线性插值法求插值,并观察插值误差并观察插值误差.1.在在-6,6中平均选取中平均选取5个点作插值个点作插值(xch11)4.在在-6,6中平均选取中平均选取41个点作插值个点作插值(xch14)2.在在-6,6中
10、平均选取中平均选取11个点作插值个点作插值(xch12)3.在在-6,6中平均选取中平均选取21个点作插值个点作插值(xch13)第17页,此课件共61页哦比分段线性插值更光滑。比分段线性插值更光滑。xyxi-1 xiab 在数学上,光滑程度的定量描述是:函数(曲线)的k阶导数存在且连续,则称该曲线具有k阶光滑性。光滑性的阶次越高,则越光滑。是否存在较低次的分段多项式达到较高阶光滑性的方法?三次样条插值就是一个很好的例子。三次样条插值三次样条插值第18页,此课件共61页哦 三次样条插值g g(x x)为被插值函数为被插值函数。第19页,此课件共61页哦例例用三次样条插值选取用三次样条插值选取1
11、1个基点计算插值个基点计算插值(ych)To MATLABych(larg1)第20页,此课件共61页哦 Matlab 实现:实现分段线性插值不需要编实现:实现分段线性插值不需要编制函数程序,它自身提供了内部的功能函数制函数程序,它自身提供了内部的功能函数interp1(一维插值一维插值)intep2(二维二维)interp3(三维三维)intern(n维维)4.3 MATLAB 4.3 MATLAB实现插值实现插值第21页,此课件共61页哦用用MATLAB作插值计算作插值计算一维插值函数:一维插值函数:yi=interp1(x,y,xi,method)插值方法插值方法被插值点被插值点插值节点
12、插值节点xi处的插处的插值结果值结果nearest 最邻近插值;最邻近插值;linear 线性插值;线性插值;spline 三次样条插值;三次样条插值;cubic 立方插值;立方插值;缺省时缺省时 分段线性插值分段线性插值 注意:所有的插值方法注意:所有的插值方法都要求都要求x是单调的,并且是单调的,并且xi不不能够超过能够超过x的范围的范围第22页,此课件共61页哦例:从例:从1 1点点1212点点的的1111小时内,每隔小时内,每隔1 1小时测量一次温度,小时测量一次温度,测得的温度的数值依次为:测得的温度的数值依次为:5 5,8 8,9 9,1515,2525,2929,3131,303
13、0,2222,2525,2727,2424试估计每隔试估计每隔1/101/10小时的温度值小时的温度值To MATLAB (temp)hours=1:12;temps=5 8 9 15 25 29 31 30 22 25 27 24;h=1:0.1:12;t=interp1(hours,temps,h,spline);plot(hours,temps,+,h,t,hours,temps,r:)%作图作图xlabel(Hour),ylabel(Degrees Celsius)第23页,此课件共61页哦xy机翼下机翼下轮廓线轮廓线例例 已知飞机下轮廓线上数据如下,求已知飞机下轮廓线上数据如下,求x
14、每改变每改变0.1时的时的y值值To MATLAB(plane)返回返回第24页,此课件共61页哦 要求要求x0,y0单调;单调;x,y可取为矩阵,或可取为矩阵,或x取行向取行向量,量,y取为列向量,取为列向量,x,y的值分别不能超出的值分别不能超出x0,y0 0的的范围范围z=interp2(x0,y0,z0,x,y,method)被插值点插值方法用用MATLAB作网格节点数据的插值作网格节点数据的插值插值节点被插值点的函数值nearest 最邻近插值;最邻近插值;linear 双线性插值;双线性插值;cubic 双三次插值;双三次插值;缺省时缺省时 双线性插值双线性插值.第25页,此课件共
15、61页哦例:测得平板表面例:测得平板表面3 35 5网格点处的温度分别为:网格点处的温度分别为:82 81 80 82 84 82 81 80 82 84 79 63 61 65 81 79 63 61 65 81 84 84 82 85 86 84 84 82 85 86 试作出平板表面的温度分布曲面试作出平板表面的温度分布曲面z=f(x,y)的图形的图形输入以下命令:输入以下命令:x=1:5;y=1:3;temps=82 81 80 82 84;79 63 61 65 81;84 84 82 85 86;mesh(x,y,temps)1.先在三维坐标画出原始数据,画出粗糙的温度分布曲线图先
16、在三维坐标画出原始数据,画出粗糙的温度分布曲线图.2以平滑数据以平滑数据,在在 x、y方向上每隔方向上每隔0.2个单位的地方进行插值个单位的地方进行插值.第26页,此课件共61页哦再输入以下命令再输入以下命令:xi=1:0.2:5;yi=1:0.2:3;zi=interp2(x,y,temps,xi,yi,cubic);mesh(xi,yi,zi)画出插值后的温度分布曲面图画出插值后的温度分布曲面图.To MATLAB (wendu)第27页,此课件共61页哦 通过此例对最近邻点插值、双线性插值方法和双三次插值方法的插值效果进通过此例对最近邻点插值、双线性插值方法和双三次插值方法的插值效果进行
17、比较行比较To MATLAB (moutain)返回返回第28页,此课件共61页哦 插值函数插值函数griddata格式为格式为:cz=griddata(x,y,z,cx,cy,method)用用MATLAB作散点数据的插值计算作散点数据的插值计算 要求要求cx取行向量,取行向量,cy取为列向量取为列向量被插值点插值方法插值节点被插值点的函数值nearest最邻近插值最邻近插值linear 双线性插值双线性插值cubic 双三次插值双三次插值v4-MATLAB提供的插值方法提供的插值方法缺省时缺省时,双线性插值双线性插值第29页,此课件共61页哦 例例 在某海域测得一些点在某海域测得一些点(x
18、,y)处的水深处的水深z由下表给出,由下表给出,船的吃水深度为船的吃水深度为5 5英尺,在矩形区域(英尺,在矩形区域(7575,200200)(-50-50,150150)里的哪些地方船要避免进入)里的哪些地方船要避免进入第30页,此课件共61页哦To MATLAB hd1返回返回4.作出水深小于作出水深小于5的海域范围的海域范围,即即z=5的等高线的等高线.2.在矩形区域在矩形区域(75,200)(-50,150)进行插值。进行插值。1.输入插值基点数据输入插值基点数据 3.作海底曲面图作海底曲面图 第31页,此课件共61页哦%程序一:插值并作海底曲面图程序一:插值并作海底曲面图 x =12
19、9.0 140.0 103.5 88.0 185.5 195.0 105.5 157.5 107.5 77.0 81.0 162.0 162.0 117.5;y=7.5 141.5 23.0 147.0 22.5 137.5 85.5 -6.5 -81 3.0 56.5 -66.5 84.0 -33.5;z=4 8 6 8 6 8 8 9 9 8 8 9 4 9;x1=75:1:200;y1=-50:1:150;x1,y1=meshgrid(x1,y1);z1=griddata(x,y,z,x1,y1,v4);meshc(x1,y1,z1)第32页,此课件共61页哦海底曲面图海底曲面图第33页
20、,此课件共61页哦%程序二:插值并作出水深小于程序二:插值并作出水深小于5 5的海域范围。的海域范围。x1=75:1:200;y1=-50:1:150;x1,y1=meshgrid(x1,y1);z1=griddata(x,y,z,x1,y1,v4);%插值插值z1(z1=5)=nan;%将水深大于将水深大于5的置为的置为nan,这样绘,这样绘图就不会显示出来图就不会显示出来meshc(x1,y1,z1)第34页,此课件共61页哦水深小于水深小于5 5的海域范围的海域范围第35页,此课件共61页哦实验作业实验作业1 1 山区地貌:山区地貌:在某山区测得一些地点的高程如下表:在某山区测得一些地点
21、的高程如下表:(平面区平面区域域12001200 x 4000,12004000,1200y 3600)3600),试作出该山区的地貌图和,试作出该山区的地貌图和等高线图,并对几种插值方法进行比较等高线图,并对几种插值方法进行比较第36页,此课件共61页哦5.1 5.1 引言引言 对于情况较复杂的实际问题(因素不易化简,对于情况较复杂的实际问题(因素不易化简,作用机理不详)可直接使用数据组建模,寻找简作用机理不详)可直接使用数据组建模,寻找简单的因果变量之间的数量关系,单的因果变量之间的数量关系,从而对未知的情从而对未知的情形作预报。这样组建的模型为拟合模型。形作预报。这样组建的模型为拟合模型
22、。拟合模拟合模型的组建主要是处理好观测数据的误差,使用数型的组建主要是处理好观测数据的误差,使用数学表达式从数量上近似因果变量之间的关系。拟学表达式从数量上近似因果变量之间的关系。拟合模型的组建是通过对有关变量的观测数据的观合模型的组建是通过对有关变量的观测数据的观察、分析和选择恰当的数学表达方式得到的。察、分析和选择恰当的数学表达方式得到的。五、拟合的使用及求解第37页,此课件共61页哦5.2 5.2 拟合模型的分类拟合模型的分类 5.2.1 5.2.1 直线拟合直线拟合5.2.2 5.2.2 曲线拟合曲线拟合5.2.3 5.2.3 观察数据修匀观察数据修匀 对于已给一批实测数据,由于实测方
23、法、实对于已给一批实测数据,由于实测方法、实验环境等一些外界因素的影响,不可避免地会产验环境等一些外界因素的影响,不可避免地会产生随机干扰和误差。我们自然希望根据数据分布生随机干扰和误差。我们自然希望根据数据分布的总趋势去剔除观察数据中的偶然误差,这就是的总趋势去剔除观察数据中的偶然误差,这就是所谓的数据修匀(或称数据平滑)问题。所谓的数据修匀(或称数据平滑)问题。第38页,此课件共61页哦直直 线线 拟拟 合合 问问 题题 引引 例例 1 1温度温度t(C)20.5 32.7 51.0 73.0 95.7电阻电阻R()765 826 873 942 1032已知热敏电阻数据:已知热敏电阻数据
24、:求求6060C C时的电阻时的电阻R R 设设 R=at+ba,b为待定系数为待定系数第39页,此课件共61页哦曲曲 线线 拟拟 合合 问问 题题 引引 例例 2 2 t(h)0.25 0.5 1 1.5 2 3 4 6 8c(g/ml)19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01已知一室模型快速静脉注射下的血药浓度数据已知一室模型快速静脉注射下的血药浓度数据(t=0注射注射300mg)求血药浓度随时间的变化规律求血药浓度随时间的变化规律c(t).在直角坐标系下作图如下在直角坐标系下作图如下(plot)MATLAB(aa1)第40页,此课
25、件共61页哦曲曲 线线 拟拟 合合 问问 题题 的的 提提 法法已知一组(二维)数据,即平面上已知一组(二维)数据,即平面上 n个点个点(xi,yi)i=1,n,寻求寻求一个函数(曲线)一个函数(曲线)y=f(x),使使 f(x)在某种准则下与所有数据点最为接在某种准则下与所有数据点最为接近,即曲线拟合得最好近,即曲线拟合得最好+xyy=f(x)(xi,yi)i i 为点为点(xi,yi)与与曲线曲线 y=f(x)的距离的距离第41页,此课件共61页哦曲线拟合问题最常用的解法曲线拟合问题最常用的解法线性最小二乘法的基本思路线性最小二乘法的基本思路第一步:先选定一组函数先选定一组函数 r1(x)
26、,r2(x),rm(x),mn,令令 f(x)=a1r1(x)+a2r2(x)+amrm(x)(1)其中其中 a1,a2,am 为待定系数为待定系数 第二步:确定确定a1,a2,am 的准则(最小二乘准则):的准则(最小二乘准则):使使n个点个点(xi,yi)与与曲线曲线 y=f(x)的距离的距离 i 的平方和最小的平方和最小 记记问题归结为,求问题归结为,求 a1,a2,am 使使 J(a1,a2,am)最小最小第42页,此课件共61页哦线性最小二乘法的求解:预备知识线性最小二乘法的求解:预备知识超定方程组超定方程组:方程个数大于未知量个数的方程组:方程个数大于未知量个数的方程组即即 Ra=
27、y其中其中超定方程一般是不存在解的矛盾方程组。超定方程一般是不存在解的矛盾方程组。如果有向量如果有向量a使得使得 达到最小,达到最小,则称则称a为上述为上述超定方程的最小二乘解超定方程的最小二乘解。第43页,此课件共61页哦线性最小二乘法的求解线性最小二乘法的求解 定理:定理:当当R RT TR R可逆时,超定方程组(可逆时,超定方程组(3 3)存在最小二乘解,且即)存在最小二乘解,且即为方程组为方程组 R RT TRa=RRa=RT Ty y的解:的解:a=(Ra=(RT TR)R)-1-1R RT Ty y 所以,曲线拟合的最小二乘法要解决的问题,实际上就是求以下超所以,曲线拟合的最小二乘
28、法要解决的问题,实际上就是求以下超定方程组的最小二乘解的问题。定方程组的最小二乘解的问题。其中其中Ra=y (3)第44页,此课件共61页哦线性最小二乘拟合线性最小二乘拟合 f(x)=a1r1(x)+amrm(x)中函数中函数rr1 1(x),(x),r rm m(x)(x)的选取的选取 1.1.通过机理分析建立数学模型来确定通过机理分析建立数学模型来确定 f(x)f(x);+f=a1+a2xf=a1+a2x+a3x2f=a1+a2x+a3x2f=a1+a2/xf=aebxf=ae-bx 2.2.将数据将数据 (xi,yi)i=1,n 作图,通过直观判断确定作图,通过直观判断确定 f(x):第
29、45页,此课件共61页哦用用MATLAB作线性最小二乘拟合作线性最小二乘拟合1.1.作多项式作多项式f(x)=a1xm+amx+am+1拟合拟合,可利用可利用已有程序已有程序:a=polyfit(x,y,m)输入同长度输入同长度的数组的数组x,y拟合多项拟合多项式次数式次数2.2.多项式在多项式在x处的值处的值y可用以下命令计算:可用以下命令计算:y=polyval(a,x)第46页,此课件共61页哦1)输入以下命令:)输入以下命令:x=0: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
30、,y,2)z=polyval(A,x);plot(x,y,k+,x,z,r)%作作出出数数据据点点和和拟拟合合曲曲线线的图形的图形2)计算结果:)计算结果:=-9.8108 20.1293 -0.0317用多项式拟合的命令用多项式拟合的命令MATLAB(zxec)第47页,此课件共61页哦如何预报人口的增长如何预报人口的增长 人口的增长是当前世界上引起普遍关注的人口的增长是当前世界上引起普遍关注的问题,并且我们会发现在不同的刊物预报同一问题,并且我们会发现在不同的刊物预报同一时间的人口数字不相同,这显然是由于用了不时间的人口数字不相同,这显然是由于用了不同的人口模型计算的结果。同的人口模型计算
31、的结果。我国是世界第一人口大国,基本上地球每九个我国是世界第一人口大国,基本上地球每九个人中就有一个中国人。有效地控制我国人口的增人中就有一个中国人。有效地控制我国人口的增长是使我过全面进入小康社会、到长是使我过全面进入小康社会、到2121世纪中叶建世纪中叶建成富强民主文明的社会主义国家的需要。而有效成富强民主文明的社会主义国家的需要。而有效控制人口增长的前提是要认识人口数量的变化规控制人口增长的前提是要认识人口数量的变化规律,建立人口模型,作出较准确的预报。律,建立人口模型,作出较准确的预报。例例:如何预报人口的增长如何预报人口的增长第48页,此课件共61页哦例如:例如:19491949年年
32、19941994年我国人口数据资料如下:年我国人口数据资料如下:年年 份份xi 1949 1954 1959 1964 1969 1974 xi 1949 1954 1959 1964 1969 1974 1979 1984 1989 1994 1979 1984 1989 1994 人口数人口数yi 5.4 6.0 6.7 7.0 8.1 9.1 9.8 yi 5.4 6.0 6.7 7.0 8.1 9.1 9.8 10.3 11.3 11.8 10.3 11.3 11.8 建模分析我国人口增长的规律建模分析我国人口增长的规律,预报预报19991999年我国人口年我国人口数。数。第49页,此
33、课件共61页哦模型一:假设人口随时间线性地增加模型一:假设人口随时间线性地增加 模型:模型:参数估计观测值的模型:参数估计观测值的模型:拟合的精度拟合的精度:误差平方和。误差平方和。可以算出:可以算出:a=-283.2320 b=0.1480模型:模型:y=1.93+0.146 x 第50页,此课件共61页哦则可看成是线性方程则可看成是线性方程,用用 polyfit命令计算得:命令计算得:模型二:指数增长模型模型二:指数增长模型 可变为可变为YA=+BXa=2.33,b=0.0179则所求模型为则所求模型为:第51页,此课件共61页哦程序如下:程序如下:x=1949 1954 1959 196
34、4 1969 1974 1979 1984 1989 1994;y=5.4 6.0 6.7 7.0 8.1 9.1 9.8 10.3 11.3 11.8;a=polyfit(x,y,1);x1=1949:10:1994;y1=a(2)+a(1)*x1;b=polyfit(x,log(y),1);y2=exp(b(2)*exp(b(1)*x1);plot(x,y,*)hold on plot(x1,y1,-r)hold on plot(x1,y2,-k)legend(原曲线原曲线,模型一曲线模型一曲线,模型二曲线模型二曲线)第52页,此课件共61页哦结论的比较如下表:结论的比较如下表:年年 份份
35、 xi 1949 1954 1959 1964 1969 1974 1979 1984 1989 1994 xi 1949 1954 1959 1964 1969 1974 1979 1984 1989 1994 人口数人口数 yi 5.4 6.0 6.7 7.0 8.1 9.1 9.8 10.3 11.3 11.8 yi 5.4 6.0 6.7 7.0 8.1 9.1 9.8 10.3 11.3 11.8 模型一值模型一值 5.24 5.97 6.70 7.43 8.16 8.90 9.62 10.36 11.09 11.82 5.24 5.97 6.70 7.43 8.16 8.90 9.
36、62 10.36 11.09 11.82 误误 差差 0.16 0.03 0.00 -0.43 -0.06 0.20 0.18 -0.06 0.01 -0.02 0.16 0.03 0.00 -0.43 -0.06 0.20 0.18 -0.06 0.01 -0.02 模型二值模型二值 5.55 6.06 6.62 7.23 7.90 8.64 9.44 10.31 11.26 12.31 5.55 6.06 6.62 7.23 7.90 8.64 9.44 10.31 11.26 12.31 误差误差 -0.15 -0.06 0.08 -0.23 0.20 0.46 0.36 -0.01 -
37、0.13 -0.51-0.15 -0.06 0.08 -0.23 0.20 0.46 0.36 -0.01 -0.13 -0.51第53页,此课件共61页哦结果分析:结果分析:(1)Q1 =0.2915 x=0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0;y=2.3201 2.647 2.9707 3.2885 3.6008 3.909 4.2147 4.5191 4.8232 5.1275;a=lsqcurvefit(f1,1;2;2;2,x,y)第58页,此课件共61页哦 例例 用下面一组数据拟合用下面一组数据拟合 中的参数中的参数a,b,k该问题即解最优化
38、问题:该问题即解最优化问题:第59页,此课件共61页哦MATLAB(fzxec1)1 1)编写)编写M-M-文件文件 curvefun1.mcurvefun1.m function f=curvefun1(x,tdata)f=x(1)+x(2)*exp(-0.02*x(3)*tdata)%其中其中 x(1)=a;x(2)=b;x(3)=k;2)输入命令)输入命令tdata=100:100:1000tdata=100:100:1000cdata=cdata=1e-03*4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,*4.54,4.99,5.35,5.65,5.9
39、0,6.10,6.26,6.39,6.50,6.59;6.50,6.59;x0=0.2,0.05,0.05;x0=0.2,0.05,0.05;x=lsqcurvefit(curvefun1,x0,tdata,cdata)x=lsqcurvefit(curvefun1,x0,tdata,cdata)f=f=curvefun1(x,tdata)F(x,tdata)=,x=(a,b,k)用命令用命令lsqcurvefitlsqcurvefit第60页,此课件共61页哦3 3)运算结果为)运算结果为:f=0.0043 0.0051 0.0056 0.0059 0.0061 f=0.0043 0.0051 0.0056 0.0059 0.0061 0.0062 0.0062 0.0063 0.0063 0.0063 0.0062 0.0062 0.0063 0.0063 0.0063 x=0.0063 -0.0034 0.2542 x=0.0063 -0.0034 0.25424)结论)结论:a=0.0063,b=-0.0034,k=0.2542第61页,此课件共61页哦