第七章 多元函数微分法及其应用 数学实验 一、多元函数的偏导数和全微分的符号计算 我们不但可以调用diff命令作一元函数的符号求导,而且还可以用它来作多元函数的 符号求偏导.用dif可以作多元函数的符号求偏导函数、全微分和一点处的偏导数和全微分, 下面以二元函数和三元函数为例说明iff的调用格式和功能,如下表和例题所示.读者可以 根据用diff求二元、三元函数的偏导函数和全微分的方法推广到四元和四元以上的函数. zx=diff(f(x,y),x) 求:=(x,y)对x的一阶偏导函数=(x,y) zy=diff(f(x.y).y) 求:=fx,)对y的一阶偏导函数=x,) dz=zx*dx+zy*dy 求:=fx,y)的全微分正=(x,ydr+f(xy)dy zxx=diff(zx,x) 求:=f任,)对x的二阶偏导函数云=fx,川 zxv=diff(zx.v) 求:=fx,y)对y的二阶偏导函数”=(x,) zxn=diff(f(x,y),x.n) 求:=fx,)对x的n阶偏导函数 dx" zyn=diff(f(x.y),y,n) 求:=化列对)的阶号 ux=diff(f(x.y,z),x) 求u=fx,y)对x的一阶偏导函数4=x,y,) uy=diff(f(x,y,z),y) 求u=f(x,八,)对y的一阶偏导函数心=(x,八,) uz=diff(f(x,y,z),z) 求u=∫xy,)对:的一阶偏导函数4=xy,) du=ux*dx+uy*dy+uz*dz 求:=f(x,y)的全微分 du=f(x,y,dx+(x,y,=dy+f(x,y,=)d uyx=diff(u,y,x) 求u=fx,y,)的二阶混合偏导函数=f(x,上,) uyxy=diff(u,y,x,y) 求u=xy)的三阶混合偏导函数=(x,y,) solve(f(x,y)=0,y) 将y看成关于自变量x的函数,求解方程fx)=0 将函数显化成y=(x)的形式 Yx=-diff(F,x)/diff(F,y) 隐函数F(x,)=0求导函数少 Zx=-diff(F,x)/diff(F,z) 隐函数F(x,y,:)=0求偏导函数 ax Zy=-diff(F,y)/diff(F,z) 隐函数F(K,y=)=0求偏导函数
1 第七章 多元函数微分法及其应用 数学实验 一、多元函数的偏导数和全微分的符号计算 我们不但可以调用 diff 命令作一元函数的符号求导,而且还可以用它来作多元函数的 符号求偏导.用 diff 可以作多元函数的符号求偏导函数、全微分和一点处的偏导数和全微分, 下面以二元函数和三元函数为例说明 diff 的调用格式和功能,如下表和例题所示.读者可以 根据用 diff 求二元、三元函数的偏导函数和全微分的方法推广到四元和四元以上的函数. zx=diff(f(x,y),x) 求 z f x y = ( , ) 对 x 的一阶偏导函数 ( , ) x x z f x y = zy=diff(f(x,y),y) 求 z f x y = ( , ) 对 y 的一阶偏导函数 ( , ) y y z f x y = dz=zx*dx+zy*dy 求 z f x y = ( , ) 的全微分 d ( , )d ( , )d x y z f x y x f x y y = + zxx=diff(zx,x) 求 z f x y = ( , ) 对 x 的二阶偏导函数 ( , ) xx xx z f x y = zxy=diff(zx,y) 求 z f x y = ( , ) 对 y 的二阶偏导函数 ( , ) xy xy z f x y = zxn=diff(f(x,y),x,n) 求 z f x y = ( , ) 对 x 的 n 阶偏导函数 d d n n z x zyn=diff(f(x,y),y,n) 求 z f x y = ( , ) 对 y 的 n 阶偏导函数 d d n n z y ux=diff(f(x,y,z),x) 求 u f x y z = ( , , ) 对 x 的一阶偏导函数 ( , , ) x x u f x y z = uy=diff(f(x,y,z),y) 求 u f x y z = ( , , ) 对 y 的一阶偏导函数 ( , , ) y y u f x y z = uz=diff(f(x,y,z),z) 求 u f x y z = ( , , ) 对 z 的一阶偏导函数 ( , , ) z z u f x y z = du=ux*dx+uy*dy+uz*dz 求 z f x y = ( , ) 的全微分 ( , , ) ( , , ) ( , , ) xyz du f x y z dx f x y z dy f x y z dz = + + uyx=diff(u,y,x) 求 u f x y z = ( , , ) 的二阶混合偏导函数 ( , , ) yx yx u f x y z = uyxy=diff(u,y,x,y) 求 u f x y z = ( , , ) 的三阶混合偏导函数 ( , , ) yxy yxy u f x y z = solve(f(x,y)=0,y) 将 y 看成关于自变量 x 的函数,求解方程 f x y ( , ) 0 = , 将函数显化成 y y x = ( ) 的形式 Yx=-diff(F,x)/diff(F,y) 隐函数 F x y ( , ) 0 = 求导函数 d d y x Zx=-diff(F,x)/diff(F,z) 隐函数 F x y z ( , , ) 0 = 求偏导函数 z x Zy=-diff(F,y)/diff(F,z) 隐函数 F x y z ( , , ) 0 = 求偏导函数 z y
例1设二元函数:=少-可-+1,求:的价偏号数和全微分:求高阶偏号数。 器·等:求在:=-0,=1处的阶偏号数和全微分和离阶保号数 好)计第:价价学和全,离动发领器·空,等。相应的型序为 >syms x y z dx dy dz >》z=x^3*y^2-3*x*灯^3-x*y+1: >zx=diff(z,x),zy=diff(z,y),dz=zx*dx+zy*dy, zxy=diff(zx,y),zxx=diff(zx,x):zxxx=diff(zxx,x),zyy=diff(zy,y), 运行后得到:的一价偏号函数和全微分,高阶衡号数需,尝·导分别为 Zx=3*x^2*y^2-3*灯3-y zy=2*x^3*y-9*x*y^2-x dz=(3*x^2*y2-3*y^3-y)*dx+(2*x^3*y-9*x*y^2-x)*dy ZXxy=6*x^2*y-9*y^2-1 ZXxx =6*V 2 Zy=2*x^3-18*x*y 即求得会=3-y,等=2-9对2- d=(3x2y2-3y2-yd+(2xy-92-x)dy -6-1器-6.等-2r-1。 (2)输入计算:在x=0,y=1处的一阶偏导函数和全微分和高阶偏导数 o 的Matlab程序 >syms dx dy dz >》x=0:y=1: >》zX=3*x2*灯2-3*y3-y,Zy=2*x^3*y-9*x*y^2-x, dz=(3*x^2*y^2-3*^3-y)*dx+(2*x^3*y-9*x*灯2-x)*d >zxy=6*x^2*y-9*y^2-1,Zyy=2*x^3-18*x*y 运行结果如下 zx =-4,zy =0,dz =-4*dx,zxy =-10,zyy =0
2 例 1 设二元函数 3 2 3 z x y xy xy = − − + 3 1 ,求 z 的一阶偏导数和全微分;求高阶偏导数 2 z x y , 3 3 z x , 2 2 z y ;求在 x = 0 , y =1 处的一阶偏导数和全微分和高阶偏导数 2 0 1 x y z x y = = , 2 2 0 1 x y z y = = . 解 (1)计算 z 的一阶偏导和全微分,高阶偏导数 2 z x y , 3 3 z x , 2 2 z y ,相应的程序为 >> syms x y z dx dy dz >> z=x^3*y^2-3*x*y^3-x*y+1; >> zx=diff(z,x), zy=diff(z,y), dz=zx*dx+zy*dy, zxy=diff(zx,y), zxx=diff(zx,x); zxxx=diff(zxx,x), zyy=diff(zy,y), 运行后得到 z 的一阶偏导函数和全微分,高阶偏导数 2 z x y , 3 3 z x , 2 2 z y 分别为 zx =3*x^2*y^2-3*y^3-y zy =2*x^3*y-9*x*y^2-x dz =(3*x^2*y^2-3*y^3-y)*dx+(2*x^3*y-9*x*y^2-x)*dy zxy =6*x^2*y-9*y^2-1 zxxx =6*y^2 zyy =2*x^3-18*x*y 即求得 2 2 3 3 3 z x y y y x = − − , 3 2 2 9 z x y xy x y = − − , ( ) ( ) 2 2 3 3 2 d 3 3 d 2 9 d z x y y y x x y xy x y = − − + − − , 2 2 2 6 9 1 z x y y x y = − − , 3 2 3 6 z y x = , 2 3 2 2 18 z x xy y = − . (2)输入计算 z 在 x = 0 , y =1 处的一阶偏导函数和全微分和高阶偏导数 2 0 1 x y z x y = = , 2 2 0 1 x y z y = = 的 Matlab 程序 >> syms dx dy dz >> x=0;y=1; >> zx =3*x^2*y^2-3*y^3-y,zy =2*x^3*y-9*x*y^2-x, dz =(3*x^2*y^2-3*y^3-y)*dx+(2*x^3*y-9*x*y^2-x)*dy, >> zxy =6*x^2*y-9*y^2-1, zyy =2*x^3-18*x*y 运行结果如下 zx =-4,zy =0,dz =-4*dx,zxy =-10,zyy =0
2求下列方程所确定的函数y=)的导数业。 dr (1)xcosy=sin(x+y): (2)nx+e=e. 解(1)相应的Mat1ab程序为 >>syms x y: >>f=solve('x*cos(y)-sin(xty)=0',y): >>simplify(diff(f,x)) 结果为ans=(cos(x)+x*sin(x)-1)/(x^2-2*x*sin(x)+1),即所求导数为 dycos(x)+xsin(x)-1 dx x2-2xsinx+1 (2)令Fx,)=nx+e兰-c,先求F,再求F,相应的Matlabf程序为 >syms x y: >>Fx=diff(log(x)+exp(-y/x)-exp(1),x) 得到F:Fx=l/x+y/x^2*exp(y/) >Fy=diff(log(x)+exp(-y/x)-exp(1),y) 得到F:下y=-1/x*exp(y/x) >>yx=-Fx/Fy 可得所求导数为 yx=-(-1/x-y/x"2*exp(-y/x))*x/exp(-y/x) dr (xx 例3由隐西数2x+y:心确定:功,求和 解相应的Matlab程序为 >syms x y z >》F=2*x+y+z-exp(-x-3*y-2*2): >Fy=diff(F,y):Fz=diff(F,2):Zy=-Fy/Fz,Zyx=diff(Zy,x) 运行后得到和如下 Zy=(-1-3*exp(-x-3*y-2*2)/(1+2*exp(-x-3*y-2*z) 3
3 即 0 1 4 x y z x = = = − , 0 1 0 x y z y = = = , d 4d z x = − , 2 0 1 10 x y z x y = = = − , 2 2 0 1 0 x y z y = = = . 例2 求下列方程所确定的函数 y y x = ( ) 的导数 d d y x . (1) x y x y cos sin( ) = + ; (2) ln e e y x x − + = . 解 (1)相应的Matlab程序为 >>syms x y; >>f=solve(‘x*cos(y)-sin(x+y)=0’,y); >>simplify(diff(f,x)) 结果为ans=(cos(x)+x*sin(x)-1)/(x^2-2*x*sin(x)+1),即所求导数为 2 d cos( ) sin( ) 1 d 2 sin 1 y x x x x x x x + − = − + . (2)令 ( , ) ln e e y x F x y x − = + − ,先求 F x ,再求 F y ,相应的Matlab程序为 >> syms x y; >> Fx=diff(log(x)+exp(-y/x)-exp(1),x) 得到 F x : Fx=1/x+y/x^2*exp(-y/x) >> Fy=diff(log(x)+exp(-y/x)-exp(1),y) 得到 F y : Fy=-1/x*exp(-y/x) >>yx=-Fx/Fy 可得所求导数为 yx=-(-1/x-y/x^2*exp(-y/x))*x/exp(-y/x), 即 2 2 1 e d 1 e e d 1 e y x y y x x y x y y y x x x x x x x − − − + = = + . 例 3 由隐函数 3 2 2 e x y z x y z − − − + + = 确定 z z x y = ( , ) ,求 z y 和 2 z y x . 解 相应的 Matlab 程序为 >> syms x y z >> F=2*x+y+z-exp(-x-3*y-2*z); >> Fy=diff(F,y);Fz=diff(F,z);Zy=-Fy/Fz,Zyx=diff(Zy,x) 运行后得到 z y 和 2 z y x 如下 Zy =(-1-3*exp(-x-3*y-2*z))/(1+2*exp(-x-3*y-2*z))
Zyx =3*exp(-x-3*y-2*z)/(1+2*exp(-x-3*y-2*z)+2*(-1-3*exp(-x-3*y-2*z)/(1+2*exp(-x-3 *y-2*2)^2*exp(-x-3*y-2*2) 即位=-1-3e-2: 1+2e-2, 20-30w-er- ai+2er正*0+2e2 二、多元函数极值的计算 例4求函数fx,y)=-y+3x2+3y2-9x的极值 解相应的Matlab程序为 >syms x y >f=x^3-y^3+3*x^2+3*y^2-9*x: >fx=diff(f.x) 输出结果fx=3*x^2+6*x-9 >fy=diff(f,y) 输出结果fy=-3y2+6*y >》[x0,y0]=solve(fx,fy)%求驻点 输出结果 x0= 1-31-3 y0= 0022 >》fxx=diff(fx,x)%求f对x的二阶纯偏导数 输出结果fxx=6*x+6 >fxy=diff(fx,y) %求∫对x,y的二阶混合偏导数 输出结果fxy=0 >>fyy=diff(fy,y) %求∫对y的二阶纯偏导数 输出结果fyy=-6*y+6 >》delta=inline('(6*x+6).*(-6*y-6)')%定义函数fnJn-f,计算AC-B 输出结果delta= Inline function: delta(x,y)=(6*x+6).*(-6*y+6) >delta(x0,yo) 输出结果ans 72-72-7272 上述结果说明函数在点(,0)和(-3,2)处取得极值,在点(-3,0)和(1,2)处无极值 在点(1,0)处,由于A>0,函数在该点处有极小值f1,0)=-5: 在点(-3,2)处,由于A<0,函数在该点处有极大值f-3,2)=31
4 Zyx =3*exp(-x-3*y-2*z)/(1+2*exp(-x-3*y-2*z))+2*(-1-3*exp(-x-3*y-2*z))/(1+2*exp(-x-3 *y-2*z))^2*exp(-x-3*y-2*z) 即 3 2 3 2 1 3e 1 2e x y z x y z z y − − − − − − − − = + , ( ) 2 3 2 3 2 3 2 3 2 2 3 2 3e 2(1 3e ) e 1 2e 1 2e x y z x y z x y z x y z x y z z y x − − − − − − − − − − − − − − − − = + + + . 二、多元函数极值的计算 例 4 求函数 3 3 2 2 f x y x y x y x ( , ) 3 3 9 = − + + − 的极值. 解 相应的 Matlab 程序为 >> syms x y >> f=x^3-y^3+3*x^2+3*y^2-9*x; >> fx=diff(f,x) 输出结果 fx =3*x^2+6*x-9 >> fy=diff(f,y) 输出结果 fy =-3*y^2+6*y >> [x0,y0]=solve(fx,fy) %求驻点 输出结果 x0 = 1 -3 1 -3 y0 = 0 0 2 2 >> fxx=diff(fx,x) %求 f 对 x 的二阶纯偏导数 输出结果 fxx =6*x+6 >> fxy=diff(fx,y) %求 f 对 x , y 的二阶混合偏导数 输出结果 fxy =0 >> fyy=diff(fy,y) %求 f 对 y 的二阶纯偏导数 输出结果 fyy =-6*y+6 >> delta=inline('(6*x+6).*(-6*y-6)') %定义函数 2 xx yy xy f f f − ,计算 2 AC B− 输出结果 delta = Inline function: delta(x,y) = (6*x+6).*(-6*y+6) >> delta(x0,y0) 输出结果 ans = 72 -72 -72 72 上述结果说明函数在点 (1,0) 和 ( 3,2) − 处取得极值,在点 ( 3,0) − 和 (1,2) 处无极值. 在点 (1,0) 处,由于 A 0 ,函数在该点处有极小值 f (1,0) 5 = − ; 在点 ( 3,2) − 处,由于 A 0 ,函数在该点处有极大值 f ( 3,2) 31 − =
5求表面积为a2而体积最大的长方体的体积 解设长方体的三棱长分别为x,y,:,则问题就是在条件 0x,y)=2y+2z+2x-a 下,求函数V=z(x>0,y>0,:>0)的最大值. 解相应的Matlab程序为 >syms x y z lamda a >》L=x*y*2+1amda*(2*x*y+2*y*2+2*2*x-a2):%定义拉格朗日函数 >Lx=diff(L,x)%求L对x的偏导数 输出结果Lx=y*z+1amda*(2*y+2*z) >Ly=diff(L,y)%求L对y的偏导数 输出结果Ly=z*x+1amda*(2*x+2*z) >Lz=diff(L,z)%求L对:的偏导数 输出结果Lz=x*y+1amda*(2*y+2*x) >Llamda=diff(L,lamda)%求L对1的偏导数 输出结果Llamda=2*x*y+2*y*2+2*2*x-a^2 >》[1amda0x0y0z0]=solve(Lx,Ly,Lz,Llamda)%解方程组,求可能的极值点输出结 果 lamda0 -1/24*6(1/2)*a 1/24*6(1/2)*a x0= 1/6*6(1/2)*a -1/6*6(1/2)粗 w0= 1/6*6(1/2)*短 -1/6*6(1/2)*a z0= 1/6*6(1/2)*a -1/6*6^(1/2)*短 上述结果说明,当x=y=:-时,长方体的体积最大 0
5 例 5 求表面积为 2 a 而体积最大的长方体的体积. 解 设长方体的三棱长分别为 x , y , z ,则问题就是在条件 2 ( , , ) 2 2 2 x y z xy yz zx a = + + − 下,求函数 V xyz x y z = ( 0, 0, 0) 的最大值. 解 相应的 Matlab 程序为 >> syms x y z lamda a >> L=x*y*z+lamda*(2*x*y+2*y*z+2*z*x-a^2); %定义拉格朗日函数 >> Lx=diff(L,x) %求 L 对 x 的偏导数 输出结果 Lx =y*z+lamda*(2*y+2*z) >> Ly=diff(L,y) %求 L 对 y 的偏导数 输出结果 Ly =z*x+lamda*(2*x+2*z) >> Lz=diff(L,z) %求 L 对 z 的偏导数 输出结果 Lz =x*y+lamda*(2*y+2*x) >> Llamda=diff(L,lamda) %求 L 对 的偏导数 输出结果 Llamda =2*x*y+2*y*z+2*z*x-a^2 >> [lamda0 x0 y0 z0]=solve(Lx,Ly,Lz,Llamda) %解方程组,求可能的极值点输出结 果 lamda0 = -1/24*6^(1/2)*a 1/24*6^(1/2)*a x0 = 1/6*6^(1/2)*a -1/6*6^(1/2)*a y0 = 1/6*6^(1/2)*a -1/6*6^(1/2)*a z0 = 1/6*6^(1/2)*a -1/6*6^(1/2)*a 上述结果说明,当 6 6 x y z a = = = 时,长方体的体积最大. O E