Численный пример
28. Здесь мы даем простой пример реализации метода Гивенса, который специально построен для того, чтобы проиллюстрировать природу численной устойчивости процесса. Мы уже не раз старались подчеркнуть, что окончательная трехдиагональная матрица очень близка к матрице, которая могла бы быть получена применением к точных ортогональных преобразований, соответствующих последовательно вычисленным Мы не утверждаем, что трехдиагональная матрица близка к той матрице, которая могла бы быть получена при повсеместном точном вычислении, но этот факт несуществен, если только собственные значения и собственные векторы, полученные нами, близки к собственным значениям и собственным векторам матрицы
В табл. 4 сначала даем приведение к трехдиагональному виду матрицы пятого порядка, используя вычисления с фиксированной запятой и работая с пятью десятичными знаками. После получения нуля в позиции элементы в позициях в результате сокращения становятся очень малыми. Таким образом, эти элементы имеют большую относительную ошибку по сравнению с теми элементами, которые могли бы быть получены при точном вычислении. Следовательно, когда мы определяем вращение в плоскостях и углы будут сильно отличаться от значений, соответствующих точным вычислениям.
Мы подчеркнули это повторением вычислений с шестью десятичными знаками. Теперь элементы соответственно равны
по сравнению с прежними значениями
для -значного вычисления. Например, для вращения в плоскости имеем соответственно для обоих случаев. В результате обе трехдиагональные матрицы почти полностью отличаются друг от друга в последних строках и столбцах. Однако наш анализ ошибок показывает, что обе трехдиагональные матрицы должны иметь собственные значения, близкие к собственным значениям матрицы
В табл. 4 мы дали собственные значения всех этих матриц с 8 десятичными знаками и они подтверждают наше утверждение. Заметим, что в обоих случаях влияние ошибок округления, сделанных во всем приведении, на каждое собственное значение несущественно (меньше одной единицы последнего знака). На практике мы установили, что действительные ошибки всегда намного меньше, чем те верхние оценки, которые мы получили, и грубые оценки, учитывающие статистическое распределение.
Заметим, что мы действительно имеем значительную свободу в выборе углов вращения в плоскостях и Например, при осуществлении вращения в плоскости мы должны выбрать лишь так, чтобы они были точной парой с рабочей точностью и чтобы, например, в случае счета с шестью знаками выполнялось неравенство
Методы, которые мы описали, таковы, что очень точно соответствует формуле это самое простое, что можно сделать. Однако для вычисления одинаково хорошо подходило бы любое значение где
хотя такие значения соответствуют большому разбросу в элементах трехдиагональных матриц.
Если это показалось неожиданным, давайте вернемся к точным вычислениям и предположим, что произошло полное сокращение и во время исключения элемента элементы (2, 3), (2, 4), (2, 5) стали нулями. Теперь любые точные вращения в плоскостях и не изменяли бы эти три элемента и могли бы рассматриваться как приближенные преобразования Гивенса. Различные вращения дали бы различные трехдиагональные матрицы, но все они были бы подобны
Если в точном процессе происходит полное сокращение, то мы можем выбрать произвольными все знаки в соответствующих углах вращения.