function r=iteracjaodwrotna
A=[1 -1 0;-2 4 -2;0 -1 2];
xk=[1;0;0];
lamk=0.0;
c=(xk'*xk)^0.5;
uk=xk/c;
epsL=1;
epsR=1;
iter=1;
A=inv(A);
while (eps>1e-6)&(epsR>1e-6)
xkl=A*uk;
lamk1=uk'*xk1;
k=epsR;
c=(xkl'*xkl)^0.5;
uk1=xk1/c;
epsL=abs((lamk1-lamk)/lamk1);
epsR=((uk1-uk)'*(uk1-uk))^0.5;
iter=iter+1;
if (iter>200)
printf('proces rozbiezny\n');
return
end
lamk=lamk1;
uk=uk1;
end
lambda=lamk^(-1);
x=uk;
end
a to ponoć jacobiego metoda
A=[10,1,2;3,10,1;0,2,5];
B=[13;14;7];
n=size(A,1);
xk=zeros(1,n);
x=zeros(1,n);
eps=0.00001;
for iter=1:50
for i=1:n
s=0;
for k=1:n
if k~=i
s=s+A(i,k)*x(k);
end
end
xk(i)=(B(i)-s)/A(i,i);
end
max=sqrt((x(1)-xk(1))^2);
for i=2:n
if sqrt((x(i)-xk(i))^2)>max
max=sqrt((x(i)-xk(i))^2);
end
end
x=xk;
if max<=eps
end
end
end
x
max