多项式在MatLab中的表达
MatLab中的多项式是通过一维的向量去表示的
比如多项式:y=x^2+x+1
在MatLab中的表示即为p=[1 1 1]
注意这种表示方法和y为x的函数的表示方法之间的不同
在进行创建的时候要注意一维向量当中的第k个元素只是代表的多项式当中的第n-k+1次项的系数,因此当多项式的缺少某一项的系数时不能省略输入,要将这个系数输入为0
多项式的求根方法
对于多项式求根时使用roots函数
函数描述为:
roots - 多项式根
此 MATLAB 函数 以列向量的形式返回 p 表示的多项式的根。输入 p 是一个包含 n+1 多项式系数的向量,以 xn 系数开头。0 系数表示方程中不存在的中间幂。
比如如下代码:
syms x;
y=x^2+x+1;
roots(y)
结果为:
ans =
Empty sym: 0-by-1
而换一种输入方式时:
p=[1 1 1]
roots(p);
结果为:
ans =
-0.5000 + 0.8660i
-0.5000 - 0.8660i