Методы решения систем с разреженными матрицами. Способы хранения и представления разреженных матриц, операции над ними. Блатов И.А - 20 стр.

UptoLike

Рубрика: 

- 20 -
)
(
n
JA
j
=
)
1
(
)
(
+
=
i
IB
i
IB
нет да
для 1)1(),( += jIBjBIm
)
(
m
k
=
(
)
ikY
=
нет да
(
)
ikY
=
;
knJC
j
=
)(
;
1
+
=
jj
nn
j
niIC
=
+
)1(
;
1
+
=
i
i
2.
Численный этап
определяется вектор
CN
. Основная идея
умножение с помощью РВН, размерность которого равна числу столбцов
матрицы
C
(т.е .
l
), поэтому матрица
C
будет записываться по строкам .
Пример. Найти произведение двух матриц
2221
1211
2221
1211
bb
bb
aa
aa
.
Р е ш е н и е
Накопитель
()
0,0
21
xx
начальный момент . Берем первый элемент текущей
строки матрицы
A
и умножаем его на все элементы соответствующей строки
матрицы
B
и т .д.:
.,;,
;,;0,0
2
12
1
11
22
12
2
2
21
12
1
1
12112211111121
xcxcbaxxbaxx
baxxbaxxxx
==+=+=
+
=
+
=
=
=
Рассмотрим
численный этап
в общем случае .
0
1
.
1
=
i
.
0
2
. С помощью
IC
определяем, в каких позициях
JC
находится описание
i
-й
строки матрицы
C
.
0
3
. Просматриваем участок
JC
, соответствующий описанию
i
-й строки, и в
позиции РВН
X
с номерами столбцовых индексов
i
-й строки этого участка
засылаем нули.
0
4
. С помощью
IA
определяем, в каком участке
JA
содержится описание
i
-й строки матрицы
A
.
0
5
. Просматриваем выделенный участок (
i
-ю строку) массива
JA
. Для
каждого просматриваемого элемента
k
, стоящего в
m
-й позиции массива
JA
,
выполняем следующие операции: