Текст подпрограммы и версий ( Фортран )
ammlr.zip , ammld.zip
Тексты тестовых примеров ( Фортран )
tammlr.zip , tammld.zip
Текст подпрограммы и версий ( Си )
ammlr_c.zip , ammld_c.zip
Тексты тестовых примеров ( Си )
tammlr_c.zip , tammld_c.zip
Текст подпрограммы и версий ( Паскаль )
ammlr_p.zip , ammle_p.zip
Тексты тестовых примеров ( Паскаль )
tammlr_p.zip , tammle_p.zip

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

Назначение

Численное умножение обратной для нижней треугольной разреженной матрицы с единичной диагональю, заданной в формате RR (L) U, на прямоугольную разреженную матрицу, заданную в формате RR (C) U

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

Форматы RR (L) U и RR (C) U приведены в описаниях подпрограмм AMMKR и AMTSR .

Данная операция эквивалентна следующей:

                    X  =  U -TB , 

где B - прямоугольная разреженная матрица с NR строками и NC столбцами в формате RR (C) U и U - верхняя треугольная матрица порядка NR в формате RR (L) U.

Алгоритм, реализованный в подпрограмме AMMLR, приведен в описании подпрограммы AMMKR .

С.Писсанецки. Технология разреженных матриц. - М.: Мир, 1988

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

    SUBROUTINE  AMMLR ( IUT, JUT, UNT, IB, JB, BN, NR, NC, 
                                                 IX, JX, XN, P) 

Параметры

IUT, JUT, -       UNT   заданные портрет и ненулевые элементы матрицы UT в формате RR (L) U;
IB,JB,BN - заданные портрет и ненулевые элементы матрицы B в формате RR (C) U;
NR - заданный порядок матрицы UT и число строк матриц B и X (тип: целый);
NC - заданное число столбцов матриц B и X (тип: целый);
IX, JX - заданный портрет результирующей матрицы X в формате RR (C) U;
XN - вещественный одномерный массив, содержащий вычисленные ненулевые элементы матрицы X в соответствии с заданным ее портретом  IX и JX;
P - вещественный одномерный массив длины NC, используемый в подпрограмме в качестве рабочего

Версии:

AMMLD - численное умножение обратной для нижней треугольной разреженной матрицы с единичной диагональю, заданной в формате RR (L) U, на прямоугольную разреженную матрицу, заданную в формате RR (C) U, в режиме удвоенной точности; при этом параметры UNT, BN, XN и P должны иметь тип DOUBLE PRECISION

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

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

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

      DIMENSION  IUT(5), JUT(3), IB(5), JB(5), IX(5), JX(8),
     *                       IP(3), UNT(3), BN(5), XN(8)
      DATA  IUT /1, 1, 1, 2, 4/,
     *           JUT /2, 3, 1/,
     *           IB /1, 3, 4, 5, 6/,
     *           JB /3, 1, 2, 1, 3/
     *           UNT /1., 1., 1./,
     *           BN /1., 1., 1., 1., 1./,
     *           IX /1, 3, 4, 6, 9/,
     *           JX /3, 1, 2, 1, 2, 3, 1, 2/
      NR = 4
      NC = 3
      CALL  AMMLR (IUT, JUT, UNT, IB, JB, BN, NR, NC, IX, JX, XN, P)

Результаты:    XN  =  ( 1, 1, 1, 1, - 1, 0, - 2, 1 )