Текст подпрограммы и версий ( Фортран ) amz0r.zip , amz0d.zip , amz0c.zip |
Тексты тестовых примеров ( Фортран ) tamz0r.zip , tamz0d.zip , tamz0c.zip |
Текст подпрограммы и версий ( Си ) amz0r_c.zip , amz0d_c.zip , amz0c_c.zip |
Тексты тестовых примеров ( Си ) tamz0r_c.zip , tamz0d_c.zip , tamz0c_c.zip |
Текст подпрограммы и версий ( Паскаль ) amz0r_p.zip , amz0e_p.zip , amz0c_p.zip |
Тексты тестовых примеров ( Паскаль ) tamz0r_p.zip , tamz0e_p.zip , tamz0c_p.zip |
Преобразование полной симметричной матрицы в компактную форму представления.
АМZ0R преобразует полную симметричную матрицу А порядка N в компактную форму представления. Тем самым минимизируется расход памяти, требуемой на хранение симметричной матрицы.
SUBROUTINE AMZ0R (A, N, B)
Параметры
A - | вещественный двумерный массив размера N на N, в котором задается симметричная матрица в полной форме; |
N - | порядок матрицы (тип: целый); |
B - | вещественный вектор длины N на (N + 1)/2, в котором запоминается исходная симметричная матрица в компактной форме представления. |
Версии
AMZ0D - | преобразование полной симметричной матрицы, заданной с удвоенной точностью, в компактную форму представления. |
AMZ0C - | преобразование полной эрмитовой матрицы в компактную форму представления. |
Вызываемые подпрограммы: нет.
Замечания по использованию
Вектор B может занимать то же место в памяти, что и массив А (это означает, что первый элемент вектора B может совпадать с первым элементом массива А). В подпрограмме АМZ0D параметры А и B должны иметь тип DОUВLЕ РRЕСISIОN. В подпрограмме АМZ0С параметры А и B должны иметь тип СОМРLЕХ. |
1. DIMENSION A(3, 3), B(6) DATA A /1.1, 2.1, 3.1, 2.1, 2.2, 3.2, 3.1, 3.2, 3.3/ N = 3 CALL AMZ0R (A, N, B) Результаты: B = ( 1.1, 2.1, 2.2, 3.1, 3.2, 3.3 ) 2. DIMENSION A(3, 3), B(6) COMPLEX A, B DATA A /(1.1, 0.), (2.1, 2.1), (3.1, 3.1), (2.1, - 2.1), (2.2, 0.), * (3.2, 3.2), (3.1, -3.1), (3.2, - 3.2), (3.3, 0.)/ N = 3 CALL AMZ0C (A, N, B) Результаты: B = ( (1.1, 0.), (2.1, 2.1), (2.2, 0.), (3.1, 3.1), (3.2, 3.2), (3.3, 0.) )