首页 matlab内置函数-拟合

matlab内置函数-拟合

举报
开通vip

matlab内置函数-拟合nullnull数值计算 Matlab的内置函数 ---拟合--- null拟合与插值的关系 函数插值与曲线拟合都是要根据一组数据构造一个函数作为近似,由于近似的要求不同,二者的数学方法上是完全不同的。问题:给定一批数据点,需确定满足特定要求的曲线或曲面解决方案:若不要求曲线(面)通过所有数据点,而是要求它反映对象整体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。若要求所求曲线(面)通过所给所有数据点,就是插值问题;null拟 合 问 题 引 例 1求600C时的电阻R。 设 R=at+b a,...

matlab内置函数-拟合
nullnull数值计算 Matlab的内置函数 ---拟合--- null拟合与插值的关系 函数插值与曲线拟合都是要根据一组数据构造一个函数作为近似,由于近似的要求不同,二者的数学方法上是完全不同的。问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 :给定一批数据点,需确定满足特定要求的曲线或曲面解决方案:若不要求曲线(面)通过所有数据点,而是要求它反映对象整体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。若要求所求曲线(面)通过所给所有数据点,就是插值问题;null拟 合 问 题 引 例 1求600C时的电阻R。 设 R=at+b a,b为待定系数null拟 合 问 题 引 例 2求血药浓度随时间的变化规律c(t).作半对数坐标系(semilogy)下的图形null曲 线 拟 合 问 题 的 提 法已知一组数据,即平面上 n个点(xi,yi) i=1,…n, 寻求一个函数(曲线)y=f(x), 使f(x)在某种准则下与所有数据点最为接近,即曲线拟合得最好。 y=f(x)i 为点(xi,yi) 与曲线 y=f(x) 的距离null曲线拟合问题最常用的解法——线性最小二乘法的基本思路第一步:先选定一组函数 r1(x), r2(x), …rm(x), m 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 建立数学模型来确定 f(x); 2. 将数据 (xi,yi) i=1, …n 作图,通过直观判断确定 f(x):null用MATLAB解拟合问题1、线性最小二乘拟合2、非线性最小二乘拟合null用MATLAB作线性最小二乘拟合1. 作多项式f(x)=a1xm+ …+amx+am+1拟合,可利用已有程序:a=polyfit(x,y,m)3.多项式在x处的值y可用以下命令计算: y=polyval(a,x)nullnull1)输入以下命令: 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'解法1.用解超定方程的方法2)计算结果: A = -9.8108 20.1293 -0.0317null1)输入以下命令: 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') %作出数据点和拟合曲线的图形2)计算结果: A = -9.8108 20.1293 -0.0317解法2.用多项式拟合的命令null例2 用下面一组数据拟合 中的参数a,b,k该问题即解最优化问题:用MATLAB作非线性最小二乘拟合 Matlab的提供了两个求非线性最小二乘拟合的函数:lsqcurvefit和lsqnonlin。两个命令都要先建立M-文件fun.m,在其中定义拟合函数,但两者定义的方式是不同的.null x = lsqcurvefit (‘fun’,x0,xdata,ydata);1. Lsqcurvefit函数 已知数据点: xdata=(xdata1,xdata2,…,xdatan), ydata=(ydata1,ydata2,…,ydatan) null2. Lsqnonlin 函数已知数据点: xdata=(xdata1,xdata2,…,xdatan) ydata=(ydata1,ydata2,…,ydatan)说明:x= lsqnonlin (‘fun’,x0,options);null 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;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); 解法1. 用命令lsqcurvefitnull3)运算结果为: f =0.0043 0.0051 0.0056 0.0059 0.0061 0.0062 0.0062 0.0063 0.0063 0.0063 x = 0.0063 -0.0034 0.25424)结论: a=0.0063, b=-0.0034, k=0.2542plot(tdata,cdata,‘bo’,tdata,f); %作图null1)编写M-文件 curvefun2.m function f=curvefun2(x) 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]; f=x(1)+x(2)*exp(-0.02*x(3)*tdata)- cdata2)输入命令: x0=[0.2,0.05,0.05]; x=lsqnonlin('curvefun2',x0) f= curvefun2(x)函数curvefun2的自变量是x,cdata和tdata是已知参数,故应将cdata tdata的值写在curvefun2.m中解法 2 用命令lsqnonlinnull3)运算结果为 f =1.0e-003 *(0.2322 -0.1243 -0.2495 -0.2413 -0.1668 -0.0724 0.0241 0.1159 0.2030 0.2792 x =0.0063 -0.0034 0.2542可以看出,两个命令的计算结果是相同的.4)结论:即拟合得a=0.0063 b=-0.0034 k=0.2542null电阻问题 得到 a1=3.3940, a2=702.4918结果相同。作业:
本文档为【matlab内置函数-拟合】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_714281
暂无简介~
格式:ppt
大小:307KB
软件:PowerPoint
页数:0
分类:工学
上传时间:2011-04-29
浏览量:41