Умножение на плоское вращение
21. Рассмотрим теперь сложную операцию, которую определим следующим образом. Даны два числа
с плавающей запятой и матрица А, имеющая стандартные элементы также с плавающей запятой; вычисляем приближенное вращение
в плоскости
и затем вычисляем
Для простоты записи рассмотрим сначала вычисление
где а — вектор. Изменяются лишь те два элемента а, которые находятся в позициях
Если мы напишем
то
Мы можем выразить это в виде
Используя оценки для
и записывая
имеем
и опять множитель
максимально возможный. Заметим, что это означает, что если
очень малы по отношению к некоторым другим компонентам, то
очень мало. Мы найдем, что это неверно для вычислений с фиксированной запятой. Из (21.3) и соотношения
получаем
Это соотношение важно для последующего анализа.
Рассмотрение (20.11) и (21.5) показывает, что половина ошибки происходит от ошибок, сделанных при вычислении
а другая половина — от ошибок, сделанных при умножении на вычисленную
Если вектор а есть вектор
, из которого были получены элементы
то на практике обычно не вычисляют
и вместо этого
компоненту берут равной
компоненту — равной нулю. Выражение, определяющее
компоненту, будет
вычислено при нахождении
Два элемента
поэтому суть
и нуль, и легко может быть проверено, что оценка (21.5) вполне пригодна в этом случае. Поэтому не стоит беспокоиться о специальном рассмотрении вектора х.
Наш результат немедленно распространяется на вычисление
где А есть
-матрица. Все
столбцов
преобразуются независимо, и мы имеем
где
нулевая матрица, за исключением
строк, и
Заметим, что это оценка для
а не для
Квадраты норм
и 7-й строк заменяют
в нашем анализе в случае вектора. Оценка (21.8) пригодна даже тогда, когда один из столбцов А является нашим вектором х и преобразуется специально.