mlCF03 [Interpolaatiokertoimet lineaarisesta yhtälöryhmästä]\\
Kirjoita funktio, jonka otsikko ja ``help-kommentit'' voisivat olla:
\begin{verbatim}
    function [kertoimet,condnr]=vandinterp(xdata,ydata)
    % Funktio laskee interpolaatiopolynomin kertoimet Vandermonden
    % systeemin ratkaisulla ja palauttaa my\"os cond-luvun.
    %  Esim:
    %  xdata=0:5; ydata=xdata.*sin(xdata);
    %  [c,cnr]=vandinterp(xdata,ydata);

\end{verbatim}
Laske vaikkapa kommenttiesimerkin tapaus ja vertaa polyfit-funktion antamiin kertoimiin. Piirr\"a data ja interpolaatiopolynomi. K\"ayt\"a arvojen laskentaan polyval-funktiota.

(Opettajalle: \textbf{Helpotettu versio:} J\"atet\"a\"an cond pois.)

\textbf{Vihje}\\
Olkoon $p(x)=a_0 + a_1 x + \ldots + a_n x^n$ etsitty polynomi. \\
M\"a\"ar\"at\"a\"an tuntemattomat kertoimet interpolaatioehtojen 
$p(x_k)=y_k, k=x_0,\ldots x_n$ avulla saatavasta lineaarisesta yht\"al\"osysteemist\"a
ratkaisemalla. \\
\textbf{Huom:} Matlab:ssa polynomi esitetään kerroinvektorina:\\
$\left[a_n, a_{n-1}, \ldots, a_0\right].$ Muista myös, että luku $0$ ei kelpaa vektorin 
indeksiksi, toki tässä tehtävässä ei liene mitään tarvetta indeksointiin.\\

Kirjoita yht\"al\"oryhm\"a t\"ass\"a yleisess\"a muodossa ja tee ensin Matlab-skripti tyyliin
\begin{verbatim}
xd=...;
yd=...;
A=...;  % Yht.ryhman matriisi, help/doc vander
a=      % Ratkaisuna saatava kerroinvektori, help slash (a=A\...)d
x=linspace(alkup,loppup); % x-pisteet piirt. varten
y=polyval(...);           % Polynomin arvot x-pisteissa
...
plot(xd,yd,'o')
hold on
plot(x,y)
grid on
\end{verbatim}
Tarkistus: Kulkeeko polynomi kaikkien datapisteiden kautta. \\
Kun skripti toimii, tee sen pohjalta pyydetty funktio.

% Avainsanat: K\"ayr\"an sovitus, interpolaatio, curve fitting
%\textbf{Ratkaisu:}\texttt{mlCF03ratk.m}  [TULEE] (Numero?)

Sovella funktiotasi johonkin t\"am\"an teht\"av\"akokoelman interpolaatioteht\"av\"a\"an.


\textbf{Vaativuus:} 2 \\
\textbf{Tehtävän Latex-koodi:}\\
\href{../mlteht/mlCurveFit/mlCF03.tex}{../mlteht/mlCurveFit/mlCF03.tex}

\textbf{Ratkaisu:}  \\
\href{../mlteht/mlCurveFit/ratkaisut/vandinterp.m}{../mlteht/mlCurveFit/ratkaisut/vandinterp.m} Funktio vandinterp \\
\href{../mlteht/mlCurveFit/ratkaisut/html/mlCF03R.html}{../mlteht/mlCurveFit/ratkaisut/html/mlCF03R.html} Ajotiedosto html-muodossa (publish) \\
\href{../mlteht/mlCurveFit/ratkaisut/mlCF03R.m} {../mlteht/mlCurveFit/ratkaisut/mlCF03R.m} (Ajo-m-tiedosto)\\
     

%%%%%%%%% Harvemmin esiintyviä %%%%%%%%%%%%%%%%%%%%%%%%%%%
%\textbf{Aputiedostoja,viitteitä}\\
%  \begin{itemize}\\
%    \item 
%  \href{../mlteht/mlCurveFit/apusrc/mlCF03A.mw}{ Oppilaille: ohje-ja pohjatyöarkki (mw)} (Linkki mukaan mlCF000.tex-tiedostoon)\\
%\item
%\href{../mlteht/mlCurveFit/apusrc/mlCF03Aope.tex}{ Opettajalle: Latex-lisäohjeita liitettäväksi tehtäväpaperiin}\\
%\end{itemize}\\
   
%\textbf{Vastaavanlaisia tehtäviä:}\\
   
%\begin{enumerate}\\
%\item Perusesim tähän kohtaan:\\
%\end{enumerate}\\

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

   
\textbf{Avainsanat:} Käyrän sovitusta/interpolaatiota Matlab:lla ,mlCurveFit,mlCF, Lineaarinen yhtälöryhmä, Vandermonden matriisi \\

\textbf{Matlabfunktioita:} A\b, ``backslash'', polyval \\

\hrule

