matlab roots函数
时间: 2023-11-19 19:06:45 浏览: 131
`roots` 函数是 MATLAB 中用来解多项式方程的函数。它的基本语法为:
```matlab
r = roots(p)
```
其中,`p` 是一个包含多项式系数的向量,`r` 是方程的根向量。
例如,要解多项式方程 `x^3 - 6x^2 + 11x - 6 = 0`,可以使用以下代码:
```matlab
p = [1, -6, 11, -6];
r = roots(p);
```
这个例子中,`p` 向量中的四个元素分别表示多项式中 $x^3$、$x^2$、$x$ 和常数项的系数。`roots` 函数将返回一个向量,其中包含了方程的三个根。在这个例子中,`r` 的值为 `[1, 2, 3]`,表示方程的三个根分别为 $x_1=1$、$x_2=2$ 和 $x_3=3$。
需要注意的是,`roots` 函数只能用来解多项式方程。如果需要解其他类型的方程,需要使用其他的 MATLAB 函数。
相关问题
matlab roots
`roots`是Matlab中的一个函数,用于求解多项式的根。它的语法为:
```matlab
r = roots(p)
```
其中,`p`是一个包含多项式系数的向量,从高次开始排列。例如,多项式 `3x^3 - 4x^2 + x + 2` 的系数向量为 `[3 -4 1 2]`。`r`是一个向量,包含多项式的所有实根和复根。
以下是一个求解多项式根的示例:
```matlab
% 求解多项式 x^3 - 6x^2 + 11x - 6 的根
p = [1 -6 11 -6];
r = roots(p)
```
输出结果为:
```
r =
1.0000
2.0000
3.0000
```
说明该多项式有三个实根,分别为1、2和3。
在matlab上实现roots函数、polyval函数求多项式解
要在Matlab上实现roots函数和polyval函数求多项式解,可以按照以下步骤操作:
1. 首先,定义一个多项式的系数向量,例如:
```
p = [1 -3 2];
```
这个向量表示的是 1 - 3x + 2x^2 这个多项式的系数。
2. 使用roots函数求解多项式的根,例如:
```
r = roots(p);
```
这个函数会返回一个向量,包含了多项式的所有根。
3. 使用polyval函数验证求得的根是否正确,例如:
```
y = polyval(p, r);
```
这个函数会使用多项式的系数向量p,计算出在根向量r处的多项式函数值。如果求得的根是正确的,则y向量中的元素应该都接近于0。
完整代码如下:
```
p = [1 -3 2];
r = roots(p);
y = polyval(p, r);
disp(r);
disp(y);
```
注意,这里只是演示了如何在Matlab上实现roots和polyval函数求解多项式的根,实际上这些函数已经在Matlab自带的库中,可以直接调用使用。
阅读全文