首页 6数据拟和

6数据拟和

举报
开通vip

6数据拟和null数学建模辅导 数学与信息科学系 汪远征数学建模辅导 数学与信息科学系 汪远征6 数据拟合拟合拟合 1 引例 2 拟合的基本原理 3 用MATLAB解拟合问题 4 MATLAB解应用问题实例 1 引例1 引例引例1 已知热敏电阻数据: 求60 C时的电阻R。 设 R = at + b a, b为待定系数1 引例1 引例引例2 已知一室模型快速静脉注射下的血药浓度数据(t=0注射300mg) 求血药浓度随时间的变化规律c(t). 作半对数坐标系(se...

6数据拟和
null数学建模辅导 数学与信息科学系 汪远征数学建模辅导 数学与信息科学系 汪远征6 数据拟合拟合拟合 1 引例 2 拟合的基本原理 3 用MATLAB解拟合问题 4 MATLAB解应用问题实例 1 引例1 引例引例1 已知热敏电阻数据: 求60 C时的电阻R。 设 R = at + b a, b为待定系数1 引例1 引例引例2 已知一室模型快速静脉注射下的血药浓度数据(t=0注射300mg) 求血药浓度随时间的变化规律c(t). 作半对数坐标系(semilogy)下的图形 c(t) = c0e–kt c, k为待定系数 t=[0.25 0.5 1 1.5 2 3 4 6 8]; c=[19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01]; semilogy(t,c,'+')2 拟合的基本原理2 拟合的基本原理2.1 曲线拟合问题的提法 已知一组(二维)数据,即平面上n个点(xi, yi) i = 1, …, n 寻求一个函数(曲线)y = f(x), 使f(x)在某种准则下与所有数据点最为接近,即曲线拟合得最好。 i 为点(xi, yi)与曲线y = f(x)的距离2 拟合的基本原理2 拟合的基本原理2.2 拟合与插值的关系 1. 问题:给定一批数据点,需确定满足特定要求的曲线或曲面 2. 解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 : 1) 若要求所求曲线(面)通过所给所有数据点,就是插值问题; 2) 若不要求曲线(面)通过所有数据点,而是要求它反映对象整体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。 函数插值与曲线拟合都是要根据一组数据构造一个函数作为近似,由于近似的要求不同,二者在数学方法上是完全不同的。2 拟合的基本原理2 拟合的基本原理2.2 拟合与插值的关系 3. 实例:下面数据是某次实验所得,希望得到x和f之间的关系 最临近插值、线性插值、样条插值与曲线拟合结果 (cn)2 拟合的基本原理2 拟合的基本原理2.3 曲线拟合问题最常用的解法 2.3.1 线性最小二乘法的基本思路 1. 先选定一组函数 r1(x), r2(x), …, rm(x), m < n, 令 f(x) = a1r1(x) + a2r2(x) + … + amrm(x) (1) 其中a1, a2, …, am为待定系数。 2. 确定a1, a2, …, am的准则(最小二乘准则): 使n个点(xi, yi)与曲线y = f(x)的距离i的平方和最小。 记 (2) 问题归结为,求a1, a2, …, am使J(a1, a2, …, am)最小。2 拟合的基本原理2 拟合的基本原理2.3 曲线拟合问题最常用的解法 2.3.2 线性最小二乘法的求解 1. 超定方程组:方程个数大于未知量个数的方程组 即 Ra = y 其中 超定方程一般是不存在解的矛盾方程组。2 拟合的基本原理2 拟合的基本原理2.3 曲线拟合问题最常用的解法 2.3.2 线性最小二乘法的求解 2. 如果有向量a使得 达到最小,则称a为上述超定方程的最小二乘解。 所以,曲线拟合的最小二乘法要解决的问题,实际上就是求以下超定方程组的最小二乘解的问题。 Ra = y (3) 其中 2 拟合的基本原理2 拟合的基本原理2.3 曲线拟合问题最常用的解法 2.3.2 线性最小二乘法的求解 3. 定理:当RTR可逆时,超定方程组(3)存在最小二乘解,且即为方程组RTRa = RTy的解: a = (RTR)-1RTyRa = y2 拟合的基本原理2 拟合的基本原理2.3 曲线拟合问题最常用的解法 2.3.2 线性最小二乘法的求解 4. 线性最小二乘拟合f(x) = a1r1(x)+ … + amrm(x)中函数 {r1(x), …, rm(x)}的选取: 1) 通过机理分析建立数学模型来确定f(x); 2) 将数据(xi, yi) i = 1, …, n作图,通过直观判断确定f(x): 3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.1 多项式拟合命令 1. 作多项式f(x) = a1xm + … + am1x + am+ 1拟合,其命令为: a = polyfit(x, y, m) a:输出拟合多项式系数a = [a1, …am, am+1] (数组)) x, y:输入同长度的数组 m:拟合多项式次数 2. 多项式在x处的值y可用以下命令计算: y = polyval(a, x) 3. 对超定方程组Rnmam1 = yn1 (m < n),可用 a = R\y 可得最小二乘意义下的解。3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.2 多项式拟合例子 例1:对下面一组数据作二次多项式拟合 即要求出二次多项式: f(x) = a1x2 + a2x + a3中的A = (a1, a2, a3) 使得 最小3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.2 多项式拟合例子 例1:对下面一组数据作二次多项式拟合 解法1.用解超定方程的方法 此时 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]; R=[(x.^2)' x' ones(11,1)]; A=R\y'3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.2 多项式拟合例子 例1:对下面一组数据作二次多项式拟合 解法1.用解超定方程的方法 2) 计算结果: 所以f(x) = – 9.8108x2 + 20.1293x – 0.03173 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.2 多项式拟合例子 例1:对下面一组数据作二次多项式拟合 解法2.用多项式拟合的命令 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, y, 2) z = polyval(A, x); plot(x, y, 'k+', x, z, 'r') %作出数据点和拟合曲线的图形3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.1 线性最小二乘拟合 3.1.2 多项式拟合例子 例1:对下面一组数据作二次多项式拟合 解法2.用多项式拟合的命令 2) 计算结果: 所以f(x) = – 9.8108x2 + 20.1293x – 0.0317 MATLAB(zxec2)3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 当模型中被估参数与函数值为非线性依从关系时,就形成非线性最小二乘问题。 非线性问题很难处理,往往连解的存在性和唯一性都难以确定。 因此如果通过函数变换能使被估参数以线性形式出现,就应该优先采用变换,把问题变成可简单有效处理的线性最小二乘问题。3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 线性最小二乘的处理方法可靠、快捷,本方法值得优先考虑。下 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 为常见的可线性化模型:3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1. 确定回归函数可能形式 为确定可能的函数形式,首先描出数据的散点图。 x=[2 3 4 5 7 8 10 11 14 15 16 18 19] y=[106.42 108.2 109.58 109.5 110 109.93 110.49 110.59 110.6 110.9 110.76 111 111.2] plot(x, y, '*')3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1. 确定回归函数可能形式 散点图呈现出明显的向上且上凸的趋势,可能选择的函数关系有很多,比如可以给出如下三种曲线函数: 1 / y = a + b / x ,y = a + blnx , 令u = 1/x、v = 1/y 、w = lnx 、 ,三种曲线函数又可以表示为: v = a + bu,y = a + bw,y = a + bz3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1 / y = a + b / x ,y = a + blnx , 令u = 1/x、v = 1/y 、w = lnx 、 ,三种曲线函数又可以表示为:v = a + bu,y = a + bw,y = a + bz 2. 变量变换 u=1./x; v=1./y; w=log(x); z=sqrt(x); figure(2);plot(u, v, '*'); figure(3);plot(w, y, '*'); figure(4);plot(z, y, '*');3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1 / y = a + b / x ,y = a + blnx , 令u = 1/x、v = 1/y 、w = lnx 、 ,三种曲线函数又可以表示为:v = a + bu,y = a + bw,y = a + bz 2. 变量变换 从散点图可以看出第一种变换后两变量的关系最接近线性,可以考虑建立线性拟合模型v = a + bu。3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1 / y = a + b / x , 令u = 1/x、v = 1/y 曲线函数可以表示为:v = a + bu 3. 拟合 A = polyfit(u, v, 1) z = polyval(A, u); plot(x, y, 'k+'),hold on; plot(1./u, 1./z, 'r') %作出数据点和拟合曲线的图形 hold off;3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.1 伪线性最小二乘 例1:炼钢厂考虑钢包的重量y与试验次数x的关系 1 / y = a + b / x , 令u = 1/x、v = 1/y 曲线函数可以表示为:v = a + bu 3. 拟合 线性拟合方程v = 0.0090 + 0.0008 u,原数据的拟合方程为: 即 3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.2 非线性最小二乘 设已知数据点: xdata = (xdata1,xdata2,…,xdatan) ydata = (ydata1,ydata2,…,ydatan) lsqcurvefit用以求向量值函数 F(x, xdata) = (F(x, xdata1), …, F(x, xdatan))T中的参变量x(向量) 使得 最小 命令格式为: x = lsqcurvefit('fun', x0, xdata, ydata);3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.2 非线性最小二乘 设已知数据点: xdata = (xdata1,xdata2,…,xdatan) ydata = (ydata1,ydata2,…,ydatan) lsqcurvefit命令格式为: x = lsqcurvefit('fun', x0, xdata, ydata); fun是一个事先建立的定义函数F(x, xdata)的M-文件, 自变量为x和xdata x0:迭代初值 xdata , ydata :已知数据点3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.2 非线性最小二乘 例2:用下面一组数据拟合c(t) = a + be0.02kt中的参数a,b,k 解: 1) 编写M-文件curvefun1.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;3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.2 非线性最小二乘 例2:用下面一组数据拟合c(t) = a + be0.02kt中的参数a,b,k 解: 2) 输入命令 tdata=100:100:1000 cdata=1e-03*[4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,6.50,6.59]; x0=[0.2,0.05,0.05]; x=lsqcurvefit('curvefun1', x0, tdata, cdata); f = curvefun1(x, tdata); x plot(tdata, cdata,'o',tdata,f,'r-') MATLAB(fzxec1)3 用MATLAB解拟合问题3 用MATLAB解拟合问题3.2 非线性最小二乘拟合 3.2.2 非线性最小二乘 例2:用下面一组数据拟合c(t) = a + be0.02kt中的参数a,b,k 解: 3) 运算结果为: 4) 结论:a = 0.0063, b = -0.0034, k = 0.2542 即c(t) = 0.0063 – 0.0034e0.020.2542t 4 MATLAB解应用问题实例4 MATLAB解应用问题实例4.1 电阻问题 例3:由数据 拟合R = a1t + a2 方法1. 用命令polyfit(x, y, m) 得到a1 = 3.3940, a2 = 702.4918 t=[20.5 32.5 51 73 95.7]; r=[765 826 873 942 1032]; aa=polyfit(t,r,1); a=aa(1) b=aa(2) y=polyval(aa,t); plot(t,r,'k+',t,y,'r') MATLAB(dianzu1)4 MATLAB解应用问题实例4 MATLAB解应用问题实例4.1 电阻问题 例3:由数据 拟合R = a1t + a2 方法2. 直接用a = R\y,结果相同。 t=[20.5 32.5 51 73 95.7]; r=[765 826 873 942 1032]; R=[t' ones(5,1)]; aa=R\r'; a=aa(1) b=aa(2) y=polyval(aa,t); plot(t,r,'k+',t,y,'r') MATLAB(dianzu2)
本文档为【6数据拟和】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_407837
暂无简介~
格式:ppt
大小:838KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2011-07-13
浏览量:13