Текст подпрограммы и версий ( Фортран )
amm4r.zip , amm4d.zip , amm4c.zip
Тексты тестовых примеров ( Фортран )
tamm4r.zip , tamm4d.zip , tamm4c.zip
Текст подпрограммы и версий ( Си )
amm4r_c.zip , amm4d_c.zip , amm4c_c.zip
Тексты тестовых примеров ( Си )
tamm4r_c.zip , tamm4d_c.zip , tamm4c_c.zip
Текст подпрограммы и версий ( Паскаль )
amm4r_p.zip , amm4e_p.zip , amm4c_p.zip
Тексты тестовых примеров ( Паскаль )
tamm4r_p.zip , tamm4e_p.zip , tamm4c_p.zip

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

Назначение

Умножение прямоугольной матрицы на ленточную матрицу, заданную в компактной форме.

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

АММ4R вычисляет произведение прямоугольной матрицы А размера N*М на ленточную матрицу B порядка М с МLВ нижними и МUВ верхними ко - диагоналями. Матрица B задается в компактной форме представления. Результатом этого произведения является прямоугольная матрица C размера N*М.

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

    SUBROUTINE  AMM4R (A, N, M, B, MLB, MUB, C) 

Параметры

A - вещественный двумерный массив размера N*М, в котором задается матрица A;
N - заданное число строк матрицы А (тип: целый);
M - заданное число столбцов матрицы А (тип: целый);
B - вещественный двумерный массив размера М * (МLВ + МUВ + 1), в котором задается ленточная матрица B в компактной форме;
MLB - заданное число нижних ко - диагоналей матрицы B (тип: целый);
MUB - заданное число верхних ко - диагоналей матрицы B (тип: целый);
C - вещественный двумерный массив размера N*M, в котором запоминается матрица произведения.

Версии

AMM4D - умножение с повышенной точностью прямоугольной матрицы на ленточную матрицу, заданную в компактной форме.
AMM4C - умножение прямоугольной комплексной матрицы на ленточную комплексную матрицу, заданную в компактной форме.

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

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

 

В подпрограмме АММ4D параметры А, B и C должны иметь тип DОUВLЕ РRЕСISIОN.

В подпрограмме AMM4C параметры А, B и С должны иметь тип СОМРLЕХ.

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

          DIMENSION  A(3, 5), B(5, 4), C(3, 5)
          DATA  A /15*1.0/
          DATA  B /2*0.0, 3*1.0, 0.0, 13*1.0, 0.0/
          N = 3
          M = 5
          MLB = 2
          MUB = 1
          CALL  AMM4R (A, N, M, B, MLB, MUB, C)

Результаты:

                    |  3.   4.   4.   3.   2.  |
         C  =    |  3.   4.   4.   3.   2.  |
                    |  3.   4.   4.   3.   2.  |