当前位置:文档之家› MATLAB_实验04 多元函数微积分

MATLAB_实验04 多元函数微积分

实验04 多元函数微积分一实验目的 (2)二实验内容 (2)三实验准备 (2)四实验方法与步骤 (3)五练习与思考 (7)一 实验目的1 了解多元函数、多元函数积分的基本概念,多元函数的极值及其求法;2 理解多元函数的偏导数、全微分等概念,掌握积分在计算空间立体体积或表面积等问题中的应用;3 掌握MATLAB 软件有关求导数的命令;4 掌握MATLAB 软件有关的命令.二 实验内容1 多元函数的偏导数,极值;2 计算多元函数数值积分;3计算曲线积分,计算曲面积分.三 实验准备1 建立符号变量命令为sym 和syms ,调用格式为: x=sym('x') 建立符号变量x ;syms x y z 建立多个符号变量x ,y ,z ; 2 matlab 求导命令diff 的调用格式: diff(函数(,)f x y ,变量名x)求(,)f x y 对x 的偏导数f x∂∂; diff(函数(,)f x y ,变量名x,n) 求(,)f x y 对x 的n 阶偏导数n n fx∂∂;3 matlab 求雅可比矩阵命令jacobian 的调用格式: jacobian([f;g;h],[],,x y z )给出矩阵f f f x y zg g g x y zh h h xyz ⎛⎫∂∂∂ ⎪∂∂∂ ⎪ ⎪∂∂∂ ⎪∂∂∂ ⎪ ⎪∂∂∂ ⎪∂∂∂⎝⎭4 MATLAB 中主要用int 进行符号积分,常用格式如下: ① int(s)表示求符号表达式s 的不定积分② int(s,x)表示求符号表达式s 关于变量x 的不定积分③ int(s,a,b)表示求符号表达式s 的定积分,a ,b 分别为积分的上、下限④ int(s,x,a,b)表示求符号表达式s 关于变量x 的定积分,a,b 分别为积分的上、下限5 MATLAB 中主要用trapz,quad,quad8等进行数值积分,常用格式如下:① trapz(x,y)采用梯形积分法,其中x 是积分区间的离散化向量,y 是与x 同维数的向量、用来表示被积函数.② quad8('fun',a,b,tol)采用变步长数值积分,其中fun 为被积函数的M 函数名,a,b 分别为积分上、下限,tol 为精度,缺省值为1e-3.③ dblquad('fun',a,b,c,d)表示求矩形区域的二重数值积分,其中fun 为被积函数的M 函数名,a ,b 分别为x 的上、下限,c ,d 分别为y 的上、下限.使用help int ,help trapz ,help quad 等查阅有关这些命令的详细信息.四 实验方法与步骤例1 定义二元函数23z x y =+.解 (1)方法一:syms x y;z=x.^2+y.^3; (2)方法二:编写M 文件fun7.m 定义函数function z=fun7(x,y) z=x.^2+y.^3;(3)方法三:利用inline 函数:f=inline('x.^2+y.^3'). 注:不同定义方式,调用格式不完全相同. 例2 绘出函数23z x y =+的图形.解 程序为:x=linspace(-10,10,40);y=x;[X,Y]=meshgrid(x, y); Z=fun7(X,Y);surf(X,Y,Z),shading interp 结果如图2-10所示.图2-10例3 设222u x y yz =++,求u y∂∂. 解 输入命令:syms x y z;diff(x^2+2*y^2+y*z,y),得ans=4*y+z.利用jacobian 命令:jacobian(x^2+2*y^2+y*z,[x y]),得ans=[2*x,4*y+z],即矩阵,u u x y ⎛⎫∂∂ ⎪∂∂⎝⎭例4 设642232z x y x y =-+,求22222,,z z zx y x y∂∂∂∂∂∂∂.解 求22zx∂∂的程序为:syms x y;diff(x^6-3*y^4+2*x^2*y^2,x,2)结果为: ans=30*x^4+4*y^2 求22zy ∂∂的程序为:syms x y;diff(x^6-3*y^4+2*x^2*y^2,y,2) 结果为:ans=-36*y^2+4*x^2求2z x y∂∂∂的程序为:syms x y;diff(diff(x^6-3*y^4+2*x^2*y^2,x),y) 结果:为ans=8*x*y.注:diff(x^6-3*y^4+2*x^2*y^2,x,y)是求zy∂∂,而不是求2z x y ∂∂∂例5 设由,x y 所确定的z 的隐函数为2225xy y z ++=,求,z zx y∂∂∂∂.解 令()22,,25F x y z xy y z =++- ''/x z zF F x∂=-∂ 输入命令:syms x y z;a=jacobian(x*y+y^2+2*z^2-5,[x,y,z]) 可得矩阵()''',,x y z F F F =[y,x+2*y,4*z] 利用公式''''/,/x z y z z zF F F F x y∂∂=-=-∂∂可得 求zx ∂∂的程序为:-a(1)/a(3),结果为:-1/4*y/z ; 求zy∂∂的程序为:-a(2)/a(3),结果为:1/4*(-x-2*y)/z. 例6 求(1)()222122()312(12)f x x x x =-+-在点()2,2-临近的极小值.(2)222()()(1)f x y x x =-+-在55x -≤≤内的极值.解 求多元函数(,)z f x y =的极值点X 和极小值minf ,可用如下方法 方法一:X=fminsearch('f',x0),用的是Nelder-Mead 单纯形搜索法求解; 方法二:X=fminunc('f',x0),用的是BFGS 拟牛顿迭代法求解. 其中[](1),(2),(3),,()X x x x x n =,x0是初始点. 若求极大值点,用(-1)乘函数,再求极小值点.(1)程序如下:f='(x(1)^2-3*x(2))^2+12*(1-2*x(2))^2'; x=fminsearch(f,[-2,2]),minf=eval(f) 结果为:x =-1.2247 0.5000, minf =2.1879e-009结果说明在1 1.2247x =-,20.5x =时,函数的极小值为0. (2)先作函数的图形,程序如下:[x,y]=meshgrid(-5:0.5:5); f=(y-x.^2).^2+(1-x).^2; surf(x,y,f);结果如图2-11所示.以下程序为求函数的极小值:图2-11f='(x(2)-x(1).^2).^2+(1-x(1)).^2';x=fminsearch(f,[0.2,0.3]),minf=eval(f),shading interp结果为:x=[1.0000,1.0000],minf=4.1546e-010 说明在1,1x y ==时,函数的极小值为0. 例8 计算积分221(1)d d x y xy x y +≤+⎰⎰.解 先将被积函数转化为二次积分:)22111(1)d d 1d d x y x y x y x y y x -+≤⎛⎫++=++ ⎪⎝⎭⎰⎰⎰, 程序为:clear; syms x y;iy=int(1+x*y,y,-sqrt(1-x^2),sqrt(1-x^2));int(iy,x,-1,1) 结果为:ans=π.例9 求对弧长的曲线积分:(1)计算2d ,:2cos ,3sin Ly s L x t y t ==⎰。

[]2,2t ππ∈-; (2)计算2d Ly s ⎰,其中L 是抛物线2y x =上点()0,0O 与点(1,1)B 之间的一段弧;(3)计算曲线积分()222d x y z s Γ++⎰,其中Γ为螺旋线cos ,sin ,x a t y a t z kt ===上相应于t 从~ππ-的一段弧.解 (1)利用公式()()((,)d ,bLa f x y s f x t y t t =⎰⎰进行计算:程序为:syms t;x=2*cos(t);y=2*sin(t);z=0;f=y^2;int(y^2*sqrt(diff(x,t)^2+diff(y,t)^2),t,-2*pi,2*pi)结果为16*pi. (2)程序如下:syms t;x=t;y=t^2;z=0;f=y^2;int(f*sqrt(diff(x,t)^2+diff(y,t)^2),t,0,1) 结果为133/768*5^(1/2)-1/512*log(-2+5^(1/2)) (3)利用公式()()()((,,)d ,,bLa f x y z s f x t y t z t t =⎰⎰计算,程序如下:syms t a k;x=a*cos(t);y=a*sin(t);z=k*t;f=x^2+y^2+z^2; int(f*sqrt(diff(x,t)^2+diff(y,t)^2+diff(z,t)^2),t,-pi,pi) 结果为:2*(a^2+k^2)^(1/2)*a^2*pi+2/3*(a^2+k^2)^(1/2)*k^2*pi^3 例10 求对坐标的曲线积分(1)计算22d 3d Lxy x x y +⎰,其中L 为抛物线2y x =上从()0,0O 到()1,1B 的一段弧;(2)计算322d 3d d L x x zy y x y z +-⎰,其中2:34x t L y t z t=⎧⎪=⎨⎪=⎩,起点1t =,终点0t =.解 (1)利用公式()()()()()()()()()(),d ,d ,','d LP x y x Q x y y P x t y t x t Q x t y t y t t βα⎡⎤+=+⎣⎦⎰⎰计算,程序为:syms t;x=t;y=t^2;p=2*x*y;q=3*x^2;int(p*diff(x,t)+q*diff(y,t),t,0,1)结果为:ans=2.(2)利用公式()()(),,d ,,d ,,d LP x y z x Q x y z y R x y z z ++⎰()()()()()()()()()()()(),',','d P x t y t x t Q x t y t y t R x t y t z t t βα⎡⎤=++⎣⎦⎰ 计算,程序为:syms t;x=2*t;y=3*t;z=4*t;p=x^3;q=3*z*y^2;r=-x^2*y; int(p*diff(x,t)+q*diff(y,t)+r*diff(z,t),t,1,0) 结果为:ans=-73.例11 求()()1cos d sin d x x Le y x e y y y ---⎰,L 为0,0sin x y x π≤≤≤≤的边界.解 利用格林公式,设闭区域D 由分段光滑的曲线L 围成,因为函数(),P x y 及(),Q x y 在D 上具有一阶连续偏导数,故由格林公式有d d d d D LQ P x y P x Q y x y ⎛⎫∂∂-=+ ⎪∂∂⎝⎭⎰⎰⎰,其中L 是D 的取正向的边界曲线,将对坐标的曲线积分化为二重积分再化为二次积分:()()()sin 01cos d sin d d d d d xx x xx LDe y x e y y y e y x y x e y y π---=-=-⎰⎰⎰⎰⎰程序如下:syms x y;p=exp(x)*(1-cos(y));q=-exp(x)*(y-sin(y));y1=0;y2=sin(x);a=0;b=pi; s=int(int(diff(q,x)-diff(p,y),y,y1,y2),x,a,b); 结果为:s6=-1/5*exp(pi)+1/5 例12 求对面积的曲面积分(1) 计算曲面积分1d s z ∑⎰⎰,其中∑是球面2222x y z a ++=被平面()0z h h a =≤≤截得的顶部;(2)计算d ,xyz s ∑⎰⎰∑为1x y z ++=位于第一卦限的部分.解 需要先将对面积的曲面积分化为二重积分再化为二次积分()()(,,d ,,,d Df x y z s f x y z x y x y ∑=⎰⎰⎰⎰再用程序求解.(1)∑的方程为z=,2222221d d d d d D a x yr rs a z a x y a r π∑==---⎰⎰⎰⎰⎰程序为:syms a r t h;f=a*int(int('r/(a^2-r^2)',r,0,sqrt(a^2-h^2)),t,0,2*pi) 结果为:f =a*(-log(h^2)*pi+log(a^2)*pi)(2)∑的方程为1zx y =--=()()110d 31d d d 1d xDxyz s x y x y x x y x y y -∑=--=--⎰⎰⎰⎰⎰程序为:syms a r t h;f=sqrt(3)*int(int('x*y*(1-x-y)',y,0,(1-x)),0,1) 结果为:f =1/120*3^(1/2).例13 计算22d d x y z x y ∑⎰⎰,其中∑是球面2222x y z R ++=的下半球面的下侧.解 先将对坐标的曲面积分化为二重积分再化为二次积分(22222522d d d d d cos sin xyRD xy z x y x y x y r r πθθ∑=-=⎰⎰⎰⎰⎰⎰程序为:syms t r R;f=int(int('r^5*cos(t)^2*sin(t)^2*sqrt(R^2-r^2)',r,0,R),t,0,2*pi) 结果为:f =2/105*pi*R^4*(R^2)^(3/2).例14 利用高斯公式计算曲面积分()()d d d d x y x y x y z y z ∑-+-⎰⎰,其中∑为柱面221x y +=及平面0z =,4z =所围成的空间闭区域的整个边界曲面的外侧.解 利用高斯公式d d d d d d d P Q R V P y z Q z x R x y x y z Ω∑⎛⎫∂∂∂++=++ ⎪∂∂∂⎝⎭⎰⎰⎰⎰⎰有()()()()213d d d d d d d d d sin d x y x y x y z y z y z x y z r r r z z πθθ∑Ω-+-=-=-⎰⎰⎰⎰⎰⎰⎰⎰程序为:syms t r z;f=int(int(int(r*(r*sin(t)-z),z,0,4),r,0,1),t,0,2*pi)结果为:f = 8*pi.五 练习与思考1 用函数diff(z,x,2)求下列函数的偏导数(1)设32arctan 1x yz xy +=-,求2,,z z z x y x y ∂∂∂∂∂∂∂;(2)设x y zu xy ze++=+,求222222,,u u ux y z∂∂∂∂∂∂;(3)设u 222222,,u u ux y z∂∂∂∂∂∂在(1,2,1)P -点的值;(4)求函数22z x y =+在点()1,2处沿从点()1,2到点()1/22,23+的方向的方向导数. 2 设224x xy yz +-=,求,z z x y∂∂∂∂. 3 用函数fminsearch 或fminunc 求多元函数的极值:(1)求函数()()()sin sin sin z x y x y =+在0/2,0/2x y ππ<<<<内的极大值; (2)求cos 2sin sin(2)z x y x y =+-++在,x y ππππ-<<-<<内的极小值; (3)求函数()22(,)3x f x y e x y y =++在01,20x y <<-<<内的极小值.4 用定积分的方法计算椭圆221916x y +=的周长.5 计算数值积分222(1)d d x y xx y x y +≤++⎰⎰.6 用化累次积分的方法计算下列重积分:(1)()22ln 1d d DI x y x y =++⎰⎰:其中D 为圆:224x y +=所包围的在第一象限的部分;(2)222ln d d x y z x y z Ω++,222:14x y z Ω≤++≤;(3)()222d d ,:11,1,0x y z x y z y z ΩΩ+-+≤≥≥.7计算下列曲线积分:(1)求对弧长的曲线积分:s ,其中L 是2222x y z a ++=与x y =相交的圆周;(2)求对坐标的曲线积分:()()22d d Lx y x x y y ++-⎰,其中L 为由点()0,0A 到点()1,2B 的曲线328y x =.8 计算下列曲面积分:(1) 求对面积的曲面积分()4422221d x y y z x z s ∑-+-+⎰⎰,其中,∑为圆锥面z 被柱面222x y y +=所截下的部分;(2) 求对坐标的曲面积分:()()22d d d d 2d d x yz y z y zx z x z x y ∑-+-+⎰⎰,其中,:1z ∑=0z ≥部分的上侧;(3) 应用高斯公式计算闭曲面上的曲面积分()()22d d d d 2d d x yz y z y zx z x z x y ∑-+-+⎰⎰,其中,∑是球心在原点,半径为3的球面,取外法线方向.第四次实验作业 1(2)、3(2)、5、6(2)、7(2)、8(2)。

相关主题