Текст подпрограммы и версий ( Фортран ) ammmr.zip , ammmd.zip |
Тексты тестовых примеров ( Фортран ) tammmr.zip , tammmd.zip |
Текст подпрограммы и версий ( Си ) ammmr_c.zip , ammmd_c.zip |
Тексты тестовых примеров ( Си ) tammmr_c.zip , tammmd_c.zip |
Текст подпрограммы и версий ( Паскаль ) ammmr_p.zip , ammme_p.zip |
Тексты тестовых примеров ( Паскаль ) tammmr_p.zip , tammme_p.zip |
Умножение прямоугольной разреженной матрицы, заданной в формате RR (C) U, на диагональную матрицу
Описание формата RR (C) U приведено в описании подпрограммы AMTSR .
Подпрограмма AMMMR выполняет умножение прямоугольной разреженной матрицы A с NR строками и NC столбцами, заданной в формате RR (C) U, на диагональную матрицу D порядка NR. Ненулевые элементы результирующей матрицы B = A * D размещаются в массиве AN. Портрет матрицы B совпадает с портретом матрицы A
С.Писсанецки. Технология разреженных матриц. - М.: Мир, 1988
SUBROUTINE AMMMR ( IA, JA, AN, NR, NC, D)
Параметры
IA,JA,AN - | на входе: заданные портрет и ненулевые элементы матрицы A в формате RR (C) U; на выходе: AN содержит ненулевые элементы матрицы B, а содержимое массивов IA и JA не меняется и определяет портрет матрицы B; |
NR, NC - | заданные значения числа строк и столбцов матриц A (и B) соответственно (тип: целый); |
D - | вещественный одномерный массив NR, содержащий элементы диагональной матрицы D |
Версии
AMMMD - | умножение прямоугольной разреженной матрицы, заданной в формате RR (C) U, на диагональную матрицу в режиме удвоенной точности; при этом параметры AN и D должны иметь тип DOUBLE PRECISION |
Вызываемые подпрограммы: нет
Замечания по использованию: нет
DIMENSION IA(5), JA(9), AN(9), D(4) DATA IA /1, 3, 4, 7, 10/, * JA /4, 1, 3, 4, 2, 3, 4, 3, 1/, * AN /1., 1., 1., 1., 1., 1., 1., 1., 1./, * D /5., 5., 5., 5./, NR = 4 NC = 4 CALL AMMMR (IA, JA, AN, NR, NC, D) Результаты: AN = ( 5, 5, 5, 5, 5, 5, 5, 5, 5 )