Текст подпрограммы и версий ( Фортран )
am18r.zip , am18d.zip , am18c.zip
Тексты тестовых примеров ( Фортран )
tam18r.zip , tam18d.zip , tam18c.zip
Текст подпрограммы и версий ( Си )
am18r_c.zip , am18d_c.zip , am18c_c.zip
Тексты тестовых примеров ( Си )
tam18r_c.zip , tam18d_c.zip , tam18c_c.zip
Текст подпрограммы и версий ( Паскаль )
am18r_p.zip , am18e_p.zip , am18c_p.zip
Тексты тестовых примеров ( Паскаль )
tam18r_p.zip , tam18e_p.zip , tam18c_p.zip

Подпрограмма:  AM18R

Назначение

Преобразование вектора последовательностью матриц отражения, упакованных над главной диагональю (включительно) прямоугольной матрицы размера N на М (N ≤ М).

Математическое описание

Подпрограмма АМ18R вычисляет произведение

          Q1 Q2 ... QN В  , 

где Q1, Q2,..., QN - матрицы отражения размера M * N,  B - заданный вектоp длины  M. Матpицы отpажения   Qi  имеют вид

          Qi  =  Е - Wi WiН  , 

где  Е - единичная матрица размера M * M, Wi - вектор длины  M, первые  i - 1 компонент которого равны нулю.
Ненулевые компоненты векторов  Wi,  порождающих матрицы  Qi,  задаются в строках над главной диагональю (включительно) прямоугольной матрицы A размера N * М (N ≤ М), т.е.

          Wi  =  ( 0, 0, ... , 0, ai i, ai i+1, ... , ai M )H  . 

Данная упаковка последовательности матриц отражения получается, например, в результате работы подпрограмм, реализующих приведение прямоугольной матрицы  А размера N * М (N ≤ М) к нижнему треугольному виду (АFР3R) или к нижнему двухдиагональному виду (АFР5R) методом отражений.

Использование

    SUBROUTINE  AM18R (A, N, M, B) 

Параметры

A - вещественный двумерный массив размера N * М, в котором в упакованном виде хранится информация о матрицах отражения;
N, M - число строк и столбцов матрицы  А соответственно, N ≤ М (тип: целый);
B - вещественный одномерный массив длины  М, в котором задается исходный вектор  B; в результате работы подпрограммы на месте  B запоминается преобразованный вектор Q1 Q2 ... QN В.

Версии

AM18D - преобразование вектора последовательностью матриц отражения, упакованных над главной диагональю (включительно) прямоугольной матрицы размера N * М (N ≤ М), с повышенной точностью.
AM18C - преобразование комплексного вектора последовательностью комплексных матриц отражения, упакованных над главной диагональю (включительно) прямоугольной матрицы размера N * М (N ≤ М).

Вызываемые подпрограммы: нет.

Замечания по использованию

  1. 

В подпрограмме АМ18D параметры  А и  B имеют тип DОUВLЕ РRЕСISIОN.

  2.  В подпрограмме AM18C параметры  А и  B имеют тип СОМРLЕХ.

Пример использования

       DIMENSION  A(5, 6), B(6), T(6), IS(5)
       DATA  A /1., 3., 0., 1., 2*3., - 2., 0., 1., 5., 2., 0., 5*1., 
     *                 2., 0., 1., - 1., 2*1., 2., 2*0., 2*1., 3., 2./
       DATA  B /1., 0., 2., - 1., 1., 0./
       N = 5
       M = 6
       CALL  AFP3R (A, N, M, T, IS)
       CALL  AM18R (A, N, M, B)

Результат:
       B  =  ( 0.04233, - 0.869395, 0.62655, 0.92835, - 1.28063, - 1.82974 )