|
Текст подпрограммы и версий ( Фортран ) afh4c.zip , afh4p.zip |
Тексты тестовых примеров ( Фортран ) tafh4c.zip , tafh4p.zip |
|
Текст подпрограммы и версий ( Си ) afh4c_c.zip , afh4p_c.zip |
Тексты тестовых примеров ( Си ) tafh4c_c.zip , tafh4p_c.zip |
|
Текст подпрограммы и версий ( Паскаль ) afh4c_p.zip , afh4z_p.zip |
Тексты тестовых примеров ( Паскаль ) tafh4c_p.zip , tafh4z_p.zip |
Приведение комплексной эрмитовой матрицы к симметрической трехдиагональной матрице унитарными преобразованиями подобия.
Подпрограмма АFН4С реализует алгоритм приведения эрмитовой матрицы А унитарными преобразованиями к симметрической трехдиагональной форме F = V*Q*АQV, где Q - произведение унитарных эрмитовых матриц, а V - унитарная диагональная матрица.
Мartin R.S., Reinsch С. and Wilkinson J.Н., Нousholder's Тridiagonalization of a Symmetric Мatrix, Numeriche Mатнемаtic, 11, 181-195, 1968.
SUBROUTINE AFH4C (N, AR, AI, D, E, RAB)
Параметры
| N - | порядок исходной матрицы (тип: целый); |
| AR, AI - | вещественные двумерные массивы размера N*N, содержащие соответственно действительную и мнимую части исходной комплексной эрмитовой матрицы; в результате работы подпрограммы в строгом нижнем треугольнике массива АI в последовательных строках запоминаются векторы, порождающие матрицу преобразования Q; |
| D - | вещественный вектор длины N, содержащий диагональные элементы вещественной симметрической трехдиагональной матрицы; |
| E - | вещественный вектор длины N, содержащий в последних N - 1 компонентах поддиагональные элементы симметрической трехдиагональной матрицы; первый элемент Е приравнивается к нулю; |
| RAB - | вещественный вектор длины 2*N, содержащий диагональную матрицу преобразования V. |
Версии
| AFH4P - | приведение комплексной эрмитовой матрицы, заданной с удвоенной точностью, к симметрической трехдиагональной матрице унитарными преобразованиями подобия. |
Вызываемые подпрограммы: нет
Замечания по использованию
|
Исходные матрицы АR, АI можно задавать нижними треугольниками. Подпрограмма АFН4С сохраняет полный верхний треугольник массива АR и строгий верхний треугольник массива АI, в остальных компонентах этих массивов помещается информация об унитарных преобразованиях. В подпрограмме АFН4Р массивы АR, АI, Е, D и RАВ имееют тип DОUВLЕ РRЕСISIОN. |
DIMENSION AR(4, 4), AI(4, 4), D(4), E(4), RAB(8)
DATA AR /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./,
* AI /16*0./
N = 4
CALL AFH4C (N, AR, AI, D, E, RAB)
Результаты:
| 1.0000 0.4200 0.5400 0.6600 |
AR = | 0.1758 1.0000 0.3200 0.4400 |
| 0.4454 0.5819 1.0000 0.2200 |
| 0.6600 0.4400 1.0432 1.0000 |
| 0.0 0.0 0.0 0.0 |
AI = | 0.0 0.1243 0.0 0.0 |
| 0.0 0.0 0.5181 0.0 |
| 0.0 0.0 0.0 0.9267 |
| 0.667054 |
D = | 0.650088 |
| 1.682857 |
| 1.000000 |
| 0.000000 |
E = | 0.087921 |
| 0.461386 |
| 0.823365 |