next up previous contents index
Next: 6.4 Intégration Up: 6.3 Interpolation Previous: 6.3.1 Interpolation linéaire   Table des matières   Index

6.3.2 Interpolation par les splines

L'interpolation par les splines nécessite l'utilisation de deux fonctions:splin et interp.

La fonction splin s'utilise de la manière suivante:

d=splin(x,f)

PARAMETRES:
  x         : vecteur réel

  f         : vecteur réel de meme taille que x

On connaît des points $ x_i$ et les points $ f(x_i)$. La fonction splin calcule une fonctions de splines S d'ordre 3 qui interpole f. S est définie par:

\begin{displaymath}
\left\{
\begin{array}{rl}
f_{i}=S(x_i)\\
d_i=S'(x_i)
\end{array}\right.
\end{displaymath}

La fonction d doit être utilisée en conjonction avec interp. La fonction interp permat en effet d'évaluer la fonction s pour des points $ x_d$ donnés. Elle s'utilise de la manière suivante:

[f0 [,f1 [,f2 [,f3]]]]=interp(xd,x,f,d)

PARAMETRES

  xd        : vecteur réel

  x,f,d     : vecteurs réels des splines

  fi        : vecteurs (dérivées)

DESCRIPTION

  En donnant trois vecteurs (x,f,d) définissant une fonction spline (voir splin) with
  fi=S(xi), di = S'(xi), cette fonction évalue S (resp. S', S'', S''') aux
  points xd(i).

  x         : vecteur de xi  (x(1) < x(2) < ...)

  f         : vecteur de S(xi)

  d         : vecteur de S'(xi)

  f0        : vecteur [S(xd(1),S(xd(2)),S(xd(3)),...]

  f(1 2 3)  : vecteur de la première, deuxièmre, troisième dérivée de S aux
  	      points xd=[xd(1),xd(2),...] c'est-à-dire:

  f1 = [S'(xd(1)),S'(xd(2)),...]

  f2 = [S''(xd(1)),S''(xd(2)),...]

Considérons l'exemple suivant:

--> x=0:0.5:10;f=sin(x); \\points d'interpolation
 
-->  d=splin(x,f); \\définition de S'
 
-->  S=interp(0:0.1:10,x,f,d);  \\calcul de la fonction d'interpolation S
 
-->  plot2d(x',f',-1);  \\tracé des points d'interpolation (croix sur le graphe)
 
-->  plot2d((0:0.1:10)',S',2,'000')  \\tracé de S

On obtient alors le graphe suivant:

Figure 5.2: Exemple d'interpolation par les splines
\includegraphics{graphe10}



root
2000-02-07