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

ITER_PROST

.m
Скачиваний:
1
Добавлен:
16.07.2021
Размер:
1.08 Кб
Скачать
3
3
n1=input('Введите номер группы: ');
n2=input('Bведите ваш номер в списке группы:');
n=n1+n2;
%rand('normal');
rand('seed',n);
A=rand(7);
b=rand(7,1);
Au=triu(A);
A1=tril(A);
Ad=diag(diag(A));
su=sum(sum(abs(Au)));
sl=sum(sum(abs(A1)));
Su=sum(abs(Au));
S1=sum(abs(A1));
sigma=5;
O=ones(7);
Ou=triu(O);
S6=diag(sigma*(Su./S1));
At=sigma*((A1+ Ou)./(Au'+Ou));
neo=rem(n2,2);
mode=rem(n2,3);
if (mode==0) A1=(sigma*su/sl)*A1; end
if (mode==1) A1=S6*A1; end
if (mode==2) A1=At.*A1; end
A=A1+Ad+Au;
ma=max(max(abs(A)));
if (ma>1000) A=0.08*A; end
A=0.5*A+2.75*diag(diag(A));
disp(' Матрица системы: ');
A
disp('Правая часть системы:');
b
P=size(A);
n=P(1);
for i=1:n
d=A(i,i);
bi(i)=b(i)/d;
for j=1:n
AI(i,j)=-A(i,j)/d;
AI(i,i)=0;
end
end
bi=bi';
EPS=0.0001;
X=zeros(n,1);
Y=X;
X=bi+AI*X;
P=Y-X;
I=1;
v=norm(P,inf);
while v>EPS
I=I+1;
Y=X;
X=bi+AI*X;
P=Y-X;
v=norm(P,inf);
end
disp('ОТВЕТ:');
X
disp('Число итераций:');
I
disp('ПРОВЕРКА, точное решение:');
A^(-1)*b
Соседние файлы в предмете Численные методы