% Tund 10, ülesanne 2
x=[1.2:0.1:2];
y=[9.08,10.43,11.9,13.48,15.19,17.03,19.01,21.13,23.39];
kaalud=[1,1,2,5,1,4,2,2,1];
plot(x,y,'o')
hold on
% a) lähendame andmeid kuupsplainiga S^(3,2)(x)
ykuupsplain=interp1(x,y,x,'spline');
plot(x,ykuupsplain,'b-')
hold on
% b) lähendame andmeid kuupfunktsiooniga 
% vähimruutude mõttes kaalusid mitte arvestades
kordajad3=polyfit(x,y,3)
% Phi(x)=0.8923x^3+2.2464x^2+3.7054x-0.1427
yvaartused3=polyval(kordajad3,x)
plot(x,yvaartused3,'b-')
hold on
% c) vähimruutude mõttes kaalusid arvestades
aste=7;
for  i=1:4
    for j=1:4
        A(i,j)=sum(kaalud.*x.^(aste-j));
    end
    aste=aste-1;
    B(i,1)=sum(kaalud.*y.*x.^(4-i));
end
C=inv(A)*B
% Phi(x)~0.91x^3+2.2x^2+3.82x-0.19
yvaartused3kaalud=polyval(C,x);
plot(x,yvaartused3kaalud,'m-')
hold off
% d) leiame funktsiooni väärtuse
% x=1.12
[interp1(x,y,1.12,'spline'),polyval(kordajad3,1.12),polyval(C,1.12)]
% x=1.35
[interp1(x,y,1.35,'spline'),polyval(kordajad3,1.35),polyval(C,1.35)]