Вычислительные методы линейной алгебры. Горбаченко В.И - 54 стр.

UptoLike

54
Для каждого столбца получающихся треугольных матриц элементы, не пре-
вышающие локального порога разреженности, исключаются.
Локальный по-
рог разреженности
это произведение порога разреженности на норму со-
ответствующего столба исходной матрицы. В процессе неполного
LU-разло-
жения на диагоналях треугольных матриц могут возникать нулевые элемен-
ты. Тогда треугольные матрицы становятся особенными и не могут использо-
ваться в качестве предобусловливателя. В такой ситуации выдается предуп-
реждение. В этом случае необходимо уменьшить порог разреженности.
Рассмотрим пример. В качестве матрицы A используем несимметрич-
ную тестовую матрицу
west0479, имеющую сложную разреженную струк-
туру (рис. 2.3).
Рис. 2.3. Spy-график матрицы west0479
В качестве вектора правой части используем сумму столбцов матрицы. Ре-
шение в этом случае представляет единичный вектор:
>> load west0479;
>> A=west0479;
>> b=sum(A,2);
Функция sum(A,2) осуществляет суммирование по второй размерности
двумерного массива
Aпо столбцам.
Попытаемся решить такую систему методом бисопряженных градиентов
>> [x,flag,relres,iter,resvec]=bicg(A,b,1e-6,400);
>> flag
flag =
1
Заданная точность не достигнута. Обратите внимание, что в этом случае воз-
вращаемый параметр
iter равен нулю:
Для каждого столбца получающихся треугольных матриц элементы, не пре-
вышающие локального порога разреженности, исключаются. Локальный по-
рог разреженности – это произведение порога разреженности на норму со-
ответствующего столба исходной матрицы. В процессе неполного LU-разло-
жения на диагоналях треугольных матриц могут возникать нулевые элемен-
ты. Тогда треугольные матрицы становятся особенными и не могут использо-
ваться в качестве предобусловливателя. В такой ситуации выдается предуп-
реждение. В этом случае необходимо уменьшить порог разреженности.
    Рассмотрим пример. В качестве матрицы A используем несимметрич-
ную тестовую матрицу west0479, имеющую сложную разреженную струк-
туру (рис. 2.3).




                      Рис. 2.3. Spy-график матрицы west0479


В качестве вектора правой части используем сумму столбцов матрицы. Ре-
шение в этом случае представляет единичный вектор:
>> load west0479;
>> A=west0479;
>> b=sum(A,2);

Функция sum(A,2) осуществляет суммирование по второй размерности
двумерного массива A – по столбцам.
Попытаемся решить такую систему методом бисопряженных градиентов
>> [x,flag,relres,iter,resvec]=bicg(A,b,1e-6,400);
>> flag
flag =
     1
Заданная точность не достигнута. Обратите внимание, что в этом случае воз-
вращаемый параметр iter равен нулю:

                                                                        54