Текст подпрограммы и версий ( Фортран ) amz1r.zip , amz1d.zip , amz1c.zip |
Тексты тестовых примеров ( Фортран ) tamz1r.zip , tamz1d.zip , tamz1c.zip |
Текст подпрограммы и версий ( Си ) amz1r_c.zip , amz1d_c.zip , amz1c_c.zip |
Тексты тестовых примеров ( Си ) tamz1r_c.zip , tamz1d_c.zip , tamz1c_c.zip |
Текст подпрограммы и версий ( Паскаль ) amz1r_p.zip , amz1e_p.zip , amz1c_p.zip |
Тексты тестовых примеров ( Паскаль ) tamz1r_p.zip , tamz1e_p.zip , tamz1c_p.zip |
Преобразование симметричной матрицы, заданной в компактной форме, в полную форму представления.
Симметричная матрица А порядка N, заданная в компактной форме, преобразуется в полную форму представления. Таким образом, АМZ1R выполняет действие, обратное по отношению к подпрограмме АМZ0R.
SUBROUTINE AMZ1R (A, N, B)
Параметры
A - | вещественный вектор длины N на (N + 1)/2, в котором задается симметричная матрица в компактной форме; |
N - | заданный порядок матрицы (тип: целый); |
B - | двумерный массив размера N на N, в котором запоминается исходная симметричная матрица в полной форме представления. |
Версии
AMZ1D - | преобразование симметричной матрицы, заданной в компактной форме с удвоенной точностью, в полную форму представления. |
AMZ1C - | преобразование эрмитовой матрицы, заданной в компактной форме, в полную форму представления. |
Вызываемые подпрограммы: нет.
Замечания по использованию
Двумерный массив B может занимать то же место в памяти, что и массив А (это означает, что первый элемент массива B может совпадать с первым элементом вектора А). В подпрограмме АМZ1D параметры А и B должны иметь тип DОUВLЕ РRЕСISIОN. В подпрограмме АМZ1С параметры А и B должны иметь тип СОМРLЕХ. |
1. DIMENSION A(6), B(3, 3) DATA A /1.1, 2.1, 2.2, 3.1, 3.2, 3.3/ N = 3 CALL AMZ1R (A, N, B) Результаты: B = ( 1.1, 2.1, 3.1, 2.1, 2.2, 3.2, 3.1, 3.2, 3.3 ) 2. DIMENSION A(6), B(3, 3) COMPLEX A, B DATA A /(1.1, 0.), (2.1, 2.1), (2.2, 0.), (3.1, 3.1), (3.2, 3.2), * (3.3, 0.)/ N = 3 CALL AMZ1C (A, N, B) Результаты: B = ( (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.) )