clear
%algandmed
x=-1:0.1:-0.3;
y=[10 11 11.5 11.6 11.4 11.1 10 8.7];
h=0.1;

%tuletiste leidmine
%1) esimeses sõlmes diferentsvalem sammuga ette
ytuletis(1)=(y(2)-y(1))/h;
%2) viimases sõlmes diferentsvalem sammuga taha
ytuletis(8)=(y(8)-y(7))/h;
%3) ülejäänud tuletiste väärtused keskmistatud diferentsvalemiga
for i=2:7
    ytuletis(i)=(y(i+1)-y(i-1))/(2*h);
end

ytuletis

%interpoleerimine
xvork=-1:1e-3:-0.3; 
ykuup=interp1(x,y,xvork,'spline'); %kuupsplainiga interpoleerimine
ytullin=interp1(x,ytuletis,xvork,'linear'); %tuletise lineaarne interpolatsioon

%joonis
plot(x,y,'r*',xvork,ykuup,xvork,ytullin)
grid on
legend('lähteandmed','kuupsplain','tuletise lähend')
title('Joonis')

%leiame maksimumpunkti koordinaadid
%defineerime lineaarsplaini funktsioonina
f=@(t)interp1(x,ytuletis,t,'linear');
x_max=fsolve(f,-0.7);
y_max=interp1(x,y,x_max,'spline');
P_max=[x_max,y_max]