电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Matlab 数学建模中的数据处理方法

  • 资源ID:90969877       资源大小:1.76MB        全文页数:80页
  • 资源格式: PPT        下载积分:25金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要25金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Matlab 数学建模中的数据处理方法

数学建模中的数据处理方法,主要内容,曲线插值与拟合 数值微分与积分 微分方程数值解 优化问题 回归分析 判别分析,曲线插值与拟合,一维插值 二维插值 曲线拟合,一维插值,对表格给出的函数,求出没有给出的函数值。 在实际工作中,经常会遇到插值问题。 下表是待加工零件下轮廓线的一组数据,现需要得到x坐标每改变0.1时所对应的y的坐标.,一维插值,下面是关于插值的两条命令(专门用来解决这类问题): y=interp1(x0,y0,x,method) 分段线性插值 y=spline(x0,y0,x) 三次样条插值 x0,y0是已知的节点坐标,是同维向量。 y对应于x处的插值。y与x是同维向量。 method可选nearest(最近邻插值),linear(线性插值),spline(三次样条插值),cubic(三次多项式插值),一维插值,解决上述问题,我们可分两步: 用原始数据绘图作为选用插值方法的参考. 确定插值方法进行插值计算,一维插值(px_lc11.m),对于上述问题,可键入以下的命令: x0=0,3,5,7,9,11,12,13,14,15' y0=0,1.2,1.7,2.0,2.1,2.0,1.8,1.2,1.0,1.6' plot(x0,y0) %完成第一步工作 x=0:0.1:15; y=interp1(x0,y0,x'); %用分段线性插值完成第二步工作 plot(x,y) y=spline(x0,y0,x'); plot(x,y) %用三次样条插值完成第二步工作,练习,对y=1/(1+x2),-5x5,用n(=11)个节点(等分)作上述两种插值,用m(=21)个插值点(等分)作图,比较结果。(see:px_ex_lc1.m) 在某处测得海洋不同深度处水温如下表:求深度为500、1000、1500米处的水温。 (see:px_ex_lc2.m),二维插值,MATLAB中二维插值的命令是: z=interp2(x0,y0,z0,x,y,'meth'),二维插值,在一个长为5个单位,宽为3个单位的金属薄片上测得15个点的温度值,试求出此薄片的温度分布,并绘出等温线图。(数据如下表),二维插值(px_lc21.m),temps=82,81,80,82,84;79,63,61,65,87;84,84,82,85,86; mesh(temps) %根据原始数据绘出温度分布图,可看到此图的粗造度。,二维插值,%下面开始进行二维函数的三阶插值。 width=1:5; depth=1:3; di=1:0.2:3; wi=1:0.2:5; WI,DI=meshgrid(wi,di);%增加了节点数目 ZI=interp2(width,depth,temps,WI,DI,'cubic'); % 对数据(width,depth,temps)进 % 行三阶插值拟合。 surfc(WI,DI,ZI) contour(WI,DI,ZI),二维插值,曲线拟合,假设一函数g(x)是以表格形式给出的,现要求一函数f(x),使f(x)在某一准则下与表格函数(数据)最为接近。 由于与插值的提法不同,所以在数学上理论根据不同,解决问题的方法也不同。 此处,我们总假设f(x)是多项式。,曲线拟合,问题:弹簧在力F的作用下伸长x厘米。F和x在一定的范围内服从虎克定律。试根据下列数据确定弹性系数k,并给出不服从虎克定律时的近似公式。,曲线拟合,解题思路:可以用一阶多项式拟合求出k,以及近似公式。 在MATLAB中,用以下命令拟合多项式。 polyfit(x0,y0,n) 一般,也需先观察原始数据的图像,然后再确定拟和成什么曲线。,曲线拟合(px_lc31.m),对于上述问题,可键入以下的命令: x=1,2,4,7,9,12,13,15,17' F=1.5,3.9,6.6,11.7,15.6,18.8,19.6,20.6,21.1' plot(x,F,'.') 从图像上我们发现:前5个数据应与直线拟合,后5个数据应与二次曲线拟合。于是键入 : a=polyfit(x(1:5),F(1:5),1); a=polyfit(x(5:9),F(5:9),2),曲线拟合,注意:有时,面对一个实际问题,究竟是用插值还是用拟合不好确定,还需大家在实际中仔细区分。同时,大家(包括学过计算方法的同学)注意去掌握相应的理论知识。,数值微分与积分,数值积分 数值微分,数值积分,先看一个例子: 现要根据瑞士地图计算其国土面积。于是对地图作如下的测量:以西东方向为横轴,以南北方向为纵轴。(选适当的点为原点)将国土最西到最东边界在x轴上的区间划取足够多的分点xi,在每个分点处可测出南北边界点的对应坐标y1 ,y2。用这样的方法得到下表 根据地图比例知18mm相当于40km,试由上表计算瑞士国土的近似面积。(精确值为41288km2)。,数值积分,数值积分,解题思路:数据实际上表示了两条曲线,实际上我们要求由两曲线所围成的图形的面积。 解此问题的方法是数值积分的方法。具体解时我们遇到两个问题: 1。数据如何输入; 2。没有现成的命令可用。,数值积分(px_wj11.m),对于第一个问题,我们可把数据拷贝成M文件(或纯文本文件)。 然后,利用数据绘制平面图形。键入 load mianji.txt A=mianji' plot(A(:,1),A(:,2),'r',A(:,1),A(:,3),'g'),数值积分,数值积分,接下来可以计算面积。键入: a1=trapz(A(:,1)*40/18,A(:,2)*40/18); a2=trapz(A(:,1)*40/18,A(:,3)*40/18); d=a2-a1 d = 4.2414e+004,数值积分,至此,问题可以说得到了解决。 之所以说还有问题,是我们觉得误差较大。但计算方法的理论给了我们更精确计算方法。只是MATLAB没有相应的命令。 想得到更理想的结果,我们可以自己设计解决问题的方法。(可以编写辛普森数值计算公式的程序,或用拟合的方法求出被积函数,再利用MATLAB的命令quad,quad8),数值微分,已知20世纪美国人口统计数据如下,根据数据计算人口增长率。(其实还可以对于后十年人口进行预测),数值微分,解题思路:设人口是时间的函数x(t).于是人口的增长率就是x(t)对t的导数.如果计算出人口的相关变化率 。那么人口增长满足 ,它在初始条件x(0)=x0下的解为 .(用以检查计算结果的正确性),数值微分,解:此问题的特点是以离散变量给出函数x(t),所以就要用差分来表示函数x(t)的导数.,常用后一个公式。(因为,它实际上是用二次插值函数来代替曲线x(t))即常用三点公式来代替函数在各分点的导数值:,数值微分,MATLAB用命令diff按两点公式计算差分;此题自编程序用三点公式计算相关变化率.编程如下(diff3.m): for i=1:length(x) if i=1 r(1)=(-3*x(1)+4*x(1+1)-x(1+2)/(20*x(1); elseif i=length(x) r(i)=(x(i+1)-x(i-1)/(20*x(i); else r(length(x)=(x(length(x)-2)-4*x(length(x)-1)+3*x(length(x)/(20*x(length(x); end end r=r;,数值微分,保存为diff3.m文件听候调用.再在命令窗内键入 X=1900,1910,1920,1930,1940,1950,1960,1970,1980,1990; x=76.0, 92.0, 106.5, 123.2, 131.7, 150.7, 179.3, 204.0, 226.5, 251.4; diff3; 由于r以离散数据给出,所以要用数值积分计算.键入 x(1,1)*exp(trapz(X(1,1:9),r(1:9) 数值积分命令:trapz(x),trapz(x,y),quad(fun,a,b)等.,微分方程数值解(单摆问题),单摆问题的数学模型是 在初始角度不大时,问题可以得到很好地解决,但如果初始角较大,此方程无法求出解析解.现问题是当初始角为100和300时,求出其解,画出解的图形进行比较。,微分方程数值解(单摆问题),解:若0较小,则原方程可用 来近似.其解析解为(t)= 0cost, . 若不用线性方程来近似,那么有两个模型:,微分方程数值解(单摆问题),取g=9.8,l=25, 100=0.1745, 300=0.5236.用MATLAB求这两个模型的数值解,先要作如下的处理:令x1=,x2=,则模型变为,微分方程数值解(单摆问题),再编函数文件(danbai.m) function xdot=danbai(t,x) xdot=zeros(2,1); xdot(1)=x(2);xdot(2)=-9.8/25*sin(x(1);,微分方程数值解(单摆问题),在命令窗口键入() t,x=ode45(danbai,0:0.1:20,0.1745,0); t,y=ode45(danbai,0:0.1:20,0.5236,0); plot(t,x(:,1),r,t,y(:,1),k);,优化问题,线性规划有约束极小问题 非线性规划有约束极小问题 非线性无约束极小问题 非线性最小二乘问题 二次规划,线性规划有约束极小问题,模型 用命令 x, fval= linprog(f,A,b,A1,b1,lb,ub),线性规划有约束极小问题,Find x that minimizes f(x)=-5x1-4x2-6x3 subject to x1-x2+x320 3x1+2x2+4x342 3x1+2x230 0x1, 0x2,0x3,线性规划有约束极小问题,First, enter the coefficients: f = -5; -4; -6 A = 1 -1 1 3 2 4 3 2 0; b = 20; 42; 30; lb = zeros(3,1); Next, call a linear programming routine: x,fval,exitflag,output,lambda = linprog(f,A,b,lb); Entering x, fval,lambda.ineqlin, and lambda.lower gets x = 0.0000 15.0000 3.0000 fval = -78.0000 和其它信息。,线性规划有约束极小问题,解问题 把问题极小化并将约束标准化,线性规划有约束极小问题,键入c=-2,-3,5;a=-2,5,-1; b=-10;a1=1,1,1;b1=7;LB=0,0,0; x,y=linprog(c,a,b,a1,b1,LB) 得当X=(6.4286,0.5714,0.0000)时, z=-14.5714最大.,线性规划有约束极小问题,解问题,线性规划有约束极小问题,解:键入 c=-2,-1,1;a=1,4,-1;2,-2,1; b=4;12;a1=1,1,2;b1=6; lb=0;0;-inf;ub=inf;inf;5; x,z=linprog(c,a,b,a1,b1,lb,ub) 得当X=(4.6667,0.0000,0.6667)时, z=-8.6667最小.,非线性规划有约束极小问题,模型: MATLAB求解此问题的命令是: x,fval,exitflag,output,lambda,grad,hessian=fmincon(fun,x0,A,b,A1,

注意事项

本文(Matlab 数学建模中的数据处理方法)为本站会员(文***)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.