Вычисляем
и записываем их соответственно на места
.
(iv) Вычисляем
и записываем их соответственно на места
.
Заметим, что для хранения информации о вращении у нас теперь не хватает места в позиции того элемента, который становится нулем, так как нужно разместить как
, так и
. Конечно, мы могли бы сохранить лишь один из них, так как другой можно получить, но это нецелесообразно, и если должна быть гарантирована численная устойчивость, нам нужно хранить меньший из них и помнить, который из двух запоминается!
51. Преобразования можно модифицировать таким же способом, как было описано в § 49. В этой модификации строки с
-й до
-й не изменяются на первых
шагах. Теперь r-й основной шаг таков.
Для каждого значения
от 1 до
:
(i) Вычисляем
(ii) Вычисляем
. Записываем х на место
.
(iii) Для каждого значения
и записываем их соответственно на места и
Так как каждая из матриц вращения имеет определитель, равный
то главный минор
порядка определяется после выполнения
основного шага
Будем называть триангуляризацию с помощью плоских вращений триангуляризацией Гивенса, независимо от того, организована ли она, как в § 50 или так, как мы только что описали.