Добавил:
Когда то был здесь Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Shevchenko / 2sem / LR8_2

.m
Скачиваний:
8
Добавлен:
07.06.2024
Размер:
1.04 Кб
Скачать
clc
clear
A = [4 1 2 -1; 3 6 -1 2; 2 -1 5 -3; 4 1 -3 -8];
B = [2 -1 5 -3];
N = size(A,1);
X = zeros(N,1);
tol = 1e-6;
errors = [];
relative_errors = [];

tic;
count = 0;
count_Err = 0;
while true
x_new = zeros(N, 1);
for i = 1:N
sum = 0;
for j = 1:N
if i ~= j
sum = sum + A(i, j) * x_new(j);
end
end
x_new(i) = 1/A(i, i) * (B(i) - sum);
end
count = count + 1; %Итерации
if (abs(x_new - X)) < tol
break;
else
count_Err = (count_Err + 1);
x_last = X;
X = x_new;
error = max(abs(X - x_last));
errors(count_Err) = error;
relative_error = max(abs((X - x_last)./ X));
relative_errors(count_Err) = relative_error;
end
end
toc;
mean_error = mean(errors);
mean_relative_error = mean(relative_errors);

disp('Итерации'); disp(count);
disp('Корни'); disp(x_new);
disp('Среднее вычислительных ошибок'); disp(mean_error);
disp('Среднее относительных ошибок '); disp(mean_relative_error);
Соседние файлы в папке 2sem