已知y=a*x^3+b*x^2+c*x+d,其中a不等于0,(1)y的稳定点(一阶导数等于0)的个数有几种情况?举例说明,并由matlab画出其图形. (2)y的极值点有几种情况? 举例说明,并由matlab画出其图形.
时间: 2024-03-10 07:48:15 浏览: 130
数值积分与函数极值实验.rar_matlab 数值积分_matlab求导_数值积分_求导_求导 matlab
(1) 首先对 $y$ 求导得到:
$$
y'=3ax^2+2bx+c
$$
稳定点就是指一阶导数为 $0$ 的点,也就是满足 $y'=0$ 的点。将上式中的 $y'$ 替换为 $0$,我们可以得到一个二次方程:
$$
3ax^2+2bx+c=0
$$
由于 $a\neq0$,因此这个方程一定有解。根据二次方程的求根公式,我们可以得到这个方程的两个根,也就是稳定点的横坐标。因此,$y$ 的稳定点的个数有两种情况:
- 当二次方程有两个不同的实根时,$y$ 有两个稳定点;
- 当二次方程有两个相同的实根时,$y$ 有一个稳定点。
下面是一个 MATLAB 的例子程序:
```matlab
% 定义 y(x)
syms x a b c d
y = a*x^3 + b*x^2 + c*x + d;
% 对 y(x) 求导
dy = diff(y, x);
% 解方程 dy=0
sol = solve(dy==0, x);
% 输出稳定点的个数和横坐标
if length(sol) == 2
disp(['y(x)有两个稳定点,分别为:x1=', num2str(sol(1)), ', x2=', num2str(sol(2))]);
elseif length(sol) == 1
disp(['y(x)有一个稳定点,为:x=', num2str(sol(1))]);
end
% 绘制 y(x) 的图像
a_val = 1;
b_val = -2;
c_val = 3;
d_val = 4;
x_vals = -5:0.1:5;
y_vals = subs(y, [a,b,c,d], [a_val,b_val,c_val,d_val]);
plot(x_vals, y_vals);
xlabel('x');
ylabel('y');
title(['y(x) = ', char(y)]);
grid on;
```
这个程序可以计算 $y$ 的稳定点个数和横坐标,并绘制 $y$ 的图像。你可以将上述代码复制到 MATLAB 中运行,得到结果和图像。
(2) 稳定点是极值点的一种特殊情况,因此极值点的个数一定不小于稳定点的个数。对于一个三次函数 $y=a*x^3+b*x^2+c*x+d$,它的极值点个数有三种情况:
- 当 $a>0$ 时,$y$ 有一个极小值和一个极大值;
- 当 $a<0$ 时,$y$ 没有极小值和极大值;
- 当 $a=0$ 时,$y$ 的极值点就是 $y$ 的稳定点。
下面是一个 MATLAB 的例子程序:
```matlab
% 定义 y(x)
syms x a b c d
y = a*x^3 + b*x^2 + c*x + d;
% 对 y(x) 求导
dy = diff(y, x);
% 对 dy(x) 求导
ddy = diff(dy, x);
% 解方程 dy=0 和 ddy=0
sol = solve(dy==0, ddy==0, x);
% 输出极值点的个数和横坐标
if isempty(sol)
disp('y(x)没有极值点');
elseif length(sol) == 2
disp(['y(x)有一个极小值和一个极大值,分别为:x1=', num2str(sol(1)), ', x2=', num2str(sol(2))]);
end
% 绘制 y(x) 的图像
a_val = 1;
b_val = -2;
c_val = 3;
d_val = 4;
x_vals = -5:0.1:5;
y_vals = subs(y, [a,b,c,d], [a_val,b_val,c_val,d_val]);
plot(x_vals, y_vals);
xlabel('x');
ylabel('y');
title(['y(x) = ', char(y)]);
grid on;
```
这个程序可以计算 $y$ 的极值点个数和横坐标,并绘制 $y$ 的图像。你可以将上述代码复制到 MATLAB 中运行,得到结果和图像。
阅读全文