% Tund 8, ülesanne 2
% andmed
x=[0,1,4];
y=[1,2,2];
plot(x,y,'o')
hold on
axis([-2,6,-2,4])
% koostame parabooli - teise astme polünoomi
% sõlmi on 3. Saame koostada ülimalt (3-1)-astme polünoomi
A=[0^2 0^1 1
    1^2 1^1 1
    4^2 4^1 1];
B=[1
    2
    2];
C=inv(A)*B
% saime polünoomiks Phi(x)=-0.25x^2+1.25x+1
f=@(x) -0.25*x^2+1.25*x+1;
fplot(f,[-2,6])
% kontrollime interpolatsioonitingimuste täidetust
[f(0),f(1),f(4)]
% leiame Lagrange'i interpolatsioonipolünoomi
syms xx; 
summa=0;
for i=1:length(x)
      L=1;
    for j=1:length(x)
      if i~=j
         L=L*(xx-x(j))/(x(i)-x(j));
      end
    end
    summa=summa+y(i)*L;
end
lagrangepolynoom=simplify(summa)

syms z(xx); % sümboolne funktsioon
z(xx)=lagrangepolynoom;
[z(0),z(1),z(4)]