Matlab微分和积分.doc_第1页
Matlab微分和积分.doc_第2页
Matlab微分和积分.doc_第3页
Matlab微分和积分.doc_第4页
Matlab微分和积分.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六讲 Matlab微分和积分理论介绍:微分、有限差分、积分、离散求和软件求解:函数及常见注意事项一一元函数导数与微分 Matlab由命令函数diff来完成求导运算,调用格式为:diff(fun,variable,n),其中fun为待求导运算的函数,variable为求导变量,n为求导阶次。1.一般求导运算例1 求函数的导数程序:clearsyms xy=cos(x)3-cos(3*x);dy=diff(y)2.求高阶导数例2 求函数的3阶导数程序:clearsyms xy=log(x+2)/(1-x);dy=diff(y,x,3)注意:求高阶导数运算对计算机硬件要求较高,如果阶次太高可能导致计算机死机。Ctrl+C键终止计算机运算。3.符号函数导数运算例3 设函数都是可导函数,求函数的导数程序:clearsyms x yF=sym(u(x,y)*v(x,y);diff(F)diff(F,y)二一元函数导数、微分的应用微分式研究函数局部性质的有力工具,通过对函数导数的研究可以清楚的描述出函数的变化趋势,本节主要讨论函数的极值、凹凸性、拐点和函数曲线的变化趋势之间的关系。例4 讨论函数的极值、单调性和导函数之间的关系程序:clearsyms x y dy d2yy=x2/(1+x2);dy=diff(y) %(dy =2*x/(1+x2)-2*x3/(1+x2)2)simplify(dy)%(ans= 2*x/(1+x2)2)d2y=diff(y,2) %(d2y =2/(1+x2)-10*x2/(1+x2)2+8*x4/(1+x2)3)d2y=simplify(d2y)%(d2y= -2*(-1+3*x2)/(1+x2)3)lims=-5,5;subplot(3,1,1) fplot(x2/(1+x2),lims)subplot(3,1,2) fplot(2*x/(1+x2)2,lims)subplot(3,1,3) fplot(-2*(-1+3*x2)/(1+x2)3,lims)例5 求函数的极值点分析:对f(x)求导,然后令f(x)=0,解方程可求得函数f(x)的极值点。程序:clearsyms xy=x3+6*x2+x-1;dy=diff(y)%dy =3*x2+12*x+1 px=solve(dy)%px =-2+1/3*33(1/2); -2-1/3*33(1/2)ezplot(y)说明:solve函数有时候不能求出函数的解,注意用ezplot函数画出函数图像,估计解的位置,然后使用fzero函数求解。三一元函数的积分Matlab为积分运算提供了一个简洁而又功能强大的工具,完成积分运算的命令函数为int,int函数的调用格式为:int(fun,variable,a,b),其中fun为待求积分的函数表达式,variable为积分变量,a、b为积分下、上限。例6 计算不定积分程序:clearsyms x y a b cy=sin(a*x)*sin(b*x)*sin(c*x);int(y,x)pretty(ans)说明:利用Matlab积分计算工具,简单的求出了不定积分,Matlab不定积分计算略去了常数项C的声明。例6 计算定积分程序:clearsyms x yy=(x*exp(x)/(1+x)2;int(y,0,1)%ans= 1/2*exp(1)-1练习与思考:有的函数,如果积分区间取得不合适的话Matlab会给出错误警告,比如y=1/x在区间-1,1上的积分,这种情况该如何让处理呢?(数值积分)四多元函数微分法及其应用Matlab多元函数求偏导数函数以及隐函数求导仍然使用命令函数diff。1.求偏导函数和隐函数求导例7 已知方程计算分析:令F=x2+y2+z2-4*z,根据隐函数求导定理有程序:clearsyms x y zF=x2+y2+z2-4*z;Fx=diff(F,x);Fz=diff(F,z);G=-Fx/Fz练习与思考:对于多元函数,如何求高阶偏导函数、混合偏导函数?2.复合函数求导例8 已知计算程序:clearsyms t x yt=exp(sin(x);y=sin(exp(t);dy=diff(y,x);dy=simplify(dy);pretty(dy)注意:如果把t=exp(sin(x)和y=sin(exp(t)的输入顺序交换,则dy的结果将截然不同,计算结果为0,这说明在使用Matlab计算复合函数导数时,变量声明一定要按照求导过程中对变量的已知顺序进行。3.梯度计算和方向导数Matalb符号运算中由jacobian函数来完成梯度的运算,而数值计算中由函数gradient来完成。(1)符号运算对梯度的计算符号计算梯度运算中jacobian函数的调用格式为:jacobian(fun,v),参数fun表示符号函数表达式,v是个向量,定义求导变量组成的向量。例9 设求梯度程序:clearsyms x y zf=x2+y2+z2;gradf=jacobian(f,x,y,z)%gradf = 2*x, 2*y, 2*zGrad=subs(subs(subs(gradf,1),-1),2)%Grad = 2 -2 4注意:subs函数的应用,调用格式为subs(function,variable,n),将n的值赋值给function的变量variable。(2)数值运算对梯度的计算数值计算梯度运算中gradient函数的调用格式为:fx,fy=gradient(function)。例10 对进行梯度计算,绘出相应图形。程序:clearx=-1:0.1:1;X,Y=meshgrid(x);Z=X.2+Y.2;DX,DY=gradient(Z)subplot(2,1,1)mesh(Z)subplot(2,1,2)quiver(DX,DY)注意:quiver(x,y)函数用来绘制二维函数的向量场。(3)方向导数的计算函数f在某点沿某个方向的方向导数jacobian(f)等于这点的梯度和沿这个方向的单位向量v的数量积:dot(jacobian(f),v)。例11 求函数在点P(1,0)处沿着从点P(1,0)到点Q(2,-1)的方向导数。程序:clearsyms x y zz=x*exp(2*y);v=sqrt(2)/2,-sqrt(2)/2;%P、Q方向的单位向量grad=jacobian(z);%计算梯度T=dot(grad,v);%方向导数subs(subs(T,x,1),y,0)4.多元函数求极值多元函数求极值首先要明确数学分析中多元函数求极值的充分条件定理。练习与思考:分析函数的极值情况。五重积分因为重积分从计算上来说仍是使用定积分的方法,Matlab没有提供专门的命令函数来处理重积分,因此在我们确定了积分限后仍是使用int函数来处理重积分问题。练习与思考:(1)计算二重积分,(2)计算V由曲面围成。六曲线积分与曲面积分曲线积分和曲面积分仍是转化为累次积分或定积分来计算,因此对曲面和曲线积分的计算还是采用int函数来计算。例12 曲线L是椭圆在第一象限部分,求曲线积分分析:用参数方程来解决问题,曲线参数方程为:x=a*cos(t),y=b*sin(t),于是ds=sqrt(a2*sin(t)2+b2*cos(t)2)*dt,t的取值范围为0,pi/2程序:clearsyms x y a b tx=a*cos(t);y=b*sin(t);dx=diff(x,t);dy=diff(y,t);ds=sqrt(dx2+dy2);f=x*y;I=int(f*ds,t,0,pi/2)例13 曲面S是球面,计算曲面积分分析:球面参数方程为:x=a*cos(u)*s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论