%Joonis alglähendite leidmiseks
fplot(@(x)x.^6-x-1,[-1,1.5])
grid on
legend()
title('Joonis alglähendite leidmiseks')
%Jooniselt on näha, et funktsioonil on 2 nullkohta. Need valime
%alglähenditeks. Meile sobivad -0.75 ja 1.2.

%HIM koonduvuse uurimiseks avaldame lähtevõrrandist otsitava. See, mis jääb
%alles paremale poole võrdusmärki, on meie jaoks g(x) ning vaja on HIM
%koonduvuseks, et |g'(x)|<1.
%Meil g1(x)=x^6-1 ja g1'(x)=6*x^5

x=-0.75; %alglähend jooniselt
tuletis1=abs(6*x^5) %=1.4238 ei sobi, sest on suurem kui 1
x=1.2; %teine alglähend jooniselt
tuletis2=abs(6*x^5) %=14.92 ei sobi, sest on suurem kui 1

%Kontrollime g2(x)=nthroot(x+1,6) ja selle tuletiseks tuleb
%g2'(x)=1/(6*nthroot((x+1)^5,6))
x=-0.75; %alglähend jooniselt
tuletis11=abs(1/(6*nthroot((x+1)^5,6)))%=0.5291 SOBIB
x=1.2; %alglähend jooniselt
tuletis22=abs(1/(6*nthroot((x+1)^5,6)))%=0.0864 SOBIB

%Lahendame HIM kasutades
f=@(x)x^6-x-1; %võrrandi vasak pool
x=-0.75;
i=0; %sammude arv
while abs(f(x))>10^-6
    x=-nthroot(x+1,6); %otsime negatiivset x, sellepärast - kõige ees
    i=i+1;
end
lahend1HIM=x
sammud1HIM=i
kontroll1=f(lahend1HIM)

x=1.2;
i=0; %sammude arv
while abs(f(x))>10^-6
    x=nthroot(x+1,6); %otsime positiivset x, sellepärast + kõige ees
    i=i+1;
end
lahend2HIM=x
sammud2HIM=i
kontroll2=f(lahend2HIM)

%Lahendame Newtoni meetodiga
ftuletis=@(x)6*x^5-1; %võrrandi vasaku poole tuletis
x=-0.75; %alglähend jooniselt
i=0; %sammude loendur
while abs(f(x))>10^-6
    x=x-f(x)/ftuletis(x);
    i=i+1;
end
lahend1NM=x
sammud1NM=i
%vastus vektorina
vastus1=[lahend1HIM lahend1NM sammud1HIM sammud1NM]

x=1.2; %alglähend jooniselt
i=0; %sammude loendur
while abs(f(x))>10^-6
    x=x-f(x)/ftuletis(x);
    i=i+1;
end
lahend2NM=x
sammud2NM=i
%vastus vektorina
vastus2=[lahend2HIM lahend2NM sammud2HIM sammud2NM]