matlab中poly函数
时间: 2023-11-02 12:19:07 浏览: 133
在MATLAB中,`poly`函数用于计算给定根的多项式系数。其语法如下:
```
p = poly(r)
```
其中,`r`是一个包含多项式的根的向量,`p`是一个包含多项式系数的向量。例如,如果多项式的根为`r = [2, 4, 6]`,则`poly(r)`将返回多项式系数`[1, -12, 44, -48]`,表示多项式`p(x) = x^3 - 12x^2 + 44x - 48`。
`poly`函数还可以用于计算已知多项式的根的值。例如,如果多项式的系数为`c = [1, -5, 6]`,则`poly(c)`将返回根的向量`[2, 3]`,表示多项式的根为`x=2`和`x=3`。
需要注意的是,`poly`函数默认返回多项式系数的向量是按照从高次项到低次项的顺序排列的。如果想要按照从低次项到高次项的顺序排列,可以使用`flip`函数进行翻转。例如:
```
p = poly(r);
p = flip(p);
```
相关问题
matlab中poly函数的用法
poly函数在MATLAB中用于创建具有指定根的多项式或特征多项式。它有两种语法形式:
1. 使用指定的根创建多项式:
```matlab
p = poly(r)
```
这里,r是一个包含多项式的根的向量。poly函数将根r转换为多项式系数,并返回多项式的系数向量p。
2. 使用给定的特征值创建特征多项式:
```matlab
p = poly(A)
```
这里,A是一个方阵,poly函数将A的特征值转换为多项式系数,并返回多项式的系数向量p。
下面是两个poly函数的示例:
1. 使用指定的根创建多项式:
```matlab
r = [1, 2, 3]; % 根向量
p = poly(r); % 创建多项式
```
这里,r包含了多项式的根,poly函数将根转换为多项式系数,并将结果存储在p中。
2. 使用给定的特征值创建特征多项式:
```matlab
A = [1, 2; 3, 4]; % 方阵
p = poly(A); % 创建特征多项式
```
这里,A是一个方阵,poly函数将A的特征值转换为多项式系数,并将结果存储在p中。
matlab中的poly函数
### Matlab `poly` 函数详解
#### 功能描述
`poly` 函数用于计算具有指定根的多项式的系数,也可以用来求取矩阵的特征多项式。此功能对于控制系统设计、信号处理等领域尤为重要。
#### 语法结构
存在两种主要调用方式:
- 当参数为向量 r 时,`p = poly(r)` 返回一个以 r 的元素作为根的一元 n 次多项式的降幂排列系数数组 p[^2]。
- 如果输入的是方阵 A,则通过命令 `p = poly(A)` 可获得该矩阵对应的特征多项式的各项系数组成的行向量 p。
#### 示例代码
下面给出具体的例子来展示这两种情况下的应用:
当已知某个一维系统的零点位置时,可以通过如下方式构建其传递函数表达式:
```matlab
roots = [1 -2]; % 假设系统有两个实数根分别为1,-2
coefficients = poly(roots);
disp('The polynomial coefficients are:');
disp(coefficients);
```
而对于给定的状态空间模型来说,可以直接利用状态转移矩阵得到相应的特征方程:
```matlab
A = [0 1; -6 -5];
charPolyCoeffs = poly(A);
fprintf('Characteristic equation of matrix A is s^%d+', length(charPolyCoeffs)-1);
for i=length(charPolyCoeffs):-1:2,
fprintf('%gs^{%-d}+', charPolyCoeffs(i),length(charPolyCoeffs)-i+1 );
end;
fprintf('%g\n', charPolyCoeffs(end));
```
阅读全文
相关推荐















