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

上传人:b****8 文档编号:9301294 上传时间:2023-02-04 格式:DOCX 页数:12 大小:688.54KB
下载 相关 举报
MATLAB多元函数导数求极值或最优值.docx_第1页
第1页 / 共12页
MATLAB多元函数导数求极值或最优值.docx_第2页
第2页 / 共12页
MATLAB多元函数导数求极值或最优值.docx_第3页
第3页 / 共12页
MATLAB多元函数导数求极值或最优值.docx_第4页
第4页 / 共12页
MATLAB多元函数导数求极值或最优值.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

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

《MATLAB多元函数导数求极值或最优值.docx》由会员分享,可在线阅读,更多相关《MATLAB多元函数导数求极值或最优值.docx(12页珍藏版)》请在冰豆网上搜索。

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

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

实验六多元函数的极值

【实验目的】

1.多元函数偏导数的求法。

2.多元函数自由极值的求法

3.多元函数条件极值的求法•

4.学习掌握MATLAB软件有关的命令。

【实验内容】

42

求函数zx8xy2y3的极值点和极值

【实验准备】

1.计算多元函数的自由极值

对于多元函数的自由极值问题,根据多元函数极值的必要和充分条件,可分为以下几个步

骤:

步骤1.定义多元函数zf(x,y)

步骤2.求解正规方程fx(x,y)0,fy(x,y)0,得到驻点

2

如果ACB0,则该驻点不是极值点.

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=xA4-8*x*y+2*yA2-3;

>>diff(z,x)

>>diff(z,y)

结果为

ans=4*xA3-8*y

ans=-8*x+4*y

即一z4x38y,—z8x4y.再求解正规方程,求得各驻点的坐标。

一般方程组的符

xy

号解用solve命令,当方程组不存在符号解时,solve将给出数值解。

求解正规方程的

MATLAB代码为:

>>clear;

>>[x,y]=solve('4*xA3-8*y=0','-8*x+4*y=0',‘x','y')

结果有三个驻点,分别是P(-2,-4),Q(0,0),R(2,4).下面再求判别式中的二阶偏导数:

>>clear;symsxy;

>>z=xA4-8*x*y+2*yA2-3;

>>A=diff(z,x,2)

>>B=diff(diff(z,x),y)

>>C=diff(z,y,2)

结果为

A=2*xA2

B=-8

C=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.A4-8*X.*Y+2*Y.A2-3;

>>mesh(X,Y,Z)

>>xlabel('x'),ylabel('y'),zlabel('z')

结果如图6.1

500

0

^500

5

图6.1函数曲面图

可在图6.1种不容易观测极值点与鞍点,这是因为z的取值范围为[-500,100],是一幅远景图

局部信息丢失较多,观测不到图像细节•可以通过画等值线来观测极值.

>>contour(X,丫,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函数

L(x,y)xy(xy1)

求Lagrange函数的自由极值.先求L关于x,y,的一阶偏导数

>>clear;symsxyk

>>l=x*y+k*(x+y-1);

>>diff(l,x)

>>diff(l,y)

>>diff(l,k)

得丄y,丄x,—xy1,再解正规方程

xy

>>clear;symsxyk

>>[x,y,k]=solve('y+k=0','x+k=0','x+y-仁O','x','y','k')

111

得x-,y—,—,进过判断此点为函数的极大值点,此时函数达到最大值.

222

22

练习3抛物面zxy被平面xyz1截成一个椭圆,求这个椭圆到原点的最

长与最短距离.

这个问题实际上就是求函数

222

f(x,y,z)xyz

在条件zx2y2及xyz1下的最大值和最小值问题构造Lagrange函数

22222

L(x,y,z)xyz(xyz)(xyz1)

求Lagrange函数的自由极值.先求L关于x,y,z,,的一阶偏导数

>>clear;symsxyzuv

>>l=xA2+yA2+zA2+u*(xA2+yA2-z)+v*(x+y+z-1);

>>diff(l,x)

>>diff(l,y)

>>diff(l,z)

>>diff(l,u)

>>diff(l,v)

再解正规方程

>>clear;

从而存在最大值与最小值),故由

1.313

f(,,2,3.)95...3

22

求得的两个函数值,可得椭圆到原点的最长距离为953,最短距离为953。

2222

练习4求函数zxy4x2y7在上半圆xy16,y0上的最大值和

最小值。

首先画出等高线进行观测,相应的MATLAB程序代码为:

>>clear;

>>x=-4:

0.1:

4;y=-4:

0.1:

4;

>>[X,Y]=meshgrid(x,y);

>>Z=X.A2+Y.A2-4*X-2*Y+7;

>>contour(X,Y,Z,100)

>>xlabel('x'),ylabel('y')

结果如图6.3

图6.35等值线

4

2

yo

-2

(2,1)在该点处汉书趣的最

观测图6.3可看出,在区域D内部有唯一的驻点,大约位于

小值。

在圆弧与直线的交点处取得最大值,大约位于(4,2)。

下面通过计算加以验证。

求函数在区域D内的驻点,计算相应的函数值。

求z关于x,y的偏导数

>>clear;symsxy;

>>z=xA2+yA2-4*x-2*y+7;

>>diff(z,x)

>>diff(z,y)

结果得—2x4,—2y2,解正规方程

xy

>>clear;[x,y]=solve('2*x-4=0','2*y-2=0','x','y')

得驻点为(2,1),相应的函数值为2。

求函数在直线边界y0,4x4上的最大值和最小值。

将y0代入原函数,则二

元函数变为一元函数

2

zx4x7,4x4.

首先观测此函数图形,相应的MATLAB程序代码为:

>>x=-4:

0.01:

4;y=x.A2-4*x+7;

>>plot(x,y);

>>xlabel('x'),ylabel('z')

40

35

30

25

15

10

5

0

图6.4函数图

0

x

z20

结果如图6.4所示

由图6.4可看出,当x4时函数取得最大值,x2时函数取得最小值。

下面用计算

验证。

对函数求导

>>clear;symsx;

>>z=xA2-4*x+7;diff(z,x)

dz

得Z-2x4,可知驻点为x2,而边界点为x4,计算着三个点上的函数值可得当

dx

x4时函数取得最大值39,x2时函数取得最小值3。

22

求函数在圆弧边界线上xy16,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所示

40r11r

35--

30--

25-/-

z

20--

15-・

10--

5£c11Ec

00.511.522.533.5

t

图6.5函数图

由图6.5可看出,当t0.5时函数取得最小值,x时函数取得最大值。

下面用计

算验证。

对函数求导

>>clear;symst;

>>z=-16*cos(t)-8*sin(t)+23;diff(z,t)

18sint

8cost,解正规方程

dt

>>clear;

>>t=solve(

'16*sin(t)-8*cos(t)=0'

't')

>>numeric(t)

%求岀t的数值

得tarctan1

2

0,4636,边界点为

t0,

,计算着三个点上的函数值可得当

t0.4636时

函数取得最小值

0.5111,t,(x

4,y

0)时函数取得最小值39。

综上所述,在点(2,1)处函数取得最小值2,在点(-4,0)处函数取得最大值39

【练习与思考】

1.

求zx4

4y

4xy

1的极值,并对图形进行观测。

2.

求函数fx,

y

2x

2y2在圆周x2y21的最大值和最小值。

3.

2

在球面x

2

y

2z

1求出与点(3,1,-1)距离最近和最远点。

4.

求函数f(x,y,z)x

22

2y3z在平面xyz1与柱面xy1的交线上

的最大值。

5.

求函数z

x2

y2在三条直线x1,y1,xy1所围区域上的最大值和最小

值。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1