实验五用Matlab数据拟合.ppt

上传人:max****ui 文档编号:15313736 上传时间:2020-08-07 格式:PPT 页数:19 大小:514KB
返回 下载 相关 举报
实验五用Matlab数据拟合.ppt_第1页
第1页 / 共19页
实验五用Matlab数据拟合.ppt_第2页
第2页 / 共19页
实验五用Matlab数据拟合.ppt_第3页
第3页 / 共19页
点击查看更多>>
资源描述
用Matlab进行数据拟合,1. 多项式曲线拟合: polyfit.,y0=polyval(p,x0),p=polyfit(x,y,m),其中, x, y为已知数据点向量, 分别表示横,纵坐标, m为拟合多项式的次数, 结果返回m次拟合多项式系数, 从高次到低次存放在向量p中.,可求得多项式在x0处的值y0.,例1 已知观测数据点如表所示,分别用3次和6次多项式曲线拟合这些数据点.,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.3,11.2 plot(x,y,k.,markersize,25) axis(0 1.3 -2 16) p3=polyfit(x,y,3) p6=polyfit(x,y,6),编写Matlab程序如下:,t=0:0.1:1.2 s=polyval(p3,t) s1=polyval(p6,t) hold on plot(t,s,r-,linewidth,2) plot(t,s,b-,linewidth,2) grid,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.3,11.2 plot(x,y,k.,markersize,25) axis(0 1.3 -2 16) p3=polyfit(x,y,3) p6=polyfit(x,y,6),例2 用切削机床进行金属品加工时, 为了适当地调整机床, 需要测定刀具的磨损速度. 在一定的时间测量刀具的厚度, 得数据如表所示:,解: 描出散点图, 在命令窗口输入:,t=0:1:16 y=30.0 29.1 28.4 28.1 28.0 27.7 27.5 27.2 27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8 24.0 plot(t,y,*),解: 描出散点图, 在命令窗口输入:,t=0:1:16 y=30.0 29.1 28.4 28.1 28.0 27.7 27.5 27.2 27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8 24.0 plot(t,y,*),a = -0.3012 29.3804,hold on,plot(t, y1), hold off,a=polyfit(t,y,1),y1=-0.3012*t+29.3804,例2 用切削机床进行金属品加工时, 为了适当地调整机床, 需要测定刀具的磨损速度. 在一定的时间测量刀具的厚度, 得数据如表所示:,切削时间 t/h,0,30.0,1,29.1,2,28.4,3,28.1,4,28.0,5,27.7,6,27.5,7,27.2,8,27.0,刀具厚度 y/cm,切削时间 t/h,9,26.8,10,26.5,11,26.3,12,26.1,13,25.7,14,25.3,15,24.8,16,24.0,刀具厚度 y/cm,拟合曲线为:,y=-0.3012t+29.3804,例3 一个15.4cm30.48cm的混凝土柱在加压实验中的应力-应变关系测试点的数据如表所示,1.55,2.47,2. 93,3. 03,已知应力-应变关系可以用一条指数曲线来描述, 即假设,式中, 表示应力, 单位是 N/m2; 表示应变.,2.89,已知应力-应变关系可以用一条指数曲线来描述, 即假设,式中, 表示应力, 单位是 N/m2; 表示应变.,解 选取指数函数作拟合时, 在拟合前需作变量代换,化为 k1, k2 的线性函数.,于是,令,即,在命令窗口输入:,x=500*1.0e-6 1000*1.0e-6 1500*1.0e-6 2000*1.0e-6 2375*1.0e-6 y=3.103*1.0e+3 2.465*1.0e+3 1.953*1.0e+3 1.517*1.0e+3 1.219*1.0e+3 z=log(y) a=polyfit(x,z,1) k1=exp(8.3009) w=1.55 2.47 2.93 3.03 2.89 plot(x,w,*),y1=exp(8.3009)*x.*exp( -494.5209*x),plot(x,w,*,x,y1,r-),已知应力-应变关系可以用一条指数曲线来描述, 即假设,式中, 表示应力, 单位是 N/m2; 表示应变.,拟合曲线为:,令,则,求得,于是,在实际应用中常见的拟合曲线有:,直线,多项式,一般 n=2, 3, 不宜过高.,双曲线(一支),指数曲线,2. 非线性曲线拟合: nlinfit.,功能:,x=lsqcurvefit(fun, x0, xdata, ydata),x, resnorm=lsqcurvefit(fun, x0, xdata, ydata),根据给定的数据 xdata, ydata (对应点的横, 纵坐标), 按函数文件 fun 给定的函数, 以x0为初值作最小二乘拟合, 返回函数 fun中的系数向量x和残差的平方和resnorm.,例4 已知观测数据点如表所示,求三个参数 a, b, c的值, 使得曲线 f(x)=aex+bx2+cx3 与已知数据点在最小二乘意义上充分接近.,首先编写存储拟合函数的函数文件.,function f=nihehanshu(x,xdata) f=x(1)*exp(xdata)+x(2)*xdata.2+x(3)*xdata.3,保存为文件 nihehanshu.m,例4 已知观测数据点如表所示,x,y,0,3.1,0.1,3.27,0.2,3.81,0.3,4.5,0.4,5.18,0.5,6,0.6,7.05,0.7,8.56,0.8,9.69,0.9,11.25,1,13.17,求三个参数 a, b, c的值, 使得曲线 f(x)=aex+bx2+cx3 与已知数据点在最小二乘意义上充分接近.,编写下面的程序调用拟合函数.,x=0:0.1:1; y=3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17; x0=0,0,0; beta,r,J=nlinfit(x,y,nihehanshu,x0);,编写下面的程序调用拟合函数.,x=0:0.1:1; y=3.1,3.27,3.81,4.5,5.18,6,7.05,8.56,9.69,11.25,13.17; x0=0,0,0; beta,r,J=nlinfit(x,y,nihehanshu,x0);,程序运行后显示,beta = 3.0022 4.0304 0.9404,例4 已知观测数据点如表所示,x,y,0,3.1,0.1,3.27,0.2,3.81,0.3,4.5,0.4,5.18,0.5,6,0.6,7.05,0.7,8.56,0.8,9.69,0.9,11.25,1,13.17,求三个参数 a, b, c的值, 使得曲线 f(x)=aex+bx2+cx3 与已知数据点在最小二乘意义上充分接近.,说明: 最小二乘意义上的最佳拟合函数为,f(x)= 3ex+ 4.03x2 + 0.94 x3.,此时的残差是: 0.0912.,f(x)= 3ex+ 4.03x2 + 0.94 x3.,拟合函数为:,练习:,1. 已知观测数据点如表所示,求用三次多项式进行拟合的曲线方程.,2. 已知观测数据点如表所示,求a, b, c的值, 使得曲线 f(x)=aex+bsin x+c lnx 与已知数据点在最小二乘意义上充分接近.,
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!