Текст подпрограммы и версий ( Фортран ) afj0c.zip , afj0p.zip |
Тексты тестовых примеров ( Фортран ) tafj0c.zip , tafj0p.zip |
Текст подпрограммы и версий ( Си ) afj0c_c.zip , afj0p_c.zip |
Тексты тестовых примеров ( Си ) tafj0c_c.zip , tafj0p_c.zip |
Текст подпрограммы и версий ( Паскаль ) afj0c_p.zip , afj0z_p.zip |
Тексты тестовых примеров ( Паскаль ) tafj0c_p.zip , tafj0z_p.zip |
Приведение комплексной матрицы Якоби к симметрической трехдиагональной матрице преобразованием подобия.
Пусть Т - матрица Якоби, т.е. трехдиагональная матрица, у которой диагональные элементы являются вещественными, а произведения пар внедиагональных элементов все неотрицательны и равны нулю только тогда, когда оба сомножителя равны нулю.
Подпрограмма АFJ0С приводит матрицу Т к вещественной симметрической матрице Н преобразованием подобия Н = D - 1ТD , где D - комплексная диагональная матрица. При этом используются лишь внедиагональные элементы матрицы Т, т.к. диагональные элементы матриц Т и Н совпадают.
SUBROUTINE AFJ0C (BR, BI, CR, CI, N, IERR)
Параметры
BR, BI - | вещественные векторы длины N, в последних N - 1 компонентах которых содержатся соответственно вещественные и мнимые части наддиагональных элементов исходной матрицы Якоби; на выходе подпрограммы в последних N - 1 компонентах вектора ВR запоминаются вычисленные наддиагональные элементы трехдиагональной матрицы Н; |
CR, CI - | вещественные векторы длины N, в последних N - 1 компонентах которых содержатся соответственно вещественные и мнимые части поддиагональных элементов; на выходе подпрограммы в векторах СR и СI запоминаются соответственно вещественные и мнимые части вычисленных диагональных элементов диагональной матрицы D; |
N - | заданный порядок исходной матрицы Якоби (тип: целый); |
IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом: |
IЕRR=66 - | если не все попарные произведения соответствующих элементов побочных диагоналей исходной матрицы неотрицательны; |
IЕRR=67 - | если имеется равное нулю произведение соответствующих элементов побочных диагоналей, причем сомножители равны нулю неодновременно; |
IЕRR=68 - | если матрица Н получена, но матрица преобразования D не вычислена, т.к. она или обратная к ней матрица алгоритмически вырождена. |
Версии
AFJ0P - | приведение комплексной матрицы Якоби, заданной с двойной точностью, к вещественной симметрической трехдиагональной матрице преобразованием подобия. |
Вызываемые подпрограммы
UTAF12 - | подпрограмма выдачи диагностических сообщений при работе подпрограмм АFJ0С и АFJ0Р. |
Замечания по использованию
В подпрограмме АFJ0Р параметры ВR, ВI, СR, СI должны иметь тип DОUВLЕ РRЕСISIОN. |
DIMENSION BR(4), BI(4), CR(4), CI(4) DATA BR /2*0., 1., -4./ DATA CI /0., 1., 8., 0./ DATA BI /0., -1., -1., 0./ DATA CR /0., 0., 8., -4./ N = 4 CALL AFJ0C (BR, BI, CR, CI, N, IERR) Результаты: BR = (0., 1., 4., 4.), CR = (1., 0., -2., 2.), CI = (0., 1., 2., -2.), IERR = 0