Полином с заданными корнями или характеристический полином
Для векторов, r = roots(p) и p = poly(r) обратные функции друг друга, до ошибки округления, упорядоченного расположения и масштабирования.
Алгоритмы используются для poly и roots проиллюстрируйте интересный аспект современного подхода к расчету собственного значения. poly(A) генерирует характеристический полином A, и roots(poly(A)) находит корни того полинома, которые являются собственными значениями A. Но оба poly и roots используйте eig, который основан на преобразованиях подобия. Классический подход, который характеризует собственные значения как корни характеристического полинома, на самом деле инвертируется.
Если A n- n матрица, poly(A) производит коэффициенты p(1) через p(n+1), с p(1) =1 \in
Алгоритм
z = eig(A);
p = zeros(n+1,1);
p(1) = 1;
for j = 1:n
p(2:j+1) = p(2:j+1)-z(j)*p(1:j);
endЭта рекурсия выведена путем расширения продукта,
Возможно доказать тот poly(A) производит коэффициенты в характеристическом полиноме матрицы в ошибке округления A. Это верно даже если собственные значения A плохо обусловливаются. Традиционные алгоритмы для получения характеристического полинома не используют собственные значения и не имеют таких удовлетворительных числовых свойств.