Общие замечания о явно заданных полиномах
7. Очевидно, что для расположения типа
необходимо вычислять форму Фробениуса, используя арифметику с высокой точностью, если мы хотим, чтобы ее собственные значения были близки к собственным значениям исходной матрицы, из которой она получена. Это верно независимо от использованного метода. Далее, так как ошибки при вычислении
соответствуют возмущениям коэффициентов, определяемым (2.6) и (2.7), вычисление
нужно производить с той же высокой точностью.
Интересно, например, заметить, что вычисленные значения
для расположения (i) § 5 обычно не будут иметь ни одной правильной значащей цифры при значениях z в окрестности
если только не используется арифметика с высокой точностью. Для иллюстрации рассмотрим вычисление
при
с использованием 10 десятичных знаков в арифметике с плавающей запятой. На втором шаге схемы Горнера вычисляем
Точное значение равно
, но если мы используем только 10 цифр, его надо округлить до —189,9965436. Даже если больше никаких других ошибок не будет сделано в дальнейшем, окончательная
ошибка, вызванная этим округлением, будет равна
Если мы для краткости напишем
точное значение
будет равно
и оно лежит между
т. е. между (4,2) 1014 и (8,4)
. Наша первая ошибка округления меняет вычисленное значение на величину, значительно превосходящую точное значение!
В окрестности плохо обусловленных корней вычисленные значения
соответствующие монотонной последовательности z, могут быть совсем немонотонными.
Таблица 2 (см. скан)
Это иллюстрируется в табл. 2, где приводятся вычисленные значения полинома
для значений z в окрестности 10. Включение члена
в последние четыре значения z было необходимо для того, чтобы ошибки округления были типичными, ибо иначе z оканчивалось бы большим количеством нулей. Значения полинома вычислялись по его точному явному представлению с использованием арифметики с плавающей запятой с мантиссой в 46 двоичных знаков. (Мы не использовали
, так как при выбранном числе значащих цифр этот полином не может быть записан точно.)
Для значений z от 10 и приблизительно до
все вычисленные значения порядка единицы по абсолютной величине и никак не связаны с точными значениями. Это происходит потому, что вычисленные значения полностью определяются ошибками округления, которые, как мы видели в (2.13), эквивалентны возмущениям коэффициентов
порядка вплоть до
Для значений z, более удаленных от 10, мы получаем несколько правильных значащих цифр. Действительно, если
порядка
то, вообще говоря, вычисленное значение
имеет приблизительно 20 — к правильных значащих цифр, хотя, конечно, исключительно благоприятное округление может дать значительно лучшее значение. Трудно ожидать, что какой-либо итерационный метод, основанный на значениях, вычисленных по явно заданному полиному с использованием
-значной мантиссы, выделит нуль при
с ошибкой, меньшей