Más contenido relacionado
03.第三章用Matlab求极值
- 1. 第 3章 用 MATLAB 求极值
灵活的运用 MATLAB 的计算功能,可以很容易地求得函数的极值。
3x 2 + 4 x + 4
例 3.6.1 求 y = 的极值
x2 + x + 1
解 首先建立函数关系:
syms s ↙
y=(3*x^2+4*x+4)/( x^2+x+1); ↙
然后求函数的驻点:
dy=diff(y); ↙
xz=solve(dy) ↙
xz=
[0] [-2]
知道函数有两个驻点 x 1 =0 和 x 2 =-2,考察函数在驻点处二阶导数的正负情况:
d2y=diff(y,2); ↙
z1=limit(d2y,x,0) ↙
z1=
-2
z2=limit(d2y,x,-2) ↙
z2=
2/9
于是知在 x 1 =0 处二阶导数的值为 z 1 =-2,小于 0,函数有极大值;在 x 2 =-2 处二阶导数的值
为 z 2 =2/9,大于 0,函数有极小值。如果需要,可顺便求出极值点处的函数值:
y 1 =limit(y,x,0) ↙
y1 =
4
y 2 =limit(y,x,-2) ↙
y2 =
8/3
事实上,如果知道了一个函数的图形,则它的极值情况和许多其它特性是一目了然的。 而借
助 MATLAB 的作图功能,我们很容易做到这一点。
例 3.6.2 画出上例中函数的图形
解 syms x ↙
y=(3*x^2+4*x+4)/( x^2+x+1); ↙得到如下图形
ezplot(y) ↙