ВУЗ:
Составители:
Рубрика:
39
0 0 0 1.0000
P =
0 0 1 0
1 0 0 0
0 0 0 1
0 1 0 0
Проверка правильности разложения
LU =
1.0000 4.0000 1.0000 3.0000
0 -1.0000 3.0000 -1.0000
3.0000 1.0000 0 2.0000
1.0000 -2.0000 5.0000 1.0000
Решение системы Ly=P*b
y =
1.0000
0
0.5323
-0.1818
Решение системы Ux=y
x =
1.1364
-0.0455
0.5909
-0.1818
Невязка
r =
1.0e-015 *
0
0.2220
0.4441
0
Программа sam2_05.m демонстрирует попытку LU-разложения выро-
жденной матрицы
% Метод LU-разложения решения СЛАУ
% Главная программа
% Попытка решения вырожденной системы
clear;
clc;
% Пример матрицы и правой части
disp('Матрица решаемой системы')
disp('Вектор правой части')
A=[1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16]
disp('Определитель матрицы')
det(A)
disp('Вектор правой части')
b=[1;2;3;4]
[L,U,P,flag]=lu_fact(A);% Вызов LU-разложения
if flag==1
disp('Матрица вырождена')
else
0 0 0 1.0000 P = 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 Проверка правильности разложения LU = 1.0000 4.0000 1.0000 3.0000 0 -1.0000 3.0000 -1.0000 3.0000 1.0000 0 2.0000 1.0000 -2.0000 5.0000 1.0000 Решение системы Ly=P*b y = 1.0000 0 0.5323 -0.1818 Решение системы Ux=y x = 1.1364 -0.0455 0.5909 -0.1818 Невязка r = 1.0e-015 * 0 0.2220 0.4441 0 Программа sam2_05.m демонстрирует попытку LU-разложения выро- жденной матрицы % Метод LU-разложения решения СЛАУ % Главная программа % Попытка решения вырожденной системы clear; clc; % Пример матрицы и правой части disp('Матрица решаемой системы') disp('Вектор правой части') A=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16] disp('Определитель матрицы') det(A) disp('Вектор правой части') b=[1;2;3;4] [L,U,P,flag]=lu_fact(A);% Вызов LU-разложения if flag==1 disp('Матрица вырождена') else 39
Страницы
- « первая
- ‹ предыдущая
- …
- 37
- 38
- 39
- 40
- 41
- …
- следующая ›
- последняя »