%% Tehtävä curveFitting/01  Ratkaisu: tämä r01.m 
%{
Muodosta interpolaatiopolynomi pisteist\"olle, joka saadaan laskemalla funktion 
$f(x)=\cos(1+x^2)$ arvot tasav\"alisess\"a x-pisteist\"oss\"a, jossa on $7$ pistett\"a 
v\"alill\"a $\lbrack0,3\rbrack$. Piirr\"a samaan kuvaan funktio, datapisteet (rinkuloilla) 
ja interpolaatiopolynomi. 

Tee skripti nimi.m  (nimi sopikoon tilanteeseen)  
%}
close all

%%  Pisteet, joissa interpoloidaan:
xdata=linspace(0,3,7)
ydata=cos(1+xdata.^2)
%%  Interpolaatiopolynomin kertoimet:
c=polyfit(xdata,ydata,6)  % 7:n pisteen kautta kulkee 6:n asteen polynomi.
%% Lasketaan polynomin arvot piirtämiseen sopivassa (100-pisteisessä)
%% joukossa:
x=linspace(0,3);  % 100 pistettä, muista päättää puolipisteeseen!
y=polyval(c,x);
%% Piirretään polynomi ja datapisteet:
clf  % Grafiikkaruudun tyhjennys
plot(x,y)
hold on
plot(xdata,ydata,'ro')
xlim([-.5 3.5])   % Väljennetään hiukan x-väliä.
grid on           % Koordinaattiristikko.
% Ehkä olis mukavampi ajaa edellinen solu uudestaan muuttamalla linspacen
% argumenteiksi -.5,3.5 (tms.) Teepä!
%% Kommentti:
% Tässä esimerkki vaiheittain paranneltavasta skriptistä, jossa pieniin
% soluihin pilkkomisesta on iso hyöty.
