Текст подпрограммы и версий ( Фортран ) aeh2r.zip , aeh2d.zip |
Тексты тестовых примеров ( Фортран ) taeh2r.zip , taeh2d.zip |
Текст подпрограммы и версий ( Си ) aeh2r_c.zip , aeh2d_c.zip |
Тексты тестовых примеров ( Си ) taeh2r_c.zip , taeh2d_c.zip |
Текст подпрограммы и версий ( Паскаль ) aeh2r_p.zip , aeh2e_p.zip |
Тексты тестовых примеров ( Паскаль ) taeh2r_p.zip , taeh2e_p.zip |
Вычисление всех собственных значений вещественной симметричной матрицы QL - алгоритмом со сдвигом.
Исходная матрица приводится ортогональными преобразованиями к трехдиагональной симметрической форме, используемой для вычисления собственных значений.
Дж.Х.Уилкинсон, Алгебраическая проблема собственных значений, "Наука", М., 1970.
SUBROUTINE AEH2R (N, A, EV, RAB, IERR)
Параметры
N - | порядок исходной матрицы (тип: целый); |
A - | вещественный двумерный массив размерности N на N, содержащий исходную матрицу; |
EV - | вещественный одномерный массив размерности N, содержащий вычисленные собственные значения в возрастающем порядке; |
RAB - | вещественный одномерный массив размерности 2 на N, используемый как рабочий; |
IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы. Значение IЕRR полагается равным номеру собственного значения, для вычисления которого потребовалось более 30 итераций, при этом собственные значения с индексами 1, 2, ..., IЕRR - 1 вычислены правильно и расположены в возрастающем порядке, но они не обязательно являются самыми меньшими из всех N собственных значений. |
Версии
AEH2D - | вычисление всех собственных значений вещественной симметрической матрицы с повышенной точностью. Массивы А, ЕV, RАВ имеют тип DОUВLЕ РRЕСISIОN. |
Вызываемые подпрограммы
UTAE10 - | подпрограмма выдачи диагностических сообщений при работе подпрограмм АЕН2R и АЕН2D. |
Замечания по использованию
Подпрограммы АЕН2R(D) изменяют исходную информацию: сохраняется только полный верхний треугольник симметрической матрицы, в нижнем треугольнике размещается информация об ортогональных преобразованиях. | |
Подпрограмма АЕH2R использует служебные подпрограммы AER18R, AER20R. Подпрограмма АЕH2D использует служебные подпрограммы AER18D, AER20D. |
DIMENSION A(4, 4), EV(4), RAB(8) DATA A /1., 0.42, 0.54, 0.66, 0.42, 1., 0.32, 0.44, 0.54, 0.32, 1., * 0.22, 0.66, 0.44, 0.22, 1./ N = 4 CALL AEH2R (N, A, EV, RAB, IERR) Результаты: EV(1) = 0.2422607 , EV(2) = 0.6382838 , EV(3) = 0.7667067 , EV(4) = 2.3227488 ; IERR = 0