Полиномиальные корни
r = roots(
возвращает корни полиномов, представленных p
)p
как вектор-столбец. Входные p
- вектор, содержащий n+1
полиномиальные коэффициенты, начиная с коэффициента xn. Коэффициент 0
указывает промежуточную степень, которая не присутствует в уравнении. Для примера, p = [3 2 -2]
представляет полином .
roots
функция решает полиномиальные уравнения вида . Полиномиальные уравнения содержат одну переменную с неотрицательными экспонентами.
Используйте poly
функция для получения полинома из его корней: p = poly(r)
. poly
функция является обратной roots
функция.
Используйте fzero
функция для поиска корней нелинейных уравнений. В то время как roots
функция работает только с полиномами, fzero
функция более широко применима к различным типам уравнений.
roots
функция рассматривает p быть вектором с
n+1
элементы, представляющие n
характеристический полином I-й степени n
-by- n
матрица, A
. Корни полинома вычисляются путем вычисления собственных значений сопутствующей матрицы A
.
A = diag(ones(n-1,1),-1); A(1,:) = -p(2:n+1)./p(1); r = eig(A)
Полученные результаты являются точными собственными значениями матрицы в ошибке округления сопутствующей матрицы A
. Однако это не означает, что они являются точными корнями полинома, коэффициенты которого находятся в пределах округлой ошибки от тех, в p
.