%Joonis alglähendite leidmiseks
ezplot('x=y^2-1',[-2,2,-2,2])
hold on
h=ezplot('y=x^2',[-2,2,-2,2])
set(h,'color','r')
grid on
legend('x=y^2-1','y=x^2')
title('Alglähendite leidmise joonis')
hold off
%Jooniselt on näha, et joontel on 2 lõikepunkti, st võrrandisüsteemil on 2
%lahendit. Valime lõikepunktide koordinaadid alglähenditeks. Meile sobivad
%(-0.75, 0.5) ja (1.2, 1.5).

%Kontrollime HIM koonduvust.
%1) g1=y^2-1 ja g2=x^2
x=-0.75; %esimese lõikepunkti x-koordinaat
y=0.5; %esimese lõikepunkti y-koordinaat
G(1,1)=0;
G(1,2)=2*y;
G(2,1)=2*x;
G(2,2)=0;
%tuletis=norm(G,1)=1.5 EI SOBI

x=1.2; %teise lõikepunkti x-koordinaat
y=1.5; %teise lõikepunkti y-koordinaat
G(1,1)=0;
G(1,2)=2*y;
G(2,1)=2*x;
G(2,2)=0;
%tuletis=norm(G,1)=3 EI SOBI

%2) g1=sqrt(x+1) ja g2=sqrt(y)
x=-0.75; %esimese lõikepunkti x-koordinaat
y=0.5; %esimese lõikepunkti y-koordinaat
G=[1/(2*sqrt(x+1)) 0; 0 1/(2*sqrt(y))];
%tuletis=norm(G,1) ligikaudu SOBIB

x=1.2; %teise lahendi x-koordinaat
y=1.5; %teise lahendi y-koordinaat
G=[1/(2*sqrt(x+1)) 0; 0 1/(2*sqrt(y))];
%tuletis=norm(G,1)=0.4 SOBIB

%Defineerime võrrandisüsteemi võrranditest vektorfunktsiooni F, mille
%argumendiks on z, kus z(1)=x ja z(2)=y
F=@(z)[z(1)-z(2)^2+1,z(2)-z(1)^2]; 
%tõime süsteemis kõik liikmed vasakule poole võrdusmärki

%HIM lahendamine
%1) esimene lahend
z=[-0.75,0.5]; %alglähend jooniselt, x asemel on z(1) ja y asemel z(2)
i=0; %sammude loendur
while norm(F(z),1)>10^-6 %10^-6 on meie valitud täpsust
    z(2)=sqrt(z(1)+1);
    z(1)=-sqrt(z(2));
    i=i+1;
end
lahend1=z
sammud1=i
kontroll1=F(lahend1)

%2) lahend
z(1)=1.2; %teise alglähendi x
z(2)=1.5; %teise alglähendi y
i=0; %sammude loendur
while norm(F(z),1)>10^-6
    z(1)=sqrt(z(2));
    z(2)=sqrt(z(1)+1);
    i=i+1;
end
lahend2=z
sammud2=i
kontroll2=F(lahend2)