Текст подпрограммы и версий ( Фортран )
ama8r.zip , ama8d.zip
Тексты тестовых примеров ( Фортран )
tama8r.zip , tama8d.zip
Текст подпрограммы и версий ( Си )
ama8r_c.zip , ama8d_c.zip
Тексты тестовых примеров ( Си )
tama8r_c.zip , tama8d_c.zip
Текст подпрограммы и версий ( Паскаль )
ama8r_p.zip , ama8e_p.zip
Тексты тестовых примеров ( Паскаль )
tama8r_p.zip , tama8e_p.zip

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

Назначение

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

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

Описание формата RR (C) U приведено в описании подпрограммы AMTSR .

Пусть заданы прямоугольные разреженные матрицы A и B размеров N на M в формате RR (C) U и портрет матрицы C, равной A + B, также в формате RR (C) U, который может быть получен подпрограммой AMA7R на символическом этапе сложения. Подпрограмма AMA8R по этим исходным данным вычисляет ненулевые элементы матрицы C

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

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

    SUBROUTINE  AMA8R ( IA, JA, AN, IB, JB, BN, N, M, IC, JC, CN, X) 

Параметры

   IA, JA -
      AN  
заданные портрет и ненулевые элементы матрицы A в формате RR (C) U;
   IB, JB -
      BN  
заданные портрет и ненулевые элементы матрицы B в формате RR (C) U;
N - заданное число строк матриц A, B и C (тип: целый);
M - заданное число столбцов матриц A, B и C (тип: целый).
IC, JC - заданный портрет матрицы C = A + B в формате RR (C) U;
CN - вещественный одномерный массив, в котором формируются ненулевые элементы матрицы C согласно портрету  IC, JC;
X - вещественный массив длины M, используемый в подпрограмме в качестве рабочего

Версии:

AMA8D - численное сложение двух прямоугольных разреженных матриц, заданных в формате RR (C) U, в режиме удвоенной точности; при этом параметры AN, BN и CN должны быть описаны как DOUBLE PRECISION

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

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

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

      DIMENSION  IA(5), JA(10), AN(10), IB(5), JB(9),
     *                      BN(9), IC(5), JC(15), CN(15), X(6)
      DATA  IA /1, 3, 7, 9, 11/,
     *           JA /5, 3, 4, 3, 1, 5, 1, 6, 4, 2/,
     *           AN /- 1., 2., 3., 3., 4., 7., - 2., - 1., 1., 1./,
     *           IB /1, 4, 5, 8, 10/,
     *           JB /1, 6, 3, 5, 4, 2, 1, 2, 3/
     *           BN /1., 5., - 1., - 2., 2., 6., 4., - 1., 1./,
     *           IC /1, 5, 9, 13, 16/,
     *           JC /5, 3, 1, 6, 4, 3, 1, 5, 1, 6, 4, 2, 4, 2, 3/
      N = 4
      M = 6
      CALL  AMA8R (IA, JA, AN, IB, JB, BN, N, M, IC, JC, CN, X)

Результаты:

      CN = ( - 1, 1, 1, 5, 3, 3, 4, 5, 2, - 1, 2, 6, 1, 0, 1 )