92
Число операций, требуемых для выполнения, как прямой, так и
обратной подстановок, равно примерно
2
2
/n , а в сумме для решения
вместе с разложением требуется примерно
2
n операций.
Изучение соотношений (6.16, 6.17) показывает, что компоненты
i
y
используются только для определения
i
z и позднее не требуются.
Аналогично
i
z не нужны после вычисления
i
x . Следовательно, при такой
системе расчетов векторы
,
и
могут быть размещены в одних и тех
же ячейках памяти ЭВМ. Коэффициенты треугольных систем – матрицы
и
, если не хранить единичную диагональ матрицы
, могут быть
размещены на месте исходной матрицы коэффициентов
. Следует также
отметить эквивалентность обратных подстановок в схеме Халецкого и в
методе Гаусса.
6.4 LU – факторизация (алгоритм Краута)
При изложении алгоритмов разложения для наглядности
ограничимся порядком системы
4
n , что не повлияет на общность
рассуждений.
Суть алгоритма Краута. Предполагая, что разложение
существует, запишем произведение
⎥
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎢
⎣
⎡
++++++
+++++
+++
=
44343424421441432342134142124141
343324321431332332133132123131
2422
14
212322132122122121
14111311121111
lululullulullull
ululullulullull
ulululullull
ululull
A
.
Сравнивая компоненты этого произведения, с компонентами матрицы
,
видим, что первый столбец произведения
, равен первому столбцу
матрицы
, т.е.
11 ii
al = , при 41 ,,i …
. Первая строка произведения может
быть использована для определения первой строки матрицы
.
Действительно, т.к.
jj
aul
1111
,
при
42 ,,j …=
, получаем
1111
lau
jj
.
Поскольку во втором столбце элементы
12
u и
1i
l известны, можем
определить второй столбец матрицы
121122
ulal
ii
,
где
42 ,,i …= . Теперь, т.к. известны
2221
l,l и
j
u
1
, можно по второй строке
произведения определить вторую строку матрицы
2212122
lulau
jjj
,
при
43 ,,j …= . Далее, чередуя строки и столбцы, можно аналогичным
образом найти остальные элементы матриц
и
.