下载此文档

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


文档分类:高等教育 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
实验多元函数的极值
【实验目的】
多元函数偏导数的求法。
多元函数自由极值的求法
多元函数条件极值的求法.
学****掌握MATLAB软件有关的命令。
【实验内容】
求函数的极值点和极值
【实验准备】

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

,得到驻点
,求出二阶偏导数
步骤4. 对于每一个驻点,计算判别式,如果,则该驻点是极值点,当为极小值, 为极大值;,如果,判别法失效,需进一步判断; 如果,则该驻点不是极值点.

设函数在有界区域上连续,则在上必定有最大值和最小值。求在上的最大值和最小值的一般步骤为:
步骤1. 计算在内所有驻点处的函数值;
步骤2. 计算在的各个边界线上的最大值和最小值;
步骤3. 将上述各函数值进行比较,最终确定出在内的最大值和最小值。

MATLAB中主要用diff求函数的偏导数,用jacobian求Jacobian矩阵。
diff(f,x,n) 求函数f关于自变量x的n阶导数。
jacobian(f,x) 求向量函数f关于自变量x(x也为向量)的jacobian矩阵。
可以用help diff, help jacobian查阅有关这些命令的详细信息
【实验方法与步骤】
练****1 ,y的偏导数
>>clear; syms x y;
>>z=x^4-8*x*y+2*y^2-3;
>>diff(z,x)
>>diff(z,y)
结果为
ans =4*x^3-8*y
ans =-8*x+4*y
即再求解正规方程,求得各驻点的坐标。一般方程组的符号解用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; syms x y;
>>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
B =-8
C =4
由判别法可知和都是函数的极小值点,而点Q(0,0)不是极值点,实际上,和是函数的最小值点。当然,我们可以通过画函数图形来观测极值点与鞍点。
>>clear;
>>x=-5::5; y=-5::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')

函数曲面图
,这是因为z的取值范围为[-500,100],是一幅远景图,局部信息丢失较多,观测不到图像

MATLAB多元函数导数求极值或最优值 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人hmjxds50
  • 文件大小426 KB
  • 时间2018-01-21