Текст подпрограммы и версий ( Фортран ) am17r.zip , am17d.zip , am17c.zip |
Тексты тестовых примеров ( Фортран ) tam17r.zip , tam17d.zip , tam17c.zip |
Текст подпрограммы и версий ( Паскаль ) am17r_p.zip , am17e_p.zip , am17c_p.zip |
Тексты тестовых примеров ( Паскаль ) tam17r_p.zip , tam17e_p.zip , tam17c_p.zip |
Преобразование вектора последовательностью матриц отражения, упакованных под главной диагональю (включительно) прямоугольной матрицы размера N на М (N ≥ М).
Подпрограмма АМ17R вычисляет произведение
QМ QМ-1 ... Q1В ,
где Q1, Q2,..., QМ - матрицы отражения размера N * N, B - заданный вектоp длины N. Матpицы отpажения Qi имеют вид
Qi = Е - Wi WiН ,
где Е - единичная матрица размера N * N,
Wi - вектор длины N, первые
i - 1 компонент которого равны нулю.
Ненулевые компоненты векторов
Wi, порождающих матрицы
Qi, задаются в столбцах под главной
диагональю (включительно) прямоугольной матрицы размера N * М
(N ≥ М), т.е.
Wi = ( 0, 0, ... , 0, ai i, ai+1 i, ... , aN i )T .
Данная упаковка последовательности матриц отражения получается, например, в результате работы подпрограмм, реализующих приведение прямоугольной матрицы А размера N * М (N ≥ М) к верхнему треугольному виду (АFР2R) или к верхнему двухдиагональному виду (АFР4R) методом отражений.
SUBROUTINE AM17R (A, N, M, B)
Параметры
A - | вещественный двумерный массив размера N * М, в столбцах которого в упакованном виде хранится информация о матрицах отражения; |
N, M - | число строк и столбцов матрицы А соответственно, N ≥ М (тип: целый); |
B - | вещественный одномерный массив длины N, в котором задается исходный вектор; в результате работы подпрограммы в массиве B запоминается преобразованный вектор QМ ... Q2 Q1 В. |
Версии
AM17D - | преобразование вектора последовательностью матриц отражения, упакованных под главной диагональю (включительно) прямоугольной матрицы размера N на М (N ≥ М), с повышенной точностью. |
AM17C - | преобразование комплексного вектора последовательностью комплексных матриц отражения, упакованных под главной диагональю (включительно) прямоугольной матрицы размера N на М (N ≥ М). |
Вызываемые подпрограммы: нет.
Замечания по использованию
1. |
В подпрограмме АМ17D параметры А и B имеют тип DОUВLЕ РRЕСISIОN. | |
2. | В подпрограмме AM17C параметры А и B имеют тип СОМРLЕХ. |
DIMENSION A(5, 4), B(5), T(5), IS(4) DATA A /1., 3., 0., - 1., 1., 2*3., - 2., 0., 2*1., - 5., 5*1., * 5., - 3., 1./ DATA B /1., - 2., 0., 3., - 1./ N = 5 M = 4 CALL AFP2R (A, N, M, T, IS) CALL AM17R (A, N, M, B) Результат: B = ( 1.80839, 2.35993, 0.20543, - 1.43105, 2.01751 )