第8章-matlab数值微分与积分课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第8章-matlab数值微分与积分课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- _matlab 数值 微分 积分 课件
- 资源描述:
-
1、第8章 Matlab数值微分和积分化工学院化工学院 伍水生伍水生2019-11本章知识要点 极限(limit)数值微分(polyder,fnder)数值积分(quad,quadl,fnint)数值微分、数值积分在化工计算中的作用状态方程计算流体的焓和熵微分法反应动力学方程拟合等温活塞流反应器的设计计算微观离析反应器的计算 单变量函数的极限 格式1:L=limit(fun,x,x0)格式2:L=limit(fun,x,x0,left 或 right)8.1 数值微分8.1.1 极限问题的解析解 例:试求解极限问题 syms x a b;L=limit(x*(1+a/x)x*sin(b/x),x,
2、inf)L=exp(a)*b 例:求解单边极限问题 syms x;limit(exp(x3)-1)/(1-cos(sqrt(x-sin(x),x,0,right)ans=12 多变量函数的极限:格式:L1=limit(limit(f,x,x0),y,y0)或 L1=limit(limit(f,y,y0),x,x0)如果x0 或y0不是确定的值,而是另一个变量的函数,如x-g(y),则上述的极限求取顺序不能交换。例:求出二元函数极限值 syms x y a;f=exp(-1/(y2+x2)*sin(x)2/x2*(1+1/y2)(x+a2*y2);L=limit(limit(f,x,1/sqrt
3、(y),y,inf)L=exp(a2)8.2 函数导数的解析解 函数的导数和高阶导数 格式:y=diff(fun,x)%求导数(默认为1阶)y=diff(fun,x,n)%求n阶导数 例:求一阶导数:syms x;f1=diff(sin(x)/(x2+4*x+3),x)的导数。求例xxysin1syms x;syms x;f1=diff(sin(x)/x)f1=diff(sin(x)/x)得结果得结果:f1=cos(x)/x-sin(x)/x2的导数。求例xysinln2解解:输入命令输入命令:syms x;f1=diff(log(sin(x)得结果得结果:f1=cos(x)/sin(x).在
4、在matlab中,函数中,函数lnx用用log(x)表示,而表示,而log10(x)表示表示 lgx。多元函数的偏导:格式:f=diff(diff(f,x,m),y,n)或 f=diff(diff(f,y,n),x,m)例:求偏导数 syms x y;z=(x2-2*x)*exp(-x2-y2-x*y);zx=diff(z,x)zx=(2*x-2)*exp(-x2-y2-x*y)+(x2-2*x)*(-2*x-y)*exp(-x2-y2-x*y)zy=diff(z,y)zy=(x2-2*x)*(-2*y-x)*exp(-x2-y2-x*y)直接绘制三维曲面 x,y=meshgrid(-3:.2
5、:3,-2:.2:2);z=(x.2-2*x).*exp(-x.2-y.2-x.*y);surf(x,y,z),axis(-3 3-2 2-0.7 1.5)隐函数的偏导数:格式:F=diff(f,xj)/diff(f,xi)例:z=f(x,y)=-x2-y2-x*y;syms x y;f=x2-y2-x*y;diff(f,x)/diff(f,y)或者:syms x y;diff(x2-y2-x*y,x)/diff(x2-y2-x*y,y)ans=(-2*x-y)/(-2*y-x)对于列表型函数往往需要用数值方法计算函数的微分 数值微分的基本方法1.差分2.利用插值(拟合)多项式求微分3.利用三
6、次样条插值(拟合)函数求微分 数值微分可以放大误差,应谨慎使用函数diff对于向量X,diff(X)表示了X(2)-X(1)X(3)-X(2).X(n)-X(n-1).对于矩阵X,diff(X)表示了X(2:n,:)-X(1:n-1,:)diff(x,n,dim)得到矩阵x在dim维上的n阶差值 diff(1:10).2)1 3 5 7 9 11 13 15 17 19x=1 3 8;2 4 6diff(x,1,1)diff(x,1,2)diff(x,2,2)diff(x,3,2)1 1-22 5;2 2Empty matrix:2-by-030Matlab数值微分实现方法有限差分法:用差分函
7、数diff()近似计算导数多项式拟合方法:离散数据()polyfit多项式拟合函数()polyder导函数pp()polyval在xi的导数值 三次样条插值方法样条拟合方法离散数据 样条插值函数cs导函数pp ()fnval在xi的导数值()spline()fnder离散数据 样条拟合函数sp导函数pp 在xi的导数值 ()fnder()()2()spapsaspapcsaps或或()fnval例题某一液相反应浓度随时间变化的实验数据如下表:t/min00.20.61.02.05.010.0C(g/L)5.193.772.301.570.80.250.094试t=0.1,0.4min时的反应速
8、度 x=0 0.2 0.6 1 2 5 10;C=5.19 3.77 2.30 1.57 0.8 0.25 0.094;f=spline(x,C);dC=fnder(f);dC1=fnval(dC,0.1);dC2=fnval(dC,0.4);dC1,dC2三次样条插值方法:x=0 0.2 0.6 1 2 5 10;C=5.19 3.77 2.30 1.57 0.8 0.25 0.094;f=polyfit(x,C,3);dC=polyder(f);dC1=polyval(dC,0.1);dC2=polyval(dC,0.4);dC1,dC2多项式拟合方法:8.2 数值积分数值积分在数值计算中
展开阅读全文