You are on page 1of 28

.

Interpolation Numrique
Pablo CROTTI, Mathias RIME
Mini-projet eectu au sein de la section de Mathmatiques
Et 2007
Professeur responsable Alo Quarteroni
Assistant Benjamin Stamm
Introduction
Linterpolation numrique consiste de manire gnrale approximer une fonction dont on
ne connat les valeurs quen certains points. Plus prcisment, tant donn n+1 couples (x
i
, y
i
),
le problme consiste trouver une fonction = (x) telle que (x
i
) = y
i
pour i = 0, . . . , n. On
dit alors que interpole y
i
aux noeuds x
i
. La forme de la fonction dpend du problme
et du but de linterpolation. En eet, peut tre un polynme, et on parle alors dinterpolation
polynomiale, ou bien peut tre un polynme trigonomtrique, ou une fonction polynomiale par
morceaux, et on dit alors que est une interpolation par morceaux.
Lintrt et le mode dutilisation dune fonction dinterpolation dpend surtout de la prove-
nance des donnes. Les quantits y
i
peuvent, par exemple, reprsenter les valeurs aux noeuds
x
i
dune fonction f connue analytiquement. La fonction dinterpolation permet alors de simpli-
er des calculs numriques dintgrales ou de drives. Dautre part, les quantits y
i
peuvent
reprsenter des donnes exprimentales quil faut synthtiser, vu leur nombre parfois lev.
Le but de ce mini-projet est dintroduire les notions de base de linterpolation dans le cadre
dune fonction une variable. Nous parlerons de linterpolation polynomiale de Lagrange avec
noeuds quirpartis, de linterpolation polynomiale par morceaux, ainsi que de lapproximation
au sens des moindres carrs.
Pour mieux comprendre et illustrer ce quest linterpolation numrique, nous mettons deux
fonctions en exemple (Sinus et Runge) avec lutilisation des polynmes de Lagrange sur un
ou plusieurs morceaux. Ces deux exemples montrent que linterpolation par morceaux est bien
meilleure quune approximation polynomiale avec des points dinterpolation quirpartis lorsque
le nombre de morceaux est grand.
Nous tenons remercier Benjamin Stamm, notre assistant responsable, pour sa correction
rapide et trs attentive de notre projet, ainsi que pour sa disponibilit.
2
Table des matires
Introduction 2
Table des gures 4
1 Approximation par les moindres carrs 5
1.1 Rappels dalgbre linaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Meilleure approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Problme des moindres carrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Problme des moindres carrs pour des fonctions . . . . . . . . . . . . . . . . . . 7
2 Interpolation polynomiale & noeuds quirpartis 10
2.1 Polynme de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Erreur dinterpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Dfauts de linterpolation polynomiale avec noeuds quirpartis . . . . . . . . . . 14
2.4 Stabilit du polynme dinterpolation . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 Interpolation de Lagrange par morceaux 17
4 Forme de Newton du polynme dinterpolation 20
4.1 Quelques proprits des dirences divises de Newton . . . . . . . . . . . . . . . 20
4.2 Erreur dinterpolation avec les dirences divises . . . . . . . . . . . . . . . . . . 21
5 Interpolation dHermite-Birkho 23
Conclusion 24
Rfrences 25
ANNEXE : CODES MATLAB 26
3
Table des gures
1.1 Projection du vecteur v dans le sous-espace W . . . . . . . . . . . . . . . . . . . 5
1.2 Lissage de donnes alatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 Erreur dinterpolation du sinus avec noeuds quirpartis . . . . . . . . . . . . . . 13
2.2 Interpolations de sinus avec degr 2,3,4,5,6,8 . . . . . . . . . . . . . . . . . . . . . 13
2.3 Contre-exemple de Runge : Interpolation de degr 2,4,5,8 et 12 . . . . . . . . . . 15
2.4 Contre-exemple de Runge : Erreurs dinterpolation avec noeuds quirepartis . . . 16
3.1 Interpolation linaire par morceaux de la fonction sinus . . . . . . . . . . . . . . . 17
3.2 Erreurs pour linterpolation par morceaux de la fonction sinus . . . . . . . . . . . 18
3.3 Interpolation linaire par morceaux de la fonction de Runge . . . . . . . . . . . . 18
3.4 Erreurs dinterpolation par morceaux de la fonction de Runge . . . . . . . . . . . 19
4
1 Approximation par les moindres carrs
Dans cette partie du rapport nous allons tudier une mthode appele approximation au
sens des moindres carrs. Cette mthode permet dapproximer un ensemble de couples (x
i
, y
i
)
obtenus de manire alatoires ou par lintermdiaire dune fonction. Lapproximation nest pas
une interpolation car la fonction rsultante obtenue aprs calcul ne passe pas forcment par tous
les couples (x
i
, y
i
). En eet, lapproximation par les moindres carrs est obtenue en rsolvant un
systme dquations linaires surdtermin.
1.1 Rappels dalgbre linaire
Dnition 1.1. Soit V un R-espace vectoriel de dimension nie muni dun produit scalaire
, ). Soient W un sous-espace vectoriel de V et (w
0
, w
1
, . . . , w
n
) une base orthogonale de W.
Soit v V et soit
W
(v) W, la projection orthogonale du vecteur v sur le sous-espace W,
dnie par :

W
(v) :=
n

i=0
v, w
i
)
w
i
, w
i
)
w
i
. (1.1)
Dnition 1.2. Soit V un R-espace vectoriel de dimension nie muni dun produit scalaire
, ) et soit W un sous-espace vectoriel de V . Lespace orthogonal W est lensemble not
W

dni par :
W

:= v V [ w, v) = 0 w W.
Cest un sous-espace vectoriel de V. En eet 0 W

, et si w
1
, w
2
W

, , R alors
w W on a w
1
+w
2
, w) = w
1
, w) +w
2
, w) = 0. Donc w
1
+w
2
W

. Remarquons
que pour tout v V on a v
W
(v) W

. De plus, si A M
nm
(R) alors nous avons
Im(A)

= Ker(A
t
) et Ker(A)

= Im(A
t
) o on note par A
t
la transpose de A.
1.2 Meilleure approximation
Thorme 1.3 ([Hess06],page 62). Soit V un Respace vectoriel muni dun produit scalaire
, ). Soit W un sous-espace vectoriel de V et soit v V . Alors
W
(v) est la meilleure
approximation de v dans W, dans le sens o
|v
W
(v)|< |v w|, w W, w ,=
W
(v)
o |.| est la norme engendre par le produit scalaire , ).
W
V
W
(v)
v v -
W
(v)
Fig. 1.1 Projection du vecteur v dans le sous-espace W
5
Dmonstration. Soit w W. On a
|v w|
2
= |v
W
(v)
. .
W

+
W
(v) w
. .
W
|
2
.
Par le thorme de Pythagore nous avons
|v w|
2
= |v
W
(v)|
2
+|
W
(v) w|
2
.
Do
|v
W
(v)|
2
|v w|
2
,
avec galit si et seulement si
|
W
(v) w|
2
= 0 ,
ce qui quivaut
w =
W
(v).
1.3 Problme des moindres carrs
Etant donn A M
nm
(R) et b R
n
, il se peut que le systme dquations linaires Ax = b
avec x R
m
soit inconsistant, quil ny ait pas de solution. La mthode des moindres carrs
consiste trouver une valeur de x qui minimise la norme euclidienne de Axb. Selon le Thorme
1.3, la meilleure approximation de b dans Im(A) est

Im(A)
(b).
Or
b
Im(A)
(b) Im(A)

= Ker(A
t
).
Alors, si
Ax =
Im(A)
(b),
on a
A
t
b A
t
Ax = A
t
(b Ax
. .
Ker(A
t
)
) = 0.
Do
A
t
Ax = A
t
b. (1.2)
Si A
t
A est inversible, le systme a une solution unique
x = (A
t
A)
1
A
t
b, (1.3)
Ax = A(A
t
A)
1
A
t
b. (1.4)
On appelle lquation (1.2) le systme normal du systme inconsistant et lquation (1.3) le
systme associ au moindre carrs.
6
1.4 Problme des moindres carrs pour des fonctions
Nous considrons ici lapproximation non pas de vecteurs mais de fonctions relles. Luti-
lisation des moindres carrs pour les fonctions permet de synthtiser un ensemble de donnes,
souvent rsultats dexpriences, sous forme de polynmes, de polynmes trigonomtriques ou
dexponentielles. Cette forme synthtique des donnes permet ainsi par la suite dextrapoler des
valeurs direntes des noeuds de base.
Considrons les donnes (x
i
, y
i
), i = 0, . . . , n o y
i
peut tre vu comme la valeur f(x
i
)
prise par une fonction f au noeud x
i
, f tant inconnue priori. Pour un entier m 1 donn
(en gnral m n ), dnissons P
m
= v : R R : v(x) = a
0
+a
1
x +. . . +a
n
x
n
, a
i
R i
lensemble des polynmes de degr plus petit ou gal m. On cherche un polynme

f P
m
vriant lingalit
n

i=0
[y
i


f(x
i
)]
2

i=0
[y
i
p
m
(x
i
)]
2
, (1.5)
pour tout polynme p
m
de degr au plus m. Si elle existe,

f est appele meilleure approximation
au sens des moindres carrs dans P
m
des donnes (x
i
, y
i
), i = 0, . . . , n. moins que m n,
il nest en gnral pas possible davoir

f(x
i
) = y
i
pour tout i = 0, . . . , n. En posant

f(x) = a
0
+a
1
x + +a
m
x
m
,
o les coecients a
0
, . . . , a
m
R sont inconnus, le problme (1.5) peut tre reformul ainsi :
trouver a
0
, a
1
, . . . , a
m
tels que
(a
0
, a
1
, . . . , a
m
) =
min
{b
i
, i=0,...,m}
(b
0
, b
1
, . . . , b
m
),
o
(b
0
, b
1
, . . . , b
m
) =
n

i=0
[y
i
(b
0
+b
1
x
i
+ +b
m
x
m
i
)]
2
.
Rsolvons ce problme dans le cas particulier o m = 1. Puisque
(b
0
, b
1
) =
n

i=0
[y
2
i
+b
2
0
+b
2
1
x
2
i
+ 2b
0
b
1
x
i
2b
0
y
i
2b
1
x
i
y
i
],
le graphe de est un parabolode convexe. Le point (a
0
, a
1
) o atteint son minimum satisfait
les conditions

b
0
(a
0
, a
1
) = 0 ,

b
1
(a
0
, a
1
) = 0.
En calculant explicitement les deux drives partielles, on obtient
n

i=0
[a
0
+a
1
x
i
yi] = 0 ,
n

i=0
[a
0
x
i
+a
1
x
2
i
x
i
y
i
] = 0,
qui est un systme de deux quations deux inconnues a
0
et a
1
:
a
0
(n + 1) +a
1
n

i=0
x
i
=
n

i=0
y
i
,
a
0
n

i=0
x
i
+a
1
n

i=0
x
2
i
=
n

i=0
y
i
x
i
.
7
En posant D = (n + 1)

n
i=0
x
2
i
(

n
i=0
x
i
)
2
, la solution scrit, grce la rgle de Cramer :
a
0
=
1
D
_
n

i=0
y
i
n

j=0
x
2
j

n

j=0
x
j
n

i=0
x
i
y
i
_
,
a
1
=
1
D
_
(n + 1)
n

j=0
x
i
y
i

j=0
x
j
n

i=0
y
i
_
.
Le polynme correspondant

f(x) = a
0
+ a
1
x sappelle la droite des moindrs carrs, ou de
rgression linaire.
Cette approche peut tre gnralise de plusieurs manires. La premire gnralisation consiste
prendre un m plus grand. Le systme linaire (m+1) (m+1) associ est symtrique et a la
forme suivante :
a
0
(n + 1) + a
1

n
i=0
x
i
+ . . . + a
m

n
i=0
x
m
i
=

n
i=0
y
i
a
0

n
i=0
x
i
+ a
1

n
i=0
x
2
i
+ . . . + a
m

n
i=0
x
m+1
i
=

n
i=0
x
i
y
i
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
0

n
i=0
x
m
i
+ a
1

n
i=0
x
m+1
i
+ . . . + a
m

n
i=0
x
2m
i
=

n
i=0
x
m
i
y
i
Quand m = n, le polynme des moindres carrs concide avec le polynme dinterpolation de
Lagrange (que nous tudierons au prochain chapitre).
Une gnralisation de lapproximation au sens des moindres carrs consiste utiliser dans
(1.5) des fonctions

f et p
m
qui ne sont pas des polynmes mais des fonctions dun espace vectoriel
V
m
engendr par m+ 1 fonctions indpendantes
j
, j = 0, . . . , m.
On peut considrer par exemple des fonctions trigonomtriques
j
(x) = cos(jx) (pour un
paramtre ,= 0 donn), des fonctions exponentielles
j
(x) = e
jx
(pour un > 0 donn). Le
choix des fonctions
j
est en pratique dict par la forme suppose de la loi dcrivant les donnes.
Le lecteur pourra vrier que les composantes de

f(x) =
m

j=0
a
j

j
(x),
sont les solutions du systme suivant (appel quations normales)
B
T
Ba = B
T
b,
o B est la matrice rectangulaire (n + 1) (m+ 1) de coecients b
ij
=
j
(x
i
), a est le vecteur
des inconnues et b le vecteur des donnes.
8
Exemple 1.4. Lissage de donnes alatoires. Nous allons montrer comment on peut lisser
ou synthtiser des donnes gnres alatoirement. Nous avons gnr un ensemble de 10 points
reprsentant des perturbations dune loi quadratique (ici la fonction de base est f(x) = 10x
2
).
Le Programme 1 en annexe montre le code MATLAB utilis pour gnrer les donnes et les
acher.
Nous avons utilis la mthode des moindres carrs pour approximer ces points avec un
polynme du deuxime degr, le choix le plus judicieux, et nous avons eectu une interpolation
de Lagrange de degr 9 (voir section suivante). On remarque sur la Figure 1.2 que pour des jeux
de donnes lgrement dirents, lapproximation au sens des moindres carrs ne change que
trs peu. Cest en fait une mthode stable numriquement, ce qui nest pas (pas toujours) le cas
de linterpolation de Lagrange, voir le contre-exemple dans lExemple 2.9.
Nous pouvons de plus tenter dextrapoler la valeur de la fonction en x = 2. En eet, une
valeur gnre pour x = 2 est f(2) = 40.8998, la valeur de lapproximation quadratique est

2
f(2) = 42.2559, alors que la valeur du polynme interpolant est
9
f(2) = 7.0738 10
5
!
Lapproximation par les moindres carrs donne ainsi une bonne reprsentation des donnes,
mme aux points o lon ne connat pas la fonction, et lutilisation de linterpolation de Lagrange
nest pas judicieuse pour ce genre de problme.
0 0.2 0.4 0.6 0.8 1
5
0
5
10
15
(a) Lissage 1
0 0.2 0.4 0.6 0.8 1
5
0
5
10
15
(b) Lissage 2
Fig. 1.2 Comparaison entre la mthode des moindres carrs et linterpolation de Lagrange
pour lisser des donnes exprimentales (croix). En trait plein lapproximation de degr 2 au
sens des moindres carrs ; en trait discontinu le polynme dinterpolation de Lagrange de degr 9
9
2 Interpolation polynomiale & noeuds quirpartis
2.1 Polynme de Lagrange
Nous voulons trouver un polynme
m
P
m
passant par n + 1 couples (x
i
, y
i
), appel
polynme dinterpolation ou polynme interpolant, tel que

m
(x
i
) = a
m
x
m
i
+ +a
1
x
i
+a
0
= y
i
i = 0, . . . , n.
Les points x
i
sont appels noeuds dinterpolation. Si n ,= m le problme est sr ou sous dtermin.
Si n=m, nous avons le thorme suivant :
Thorme 2.1. Etant donne n+1 points distincts x
0
, . . . , x
n
et n+1 valeurs correspondantes
y
0
, . . . , y
n
, il existe un unique polynme
n
P
n
tel que
n
(x
i
) = y
i
pour i = 0, . . . , n.
Dmonstration. Montrons lexistence en construisant
n
. Posons

i
P
n
:
i
(x) =
n

j=0
j=i
x x
j
x
i
x
j
i = 0, . . . , n.
Nous allons montrer que
i
, i = 0, . . . , n est une base de P
n
. Remarquons que comme
Card
i
, i = 0, . . . , n = n + 1 = dimP
n
, il sut de montrer que les
i
sont linairements
indpendants, cest--dire que :
_
n

i=0

i
= 0
_

0
=
1
= =
n
= 0 avec
i
R,
Or
i
(x
j
) =
ij
, o
ij
est le symbole de Kroenecker. Ainsi nous trouvons
j = 0, . . . , n 0 =
n

i=0

i
(x
j
) =
n

i=0

ij
=
j
.
Donc lensemble des polynmes caractristiques est une base de P
n
. En dcomposant
n
sur
cette base on a

n
(x) =
n

j=0
b
j

j
(x).
Or on veut

n
(x
i
) =
n

j=0
b
j

j
(x
i
) = y
i
, i = 0, . . . , n.
Comme
j
(x
i
) =
ij
on obtient b
i
= y
i
. Le polynme dinterpolation existe et scrit de cette
manire

n
(x) =
n

i=0
y
i

i
(x). (2.1)
Lunicit se montre comme ceci. Supposons quil existe
m
de degr m n, tel que
m
(x
i
) = y
i
,
pour i = 0, . . . , n. La dirence
n

m
est encore un polynme de degr n et sannule alors
en n + 1 points distincts x
i
, elle est donc nulle. Ainsi
m
=
n
.
10
La formule (2.1) est appele formule dinterpolation de Lagrange, et les polynmes
i
(x) sont
les polynmes caractristiques (de Lagrange).
Si y
i
= f(x
i
) pour une certaine fonction f donne, le polynme
n
(x) sera not
n
f(x)
Dnition 2.2. Le polynme nodale de degr n + 1, not
n+1
, est dnit par :

n+1
(x) =
n

i=0
(x x
i
).
Proposition 2.3. Le polynme dinterpolation
n
scrit sous la forme suivante :

n
(x) =
n

i=0

n+1
(x)
(x x
i
)

n+1
(x
i
)
y
i
.
Dmonstration. Nous avons

n+1
(x) =
n

j=0
n

i=0
i=j
(x x
i
),
ainsi

n+1
(x
i
) =
n

j=0
j=i
x
i
x
j
,
et nalement

n+1
(x)
(x x
i
)

n+1
(x
i
)
=
n

j=0
j=i
x x
j
x
i
x
j
=
i
(x).
Et on retrouve la formule (2.1).
Exemple 2.4. Considrons les couples de points suivants (0, 0), (1, 2), (2, 0) avec (x
0
= 0, y
0
=
0), . . . , (x
2
= 2, y
2
= 0) pour un degr polynomiale n = 2. Aprs avoir calcul les polynmes
caractristiques nous obtenons les rsultats suivants

0
(x) =
x
2
3x + 2
2

1
(x) = x
2
+ 2x

2
(x) =
x
2
x
2
.
Ce qui nous donne

2
(x) = 0(
x
2
3x + 2
2
) + 2(x
2
+ 2x) + 0(
x
2
x
2
) = 2x
2
+ 4x
2.2 Erreur dinterpolation
Dans cette section, nous donnons une valuation de lerreur dinterpolation faite quand on
remplace une fonction f (donne) par le polynme
n
f qui linterpole aux noeuds x
0
, x
1
, . . . , x
n
(par forcment quirpartis). De plus, nous obtenons une estimation plus ne de lerreur maxi-
male dans le cas particulier o les noeuds sont quirpartis sur un intervalle [a, b].
11
Thorme 2.5. Soient x
0
, . . . , x
n
, n + 1 noeuds distincts et soit x un point appartenant au
domaine de dnition de f. On suppose que f C
n+1
(I
x
), o I
x
est le plus petit intervalle
contenant les noeuds x
0
, . . . , x
n
et x. Lerreur dinterpolation au point x est donne par
E
n
(x) := f(x)
n
f(x) =
f
(n+1)
()
(n + 1)!

n+1
(x) (2.2)
o I
x
et
n+1
est le polynme nodal de degr n + 1.
Dmonstration. Le rsultat est trivial si x concide avec lun des noeuds dinterpolation car

n+1
(x
i
) = 0 i = 0, . . . , n. Autrement, dnissons pour t I
x
la fonction G(t) = E
n
(t)

n+1
(t)E
n
(x)/
n+1
(x). Comme nous savons que f C
n+1
(I
x
) et que
n+1
est un polynme
alors G C
n+1
(I
x
) et possde au moins n + 2 zros distincts dans I
x
. En eet,
G(x
i
) = E
n
(x
i
)
n+1
(x
i
)E
n
(x)/
n+1
(x) = 0, i = 0, . . . , n
G(x) = E
n
(x)
n+1
(x)E
n
(x)/
n+1
(x) = 0.
Par le thorme des valeurs intermdiaires, G

admet au moins n + 1 zros distincts, et par


rcurrence G
(j)
a au moins n+2j zros distincts. Par consquent, G
(n+1)
a au moins un zro,
quon note . Dautre part, puisque E
(n+1)
n
(t) = f
(n+1)
(t) et
(n+1)
n+1
(x) = (n + 1)! on obtient
G
(n+1)
(t) = f
(n+1)
(t)
(n + 1)!

n+1
(x)
E
n
(x)
ce qui donne, avec t = , lexpression voulue pour E
n
(x).
Corollaire 2.6. Soient x
0
, x
1
, . . . , x
n
[a, b], n + 1 noeuds quirpartis avec x
0
= a et x
n
= b.
On suppose que f C
n+1
([a, b]). Lerreur dinterpolation sur [a, b] est estime par
E
n
(f) = max
x[a,b]
[f(x)
n
f(x)[
1
4(n + 1)
_
b a
n
_
n+1
max
x[a,b]
[f
(n+1)
(x)[ (2.3)
Dmonstration. Notons |f|

= max
x[a,b]
[f(x)[. Le thorme 2.5 nous donne dj que
E
n
(f)
|f
(n+1)
|

(n + 1)!
|
n+1
|

. (2.4)
Il reste estimer |
n+1
|

. Soit x [a, b] avec x ,= x


i
i. On a que x I
k
= (x
k1
, x
k
) pour
un certain k 1, . . . , n. Comme les noeuds sont quirepartis, nous avons x
i+1
= x
i
+ h, o
h = (
ba
n
). On obtient
max
xI
k
[(x x
k1
)(x x
k
)[ =
h
2
4
de plus on peut estimer [x x
k2
[ par 2h, [x x
k3
[ par 3h etc. Do
|
n+1
|

= max
x[a,b]

i=0
(x x
i
)

_
h
2
4
_
(h
n1
n!) =
n!
4
h
n+1
(2.5)
En substituant (2.5) dans (2.4) on obtient
E
n
(f)
|f
(n+1)
|

(n + 1)!
|
n+1
|

=
|f
(n+1)
|

(n + 1)!
n!
4
_
b a
n
_
n+1
=
1
4(n + 1)
_
b a
n
_
n+1
max
x[a,b]
[f
(n+1)
(x)[,
ce quil fallait dmontrer.
12
Exemple 2.7. Interpolation de la fonction sinus. Nous avons appliqu linterpolation de
Lagrange la fonction f(x) = sin(x) sur lintervalle [0, 3], cela pour les degrs allant de 2 8.
Nous voyons dans la Figure 2.2(a) & (b), que linterpolation semble converger vers la fonction
sin(x) lorsque le degr augmente. Cela semble aussi vident dans le graphique 2.1 et la table 2.1
o nous comparons lerreur eective due linterpolation et lestimation thorique donne par
la formule (2.3).
Bien que cela conduise penser que le polynme interpolant converge vers la fonction f
quand n , nous verrons dans la section suivante que cela dpend en grande partie du choix
des noeuds dinterpolation.
2 3 4 5 6 7 8
0
1
2
3
4
5
6
7
8
9
Degr
E
r
r
e
u
r
s
Fig. 2.1 Erreur thorique (carrs) et erreur calcule (ronds) de linterpolation du sinus
0 2 4 6 8
1
0.5
0
0.5
1
1.5
(a) 2f (trait mixte), 3f (pointills) et
4f (trait discontinu).
0 2 4 6 8
1
0.5
0
0.5
1
1.5
(b) 5f (trait discontinu), 6f (trait mixte) et
8f (pointills).
Fig. 2.2 Interpolation de Lagrange avec noeuds quirpartis de la fonction f(x) = sin(x) (trait
plein).
13
Tab. 2.1 Tableau comparatif des erreurs dinterpolation du sinus pour les degrs 2 8. On
remarque que lerreur calcule est bien moindre que lestimation derreur thorique et que ces
deux erreurs tendent vers 0 lorsque n augmente
n E
n
(sin) =
max
x[0,3]
[ sin(x) sin(x)[
1
4(n+1)
(
3
n
)
n+1
max
x[0,3]
[ sin
(n+1)
(x)[
2 1.5925 8.7205
3 1.0000 6.0881
4 0.6363 3.6310
5 0.4224 1.8689
6 0.1301 0.8427
7 0.0895 0.3375
8 0.0162 0.1214
2.3 Dfauts de linterpolation polynomiale avec noeuds quirpartis
Nous tudions dans cette section le comportement de lerreur dinterpolation lorsque n tend
vers linni. On rappel que la norme du maximum dune fonction f C
0
([a, b]) est dnie par
|f|

= max
x[a,b]
[f(x)[
Nous introduisons une matrice triangulaire infrieure X de taille innie appele matrice din-
terpolation sur [a, b] dont les coecients x
ij
pour i, j = 0, 1, . . . , reprsentent des points de [a, b],
avec lhypothse que sur chaque ligne les coecients sont tous distincts. Pour n 0, la n+1-me
ligne de X contient n + 1 valeurs distinctes que lon identie des noeuds. Pour une fonction
f donne, on peut dnir de faon unique un polynme
n
f de degr n qui interpole f en ces
noeuds (le polynme
n
f dpend de X et de f). Pour une fonction f donne et pour une matrice
dinterpolation X, on dnit lerreur dinterpolation
E
n,
(X) = |f
n
f|

, n = 0, 1, . . .
On note p

n
P
n
la meilleure approximation polynomiale, i.e linterpolation pour laquelle
E

n
= |f p

n
|

|f q
n
|

q
n
P
n
.
On a alors le rsultat suivant :
Proprit 2.8. Soient f C
0
([a, b]) et X une matrice dinterpolation sur [a, b]. Alors
E
n,
(X) E

n
(1 +
n
(X)), n = 0, 1, . . .
o
n
(X) dsigne la constante de Lebesgue de X dnie par

n
(X) =
_
_
_
_
_
_
n

j=0
[
(n)
j
[
_
_
_
_
_
_

et o
(n)
j
P
n
est le j-ime polynme caractristique associ la n + 1-ime ligne de X,
cest--dire le polynme satisfaisant
(n)
j
(x
nk
) =
jk
, j, k = 0, 1, . . .
14
Puisque E

n
ne dpend pas de X, toute linformation concernant les eets de X sur E
n,
(X)
doit tre cherche dans
n
(X). Bien quil existe une matrice dinterpolation X

telle que
n
(X)
soit minimum, la dtermination explicite de ses coecients nest en gnral pas une tche facile.
Aussi, pour tout choix de X, il existe une constante C > 0 telle que (voir [Erd61])

n
(X) >
2

log(n + 1) C, n = 0, 1, . . .
Cette proprit implique que
n
(X) quand n , ce qui a des consquences importantes :
on peut en particulier montrer que pour une matrice dinterpolation X sur un intervalle [a, b], il
existe toujours une fonction continue f sur [a, b] telle que
n
f ne converge pas uniformment vers
f. Ainsi, linterpolation polynomiale ne permet pas dapprocher convenablement toute fonction
continue. Cest ce que montre lexemple suivant.
Exemple 2.9. Contre-exemple de Runge. Tentons dapprocher la fonction suivante
f(x) =
1
1 +x
2
, 5 x 5 (2.6)
en utilisant linterpolation de Lagrange avec noeuds quirpartis. On peut vrier quil existe
des points x lintrieur de lintervalle dinterpolation tels que
lim
n
[f(x)
n
f(x)[ , = 0.
En particulier, linterpolation de Lagrange diverge pour [x[ > 3.63 . . . . Ce phnomne est parti-
culirement vident au voisinage des extrmits de lintervalle dinterpolation, comme le montre
la Figure 2.3(b). Il est d au fait que les noeuds sont quirpartis. Notons quen choisissant conve-
nablement les noeuds, on peut tablir la convergence uniforme du polynme dinterpolation vers
la fonction f.
5 0 5
0.5
0
0.5
1
(a) 2f (trait mixte), 4f (pointills) et 5f
(trait discontinu).
5 0 5
4
3
2
1
0
1
(b) 8f (trait discontinu) et 12f (trait
mixte).
Fig. 2.3 Contre-exemple de Runge : interpolation de Lagrange avec noeuds quirpartis de la
fonction f(x) = 1/(1 +x
2
) (trait plein)
15
2 3 4 5 6 7 8 9 10 11 12
0
1
2
3
4
Degr
E
r
r
e
u
r
s
Fig. 2.4 Contre-exemple de Runge : Erreur dinterpolation pour la fonction f(x) = 1/(1+x
2
)
2.4 Stabilit du polynme dinterpolation
On note

f les valeurs rsultant de la perturbation dun ensemble de donnes f(x
i
) en des
noeuds x
i
[a, b], i = 0, . . . , n. La perturbation peut tre due, par exemple, aux erreurs darrondi
ou des erreurs dans des mesures exprimentales. En notant
n

f le polynme qui interpole les
valeurs

f(x
i
), on a
|
n
f
n

f|

= max
axb

j=0
(f(x
j
)

f(x
j
))
j
(x)


n
(X) max
i=0,...,n
[f(x
i
)

f(x
i
)[
Par consquent, de petites modications sur les donnes ninduisent des petites modications sur
le polynme dinterpolation que si la constante de Lebesgue est petite. Cette constante joue le
role de conditionnement pour le problme dinterpolation. Comme on la not prcdemment,
n
crot quand n . En particulier, pour linterpolation de Lagrange sur des noeuds quirpartis
on peut montrer que

n
(X)
2
n+1
e
n
log n
,
o e = 2.7183 . . . est le nombre de Neper. Ceci montre que, pour n grand, cette forme dinterpo-
lation peut devenir instable. Remarquer quon a laiss de ct jusqu prsent les erreurs lies
la construction de
n
f. On peut nanmoins montrer que leurs eets sont en gnral ngligeables.
16
3 Interpolation de Lagrange par morceaux
Lorsquon a des noeuds dinterpolation quirpartis, nous avons vu quon ne peut pas garantir
de convergence uniforme de
n
f vers f. Cependant, linterpolation de Lagrange de bas degr est
assez prcise quand on lutilise sur des intervalles petits (y compris avec des noeuds quirpartis).
On peut donc introduire une partition
h
de [a, b] en N sous-intervalles I
j
= [x
j
, x
j+1
] de longeur
h
j
, avec h = max
0jN1
h
j
, tels que [a, b] =
N1
j=0
I
j
et dutiliser une interpolation de Lagrange
sur chaque I
j
en k + 1 noeuds quirpartis x
(i)
j
, 0 i k, avec k petit. Pour k 1 et pour
une partition
h
donne, on introduit
X
k
h
= v C
0
([a, b]) : v
|I
j
P
k
(I
j
) I
j

h
j = 0, . . . , N 1
qui est lespace des fonctions continues sur [a, b] dont la restriction chaque I
j
est polynomiale
de degr k. Pour toute fonction f continue sur [a, b], le polynme dinterpolation par morceaux

k
h
f concide sur chaque I
j
avec linterpolant de f
|I
j
aux k + 1 noeuds x
(i)
j
, 0 i k. Par
consquent, si f C
k+1
([a, b]), en utilisant lquation (2.2) dans chaque intervalle, on obtient
lestimation derreur suivante
|f
k
h
f|

Ch
k+1
|f
(k+1)
|

. (3.1)
On peut obtenir une petite erreur dinterpolation mme pour des valeurs de k peu leves, ds
lors que h est assez petit .
Remarque : Par la suite nous utiliserons la notation
k
N
f pour le polynme dinterpolation de
degr k sur N morceaux.
0 2 4 6 8
1
0.5
0
0.5
1
(a)
1
4
f (trait mixte) et
1
8
f (trait discontinu).
0 2 4 6 8
1
0.5
0
0.5
1
(b)
1
10
f (trait mixte) et
1
20
f (trait discontinu).
Fig. 3.1 Interpolation linaire par morceaux de la fonction f(x) = sin(x) (trait plein).
Exemple 3.1. Interpolation par morceaux du sinus. Nous avons vu dans lexemple 2.7 le
rsultat de linterpolation de Lagrange du sinus sur lintervalle [0, 3]. Nous faisons ici de mme
pour linterpolation linaire (de degr k = 1) par morceaux.
On remarque dans la Figure 3.1(b) que linterpolation converge rapidement vers la fonction
lorsque quon augmente le nombre de morceaux. Dans la Figure 3.2 nous avons reprsent lerreur
dinterpolation ainsi que son estimation thorique donne par la formule (3.1).
Lutilisation dechelles logarithmiques permet de mettre en vidence lexposant de h dans
la formule. En eet, dans le cas o la partition est rgulire, on a h = (b a)/N, o N est le
17
nombre de morceaux. Le log nous donne donc :
log
_
|f
k
h
f|

_


C + (k + 1) log(h)
= (

C + (b a)) (k + 1) log(N) (3.2)
o

C = log
_
C|f
(k+1)
|

_
. Ici k = 1, donc la courbe derreur thorique, en echelle logarithmique,
est une droite de pente 2, et on voit que lerreur dinterpolation converge rapidement vers cette
droite. Ainsi, partir dun N assez grand, en doublant le nombre de morceaux, on quadruple le
degr de prcision.
2 3 4 5 6 7 8 10 15 20 30 40
10
3
10
2
10
1
10
0
10
1
log(N)
E
r
r
e
u
r
(
l
o
g
)
Fig. 3.2 Erreurs (ronds) pour linterpolation linaire par morceaux de la fonction sinus. En
trait plein lestimation thorique.
Exemple 3.2. Interpolation par morceaux de la fonction de Runge. Dans lExemple 2.9
nous avons interpol la fonction f(x) = 1/(1 +x
2
) sur lintervalle [5, 5] avec des noeuds qui-
rpartis. Nous avions vu que cette interpolation ne converge pas uniformment vers la fonction
lorsque le degr n tend vers linni. Ici nous obtenons de bien meilleurs rsultats en eectuant
une interpolation linaire par morceaux sur cette fonction.
La Figure 3.3(a) montre des polynmes dinterpolation avec un nombre impair de morceaux,
et dans la partie (b) les polynmes pour un nombre pair de morceaux. On voit quen partitionnant
lintervalle en morceaux de mme longueur, la symtrie de la fonction inue sur le rsultat de
linterpolation.
5 0 5
0
0.2
0.4
0.6
0.8
1
(a)
1
5
f (trait mixte) et
1
13
f (trait discontinu).
5 0 5
0
0.2
0.4
0.6
0.8
1
(b)
1
4
f (trait mixte) et
1
18
f (trait discontinu).
Fig. 3.3 Interpolation linaire par morceaux de la fonction f(x) = 1/(1 +x
2
) (trait plein).
18
Dans la Figure 3.4, nous avons compar lerreur eective et lestimation thorique comme
fait prcdemment dans lExemple 3.1 concernant linterpolation linaire par morceaux du sinus.
nouveau, linterpolation par morceaux converge vers la fonction, et lerreur eective converge,
en chelle logarithmique, vers la droite thorique de pente 2.
1 3 5 7 9 13 21 29 39
10
2
10
1
10
0
10
1
10
2
log(N)
E
r
r
e
u
r
(
l
o
g
)
(a) N impairs
2 4 6 8 10 14 20 26 32 40
10
2
10
1
10
0
10
1
log(N)
E
r
r
e
u
r
(
l
o
g
)
(b) N pairs
Fig. 3.4 Erreurs (ronds) pour linterpolation linaire par morceaux de la fonction de Runge.
En trait plein lestimation thorique.
19
4 Forme de Newton du polynme dinterpolation
La forme de Lagrange (2.1) du polynme dinterpolation nest pas la plus commode dun
point de vue pratique. Nous introduisons dans cette section une forme alternative dont le cot
de calcul est moins lev. Notre but est le suivant : tant donn n+1 paires x
i
, y
i
, i = 0, . . . , n
on veut reprsenter
n
(tel que
n
(x
i
) = y
i
avec i = 0, . . . , n) comme la somme de
n1
(tel
que
n1
(x
i
) = y
i
pour i = 0, . . . , n 1) et dun polynme de degr n qui dpend des noeuds
x
i
et dun seul coecient inconnu. On pose donc

n
(x) =
n1
(x) +q
n
(x), (4.1)
o q
n
P
n
. Puisque q
n
(x
i
) =
n
(x
i
)
n1
(x
i
) = 0 pour i = 0, . . . , n 1, on a ncessairement
q
n
(x) = a
n
(x x
0
) (x x
n1
) = a
n

n
(x).
Pour dterminer le coecient a
n
, supposons que y
i
= f(x
i
), i = 0, . . . , n, o f est une fonction
donne, pas ncessairement sous forme explicite. Puisque
n
f(x
n
) = f(x
n
), on dduit de (4.1)
que
a
n
=
f(x
n
)
n1
f(x
n
)

n
(x
n
)
. (4.2)
Le coecient a
n
est appel nime dirence divise de Newton et on le note en gnral
a
n
= f[x
0
, x
1
, . . . , x
n
] (4.3)
pour n 1. Par consquent, (4.1) devient

n
f(x) =
n1
f(x) +
n
(x)f[x
0
, . . . , x
n
]. (4.4)
En posant y
0
= f(x
0
) = f[x
0
] et
0
= 1, on obtient partir de (4.4) la formule suivante par
rcurrence sur n

n
f(x) =
n

k=0

k
(x)f[x
0
, . . . , x
k
]. (4.5)
Daprs lunicit du polynme dinterpolation, cette expression dnit le mme polynme que le
formule de Lagrange. La forme (4.5) est communment appele formule des dirences divises
de Newton du polynme dinterpolation.
4.1 Quelques proprits des dirences divises de Newton
On remarque que la nime dirence divise f[x
0
, . . . , x
n
] = a
n
est le coecient de x
n
dans

n
f. En isolant ce coecient dans (2.2) et en lidentiant avec le coecient correspondant dans
la formule de Newton (4.5), on obtient la dnition explicite
f[x
0
, . . . , x
n
] =
n

i=0
f(x
i
)

n+1
(x
i
)
. (4.6)
Cette formule a des consquences remarquables :
1. la valeur prise par la dirence divise est invariante par permutation des indices des
noeuds. Ceci peut tre utilis avec prot quand des problmes de stabilit suggrent
dchanger des indices (par exemple, si x est le point o le polynme doit tre calcul,
il peut tre commode dintroduire une permutation des indices telle que [x x
k
[
[x x
k1
[ pour k = 0, . . . , n) ;
20
2. si f = g +h pour , R, alors
f[x
0
, . . . , x
n
] = g[x
0
, . . . , x
n
] +h[x
0
, . . . , x
n
];
3. si f = gh, on a la formule suivante (appele formule de Leibniz) (voir [Die93])
f[x
0
, . . . , x
n
] =
n

j=0
g[x
0
, . . . , x
j
]h[x
j
, . . . , x
n
];
4. une manipulation algbrique de (4.6) donne la formule de rcurrence suivante permettant
le calcul des dirences divises
f[x
0
, . . . , x
n
] =
f[x
1
, . . . , x
n
] f[x
0
, . . . , x
n1
]
x
n
x
0
. (4.7)
laide de la formule (4.7), on peut calculer les dirences divises de Newton sous forme dune
matrice triangulaire infrieure stocke sous la forme suivante. Les coecients intervenant dans
x
0
f[x
0
]
x
1
f[x
1
] f[x
0
, x
1
]
x
2
f[x
1
] f[x
1
, x
2
] f[x
0
, x
1
, x
2
]
.
.
.
.
.
.
.
.
.
.
.
.
x
n
f[x
n
] f[x
n1
, x
n
] f[x
n2
, x
n1
, x
n
] . . . f[x
0
, . . . , x
n
]
la formule de Newton sont les lments diagonaux de la matrice.
.
En utilisant (4.7), seulement n(n + 1) additions et n(n + 1)/2 divisions sont ncessaires pour
constuire la matrice complte. Si on disposait de la valeur prise par f en un nouveau noeud
x
n+1
, on aurait calculer seulement une ligne supplmentaire (f[x
n
, x
n+1
], . . . , f[x
0
, . . . , x
n+1
]).
Ainsi, pour construire
n+1
f partir de
n
f, il sut dajouter
n
f le terme a
n+1

n+1
(x),
ce qui ncessite (n + 1) divisions et 2(n + 1) additions.
.
Remarquer que f[x
0
, . . . , x
n
] = 0 pour tout f P
n1
. Nanmoins cette proprit nest pas
toujours satisfaite numriquement car le calcul des dirences divises peut tre fortement aect
par des erreurs darrondi.
4.2 Erreur dinterpolation avec les dirences divises
Soit
n
f le polynme dinterpolation de f aux noeuds x
0
, . . . , x
n
et soit x un noeud distinct
des prcdents ; en posant x
n+1
= x, on note
n+1
f le polynme interpolant f aux noeuds
x
k
, k = 0, . . . , n + 1. En utilisant la formule des dirences divises de Newton, on a

n+1
f(t) =
n
f(t) + (t x
0
) (t x
n
)f[x
0
, . . . , x
n
, t].
Puisque
n+1
f(x) = f(x), on obtient lexpression suivante pour lerreur dinterpolation en
t = x :
E
n
(x) = f(x)
n
f(x) =
n+1
f(x)
n
f(x)
= (x x
0
) (x x
n
)f[x
0
, . . . , x
n
, x]
=
n+1
(x)f[x
0
, . . . , x
n
, x]. (4.8)
21
En supposant f C
(n+1)
(I
x
) et en comparant (4.8) (2.2), on a donc
f[x
0
, . . . , x
n
, x] =
f
(n+1)
()
(n + 1)!
(4.9)
pour un certain I
x
. Comme (4.9) est le reste du dveloppement de Taylor de f, la formule
dinterpolation de Newton (4.5) peut tre vue comme un dveloppement tronqu autour de x
0
( condition que [x
n
x
0
[ ne soit pas trop grand).
22
5 Interpolation dHermite-Birkho
On peut gnraliser linterpolation de Lagrange dune fonction f pour prendre en compte, en
plus de ses valeurs nodales, les valeurs de ses drives en certains noeuds (ou en tous les noeuds).
On se donne (x
i
, f
(k)
(x
i
)), pour i = 0, . . . , n, k = 0, . . . , m
i
o m
i
N.
En posant N =

n
i=0
(m
i
+1), on peut montrer (voir [Dav63]) que si les noeuds x
i
sont dis-
tincts, il existe un unique polynme H
N1
P
N1
, appel polynme dinterpolation dHermite,
tel que
H
(k)
N1
(x
i
) = y
(k)
i
, pour tous i = 0, . . . , n, et k = 0, . . . , m
i
.
Ce polynme scrit
H
N1
(x) =
n

i=0
m
i

k=0
y
(k)
i
L
ik
(x) (5.1)
o y
(k)
i
= f
(k)
(x
i
), pour tous i = 0, . . . , n, et k = 0, . . . , m
i
. Les fonctions L
ik
P
N1
sont
appeles les polynmes caractristiques dHermite et sont dnies par les relations
d
p
dx
p
(L
ik
)(x
j
) =
_
1 si i = j et k = p
0 sinon
En dnissant les polynmes

ij
(x) =
(x x
j
)
j
j
n

k=0
k=i
_
x x
k
x
i
x
k
_
m
k
+1
, i = 0, . . . , n, j = 0, . . . , m
i
et en posant L
im
i
(x) =
im
i
(x) pour i = 0, . . . , n, on a les relations de rcurrence suivantes pour
les polynmes L
ij
L
ij
(x) =
ij
(x)
m
i

k=j+1

(k)
ij
(x
i
)L
ik
(x) j = m
i
1, m
i
2, . . . , 0.
Concernant lerreur dinterpolation, on a lestimation
f(x) H
N1
(x) =
f
(N)
()
N!

N
(x) x R,
o I(x; x
0
, . . . , x
n
) et
N
est le polynme de degr N dni par

N
= (x x
0
)
m
0
+1
(x x
1
)
m
1
+1
(x x
n
)
mn+1
,
avec I(x; x
0
, . . . , x
n
) le plus petit intervalle contenant x, x
0
, . . . , x
n
.
23
Conclusion
Dans ce projet nous avons abord lapproximation au sens des moindres carrs, linterpolation
polynomiale avec noeuds quirpartis sur un ou plusieurs morceaux, ainsi que linterpolation
dHermite-Birkho qui prend en compte les valeurs aux noeuds, des drives dune fonction
en plus des valeurs de cette fonction. Il existe beaucoup dautres extensions de linterpolation
numrique :
La premire est ce quon appelle les fonctions splines, qui sont en fait des interpolations poly-
nomiales par morceaux, mais qui demandent en plus que les drives des polynmes interpolants
soient gales, cela aux points de jointure entre les morceaux. On obtient ainsi une fonction po-
lynomiale par morceaux qui est (au moins) C
1
, vue sur lensemble du domaine dinterpolation.
Ensuite, linterpolation peut se faire non pas grce des polynmes, mais par exemple avec des
polynmes trigonomtriques, ou des fonctions exponentielles.
La seconde extension concerne la dimension du problme. En eet, il est possible dinterpo-
ler des courbes paramtres (dans le plan ou lespace) et dinterpoler des surfaces de lespace
(surfaces paramtres, ou fonction de R
2
dans R). Les lecteurs interresss trouverons plus din-
formation sur ces sujets dans [Quart07].
24
Rfrences
[Axler97] S. Axler. (1997) Linear Algebra Done Right (Second Edition). Undergraduate Texts
in Mathematics, Springer-Verlag.
[Dav63] Davis P. (1963) Interpolation and Approximation. Blaisdell Pub., New York
[Die93] Dierckx P. (1993) Curve and Surface Fitting with Splines. Claredon Press, New York.
[Erd61] Erds P. (1961) Problems and Results on the Theory of Interpolation. Acta Math. Acad.
Sci. Hungar. 44 : 235-244
[Hess06] Hess Bellwald K. (2006) Algbre Linaire I / II (notes manuscrites de Pablo CROTTI)
[Quart07] A. Quarteroni, R. Sacco and F. Saleri, (2007) Mthodes numriques. Springer, Italia.
25
.
ANNEXE : CODES MATLAB
26
Programme 1 - Lissage : Gnration et lissage de donne alatoire
function Lissage
% LISSAGE Approxime un jeu de 10 points, perturbation dune loi quadratique
x = linspace(0,1,10);
f = 10*x.2+rand(size(x)); % perturbations sur la loi quadratique
pol9 = polyfit(x,f,9); % polynme interpolant de degr 9
pol2 = polyfit(x,f,2); % approximation de degr 2 au sens des moindres carrs
x2 = linspace(0,1,100);
y9 = polyval(pol9,x2);
y2 = polyval(pol2,x2);
figure(Name,Lissage);
axes(Box,on);
hold on;
plot(x,f,+r);
plot(x2,y9,--b);
plot(x2,y2,-k);
x = 2;
f2 = 10*x.2+rand(size(x)) %valeur relle de f au point x=2
y92 = polyval(pol9,2) %valeur du polynme interpollant en x=2
y22 = polyval(pol2,2) %valeur de lapproximation en x=2
legend(char(f,Degr 9,Degr 2),Location,NorthEastOutside);
return;
27
Programme 2 - LagrangeMorc : Interpolation de Lagrange par morceaux
function [X,Y,YFUN,E] = LagrangeMorc(fun,a,b,T,K,npoint)
% [X, Y, YFUN, E]=LagrangeMorc(fun,a,b,T,K,npoint) Fait linterpolation
% par morceaux de la function fun, sur lintervalle [a,b]
% T est un vecteur de noeuds qui dfinit la partition de [a,b].
% Si T est un scalaire, T est le nombre de morceaux quirepartis.
% K est le degr dinterpolation
% npoint est le nombre de point o il faut evaluer le polynme
% dinterpolation sur chaque intervalle
% X,Y sont les points du polynme, YFUN est les points de la fonction fun
% value en X
% E est lerreur maximale entre fun et le polynme
m = length(T);
if m == 1
xpart = linspace(a,b,T+1);
else
xpart = T;
end
m = length(xpart);
X = [];
Y = [];
for i=1:m-1
xnods = linspace(xpart(i),xpart(i+1),K+1);
ynods = feval(fun,xnods);
pol = polyfit(xnods,ynods,K);
xplot = linspace(xpart(i),xpart(i+1),npoint);
yplot = polyval(pol,xplot);
if i==1
X = xplot;
Y = yplot;
else %vite de doubler des points
X = [X(1:end-1),xplot];
Y = [Y(1:end-1),yplot];
end
end;
if nargout>2
YFUN = feval(fun,X);
E = max(abs(YFUN-Y));
end
return;
28

You might also like