% Tund 12, ülesanne 3
% andmed - funktsioon tabelina
x=[-1:0.1:-0.3];
y=[10,11,11.5,11.6,11.4,11.1,10,8.7];
h=0.1;
plot(x,y,'o')
hold on
% a) leiame tuletised igas sõlmes
tuletis(1)=(y(2)-y(1))/h;
for i=2:7
  tuletis(i)=(y(i+1)-y(i-1))/(2*h); % keskmistatud valem
end
tuletis(8)=(y(8)-y(7))/h;
tuletis
% b) lähendame tabeli kujul antud funktsiooni kuupsplainiga
xvork=[-1:0.001:-0.3];
ykuupsplain=interp1(x,y,xvork,'spline');
plot(xvork,ykuupsplain,'b-')
hold on
% lähendame funktsiooni tuletist lineaarsplainiga
ylineaarsplain=interp1(x,tuletis,x,'linear');
plot(x,ylineaarsplain,'r-')
hold off
yline(0)
% näeme, et funktsiooni maximumpunkti 
% M(xmax,ymax) korral xmax~-0.7
% leiame xmax-le vastava ymax-i väärtuse
interp1(x,y,-0.7,'spline')
% Maksimumpunkt M(-0.7,11.6)
% natuke teistmoodi
% defineerime lineaarsplaini(tuletise joon) 
% funktsioonina
f=@(z) (interp1(x,tuletis,z,'linear'));
xmax=fsolve(f,-0.7)
% ymax=?
ymax=interp1(x,y,xmax,'spline')