首页 MATLAB多元函数导数求极值或最优值

MATLAB多元函数导数求极值或最优值

举报
开通vip

MATLAB多元函数导数求极值或最优值精品资料欢迎下载实验六多元函数的极值【实验目的】1.多元函数偏导数的求法。2.多元函数自由极值的求法3.多元函数条件极值的求法.4.学习掌握MATLAB软件有关的命令。【实验内容】求函数zx48xy2y23的极值点和极值【实验准备】1.计算多元函数的自由极值对于多元函数的自由极值问题,根据多元函数极值的必要和充分条件,可分为以下几个步骤:步骤1.定义多元函数zf(x,y)步骤2.求解正规方程fx(x,y)0,fy(x,y)0,得到驻点步骤3.对于每一个驻点(x0,y0),求出二阶偏导数...

MATLAB多元函数导数求极值或最优值
精品资料欢迎下载实验六多元函数的极值【实验目的】1.多元函数偏导数的求法。2.多元函数自由极值的求法3.多元函数条件极值的求法.4.学习掌握MATLAB软件有关的命令。【实验 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 】求函数zx48xy2y23的极值点和极值【实验准备】1.计算多元函数的自由极值对于多元函数的自由极值问题,根据多元函数极值的必要和充分条件,可分为以下几个步骤:步骤1.定义多元函数zf(x,y)步骤2.求解正规方程fx(x,y)0,fy(x,y)0,得到驻点步骤3.对于每一个驻点(x0,y0),求出二阶偏导数A2z,B2z,C2z,x2xyy2步骤4.对于每一个驻点(x0,y0),计算判别式ACB2,如果ACB20,则该驻点是极值点,当A0为极小值,A0为极大值;,如果ACB20,判别法失效,需进一步判断;如果ACB20,则该驻点不是极值点.2.计算二元函数在区域D内的最大值和最小值设函数zf(x,y)在有界区域D上连续,则f(x,y)在D上必定有最大值和最小值。求f(x,y)在D上的最大值和最小值的一般步骤为:步骤1.计算f(x,y)在D内所有驻点处的函数值;步骤2.计算f(x,y)在D的各个边界线上的最大值和最小值;步骤3.将上述各函数值进行比较,最终确定出在D内的最大值和最小值。3.函数求偏导数的MATLAB命令精品资料欢迎下载MATLAB中主要用diff求函数的偏导数,用jacobian求Jacobian矩阵。diff(f,x,n)求函数f关于自变量x的n阶导数。jacobian(f,x)求向量函数f关于自变量x(x也为向量)的jacobian矩阵。可以用helpdiff,helpjacobian查阅有关这些命令的详细信息【实验方法与步骤】练习1求函数zx48xy2y23的极值点和极值.首先用diff命令求z关于x,y的偏导数>>clear;symsxy;>>z=x^4-8*x*y+2*y^2-3;>>diff(z,x)>>diff(z,y)结果为ans=4*x^3-8*yans=-8*x+4*y即z4x38y,z8x4.再求解正规方程,求得各驻点的坐标。一般方程组的符xyy号解用solve命令,当方程组不存在符号解时,solve将给出数值解。求解正规方程的MATLAB代码为:>>clear;>>[x,y]=solve('4*x^3-8*y=0','-8*x+4*y=0','x','y')结果有三个驻点,分别是P(-2,-4),Q(0,0),R(2,4).下面再求判别式中的二阶偏导数:clear;symsxy;>>z=x^4-8*x*y+2*y^2-3;>>A=diff(z,x,2)>>B=diff(diff(z,x),y)>>C=diff(z,y,2)结果为A=2*x^2=-8=4由判别法可知P(4,2)和Q(4,2)都是函数的极小值点,而点Q(0,0)不是极值点,实际上,P(4,2)和Q(4,2)是函数的最小值点。当然,我们可以通过画函数图形来观测极值点与鞍点。>>clear;>>x=-5:0.2:5;y=-5:0.2:5;>>[X,Y]=meshgrid(x,y);精品资料欢迎下载>>Z=X.^4-8*X.*Y+2*Y.^2-3;>>mesh(X,Y,Z)>>xlabel('x'),ylabel('y'),zlabel('z')结果如图6.1图6.1函数曲面图可在图6.1种不容易观测极值点与鞍点,这是因为z的取值范围为[-500,100],是一幅远景图,局部信息丢失较多,观测不到图像细节.可以通过画等值线来观测极值.>>contour(X,Y,Z,600)>>xlabel('x'),ylabel('y')结果如图6.2图6.2等值线图由图6.2可见,随着图形灰度的逐渐变浅,函数值逐渐减小,图形中有两个明显的极小值点P(4,2)和Q(4,2).根据提梯度与等高线之间的关系,梯度的方向是等高线的法方向,且指向函数增加的方向.由此可知,极值点应该有等高线环绕,而点Q(0,0)周围没有等高线环绕,不精品资料欢迎下载是极值点,是鞍点.练习2求函数zxy在条件xy1下的极值..构造Lagrange函数求Lagrange函数的自由极值.先求L(x,y)L关于x,xyy,(xy1)的一阶偏导数>>clear;symsxyk>>l=x*y+k*(x+y-1);>>diff(l,x)>>diff(l,y)>>diff(l,k)得Ly,Lx,Lxy1,再解正规方程xy>>clear;symsxyk>>[x,y,k]=solve('y+k=0','x+k=0','x+y-1=0','x','y','k')得x1,y1,1,进过判断,此点为函数的极大值点,此时函数达到最大值.222练习3抛物面zx2y2被平面xyz1截成一个椭圆,求这个椭圆到原点的最长与最短距离.这个问题实际上就是求函数f(x,y,z)x2y2z2在条件zx2y2及xyz1下的最大值和最小值问题.构造Lagrange函数L(x,y,z)x2y2z2(x2y2z)(xyz1)求Lagrange函数的自由极值.先求L关于x,y,z,,的一阶偏导数>>clear;symsxyzuv>>l=x^2+y^2+z^2+u*(x^2+y^2-z)+v*(x+y+z-1);>>diff(l,x)>>diff(l,y)>>diff(l,z)>>diff(l,u)>>diff(l,v)得L,L,L2x2x2y2y2zxyz精品资料欢迎下载Lx2y2z,Lxyz1再解正规方程>>clear;>>[x,y,z,u,v]=solve('2*x+2*x*u+v=0','2*y+2*y*u+v=0','2*z-u+v=0','x^2+y^2-z=0','x+y+z-1=0','x','y','z','u','v')得353,7113,xy133.332,z2上面就是Lagrange函数的稳定点,求所求的条件极值点必在其中取到。由于所求问题存在最大值与最小值(因为函数f在有界闭集{(,,):x2y2,xyz1},上连续,xyzz从而存在最大值与最小值),故由f(13,13,23.)95322求得的两个函数值,可得椭圆到原点的最长距离为953,最短距离为953。练习4求函数zx2y24x2y7在上半圆x2y216,y0上的最大值和最小值。首先画出等高线进行观测,相应的MATLAB程序代码为:>>clear;>>x=-4:0.1:4;y=-4:0.1:4;>>[X,Y]=meshgrid(x,y);>>Z=X.^2+Y.^2-4*X-2*Y+7;>>contour(X,Y,Z,100)>>xlabel('x'),ylabel('y')结果如图6.342y0-2-4-2024-4图6.3x等值线精品资料欢迎下载观测图6.3可看出,在区域D内部有唯一的驻点,大约位于(2,1)在该点处汉书趣的最小值。在圆弧与直线的交点处取得最大值,大约位于(4,2)。下面通过计算加以验证。求函数在区域D内的驻点,计算相应的函数值。求z关于x,y的偏导数>>clear;symsxy;>>z=x^2+y^2-4*x-2*y+7;>>diff(z,x)>>diff(z,y)结果得z2x4,z2y2,解正规方程xy>>clear;[x,y]=solve('2*x-4=0','2*y-2=0','x','y')得驻点为(2,1),相应的函数值为2。求函数在直线边界y0,4x4上的最大值和最小值。将y0代入原函数,则二元函数变为一元函数zx24x7,4x4.首先观测此函数图形,相应的MATLAB程序代码为:>>x=-4:0.01:4;y=x.^2-4*x+7;>>plot(x,y);>>xlabel('x'),ylabel('z')结果如图6.4所示4035302520151050-3-2-101234-4x图6.4函数图由图6.4可看出,当x4时函数取得最大值,x2时函数取得最小值。下面用计算验证。对函数求导>>clear;symsx;>>z=x^2-4*x+7;diff(z,x)得dz2x4,可知驻点为x2,而边界点为x4,计算着三个点上的函数值可得当dx4时函数取得最大值39,x2时函数取得最小值3。求函数在圆弧边界线上x2y216,y0的最大值和最小值。此边界线可用参数方程x4cost,y4sint,0t精品资料欢迎下载表示。则二元函数变为一元函数z16cost8sint23首先观测此函数图形,相应的MATLAB程序代码为:>>t=0:0.01*pi:pi;z=-16*cos(t)-8*sin(t)+23;>>plot(t,z);>>xlabel('t'),ylabel('z')结果如图6.5所示40353025z201510500.511.522.533.5t图6.5函数图由图6.5可看出,当t验证。对函数求导0.5时函数取得最小值,x时函数取得最大值。下面用计算>>clear;symst;>>z=-16*cos(t)-8*sin(t)+23;diff(z,t)得dz18sint8cost,解正规方程dt>>clear;>>t=solve('16*sin(t)-8*cos(t)=0','t')>>numeric(t)%求出t的数值得tarctan10,4636,边界点为t0,,计算着三个点上的函数值可得当t0.4636时2函数取得最小值0.5111,t,(x4,y0)时函数取得最小值39。综上所述,在点(2,1)处函数取得最小值2,在点(-4,0)处函数取得最大值39。【练习与思考】1.求zx4y44xy1的极值,并对图形进行观测。2.求函数fx,y3.在球面x2y24.求函数f(x,y,z)x2z22y2在圆周x2y21的最大值和最小值。1求出与点(3,1,-1)距离最近和最远点。2x2y3z在平面xyz1与柱面xy21的交线上的最大值。5.求函数zx2y2在三条直线x1,y1,xy1所围区域上的最大值和最小值。
本文档为【MATLAB多元函数导数求极值或最优值】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
is_090271
暂无简介~
格式:doc
大小:168KB
软件:Word
页数:12
分类:
上传时间:2021-12-31
浏览量:32