MATLAB——多元函数的极值

文章讲述了如何计算多元函数的自由极值和在特定区域内的最大值、最小值,利用MATLAB的diff命令求偏导数,并通过示例展示了二元函数的图形和极值点的判断过程。
摘要由CSDN通过智能技术生成

目录

计算多元函数的自由极值

计算二元函数在区域D内的最大值和最小值

函数求偏导数的MATLAB命令

例题如下


计算多元函数的自由极值

  1. 定义多元函数 Z=f(x,x)
  2. 求解正规方程fx(x,y)=0,fy(x,y)=0 得到驻点
  3. 对于每一个驻点(x0,y0),求二阶偏导 A={\color{Red} \frac{\partial^2z }{\partial x^2}}  B={\color{Red} \frac{\partial^2z }{\partial x \partial y}}  C={\color{Red} \frac{\partial^2z }{\partial y^2}}
  4. 对于每一个驻点(x0,y0),计算判别式AC-B2。若AC-B2>0,则该驻点是极值点。当A>0为极小值,A<0为极大值;若AC-B2=0,判别式失效,需要进一步判断。若AC-B2<0,则该驻点不是极值点。

计算二元函数在区域D内的最大值和最小值

设函数Z=f(x,y)在有界区域D上连续,则f(x,y)在D上必定有最大值和最小值。

求f(x,y)在D上的最大值和最小值的一般步骤为:

  1. 计算f(x,y)在D内所有驻点处的函数值、
  2. 计算f(x,y)在D的各个边界上的最大值和最小值
  3. 将上述函数值进行比较,最终确定出在D内的最大值和最小值

函数求偏导数的MATLAB命令

MATLAB中主要用diff求函数的偏导数

例题如下

clear;close;
x=linspace(-5,5,300);
y=x;
[X,Y]=meshgrid(x,y);
Z=X.^4-8*X.*Y+2*Y.^2-3;
mesh(X,Y,Z)

clear;close;
x=-1:0.1:1;
y=-1:0.1:1;
[X,Y]=meshgrid(x,y);
Z=X.^2-Y.^2;

clear;close;
[x,y]=meshgrid([-2:0.05:2],-2:0.05:2);
z1=x.^2-2*y^2;
z2=2*x-3*y;
mesh(x,y,z1);
hold on;
mesh(x,y,z2);
r=(abs(z1-z2)<=0.07);
zz=r.*z1;
yy=r.*y;
xx=r.*x;
plot(xx(r~=0),yy(r~=0),zz(r~=0),'.')

 

 

syms x y
x=linspace(-10,10,100);
y=x;
[X,Y]=meshgrid(x,y);
Z=X.^4+Y.^4-4*X.*Y+1;
contour(X,Y,Z,6000)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肉肉肉肉肉肉~丸子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值