You are on page 1of 54

Université des Sciences et Technologies de Lille

U.F.R. de Mathématiques Pures et Appliquées

M315 : Analyse numérique et


approximation

Notes de cours par Clément Boulonne

L3 Mathématiques 2008 - 2009


Table des matières

Objectifs et plan de cours 4


0.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
0.2 Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
0.3 Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1 Approximation par des fonctions splines 5


1.1 Rappel sur l’interpolation polynomiale . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Existence et unicité du polynôme d’interpolation . . . . . . . . . . . . . . 5
1.1.2 Formule de Lagrange du polynôme d’interpolation . . . . . . . . . . . . . 6
1.1.3 Base de Newton - Différences divisées . . . . . . . . . . . . . . . . . . . . 6
1.1.4 Formule de l’erreur d’interpolation . . . . . . . . . . . . . . . . . . . . . 7
1.1.5 Quelques problèmes d’interpolation polynômiale . . . . . . . . . . . . . . 7
1.2 Fonctions splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Splines cubiques interpolants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Propriété extremale des splines de degré impair . . . . . . . . . . . . . . . . . . 13
1.5 La base des B-splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 Estimation de l’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7 Courbes splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.7.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.7.2 Courbe ouverte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.7.3 Courbes fermés périodiques . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.7.4 Algorithme d’évaluation de De Boor-Cox . . . . . . . . . . . . . . . . . . 28

2 Approximation au sens des moindres carrés 29


2.1 Meilleure approximation dans un espace normé . . . . . . . . . . . . . . . . . . 29
2.1.1 Premiers résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.1.2 Unicité de la meilleure approximation . . . . . . . . . . . . . . . . . . . . 30
2.2 Meilleure approximation dans un espace préhilbertien . . . . . . . . . . . . . . . 31
2.2.1 Algorithme de Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . 34
2.2.2 Approximation à une précision donnée . . . . . . . . . . . . . . . . . . . 35

3 Polynômes orthogonaux et formules de quadrature 37


3.1 Quelques propriétés des polynômes orthogonaux . . . . . . . . . . . . . . . . . . 37
3.2 Exemples de familles de polynômes orthoognaux . . . . . . . . . . . . . . . . . . 40
3.3 Formule de quadrature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.3.1 Formules de quadrature interpolatoire . . . . . . . . . . . . . . . . . . . . 42
3.3.2 Méthodes composites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3.3 Formules de quadrature de Gauss . . . . . . . . . . . . . . . . . . . . . . 46

2
3

4 Approximation en norme uniforme 50


4.1 Réduction de l’erreur d’une approximation . . . . . . . . . . . . . . . . . . . . . 50
4.2 Caractérisation de la meilleure approximation . . . . . . . . . . . . . . . . . . . 51
4.3 Algorithme de calcul de Remez (exchange algorithm) . . . . . . . . . . . . . . . 53
Objectifs et plan de cours

0.1 Objectifs
→ Approximation de fonctions, courbes surfaces, intégrales.
→ Définir en quel sens on considère l’approximation.
→ Donner les algorithmes pour construire les approximations.
→ Estimation d’erreurs.
→ Définir les espaces où on cherche l’approximation.

0.2 Plan
1) Approximation de fonctions et de courbes par des fonctions splines (polynomial par mor-
ceaux). Algorithmes de calcul, estimations d’erreurs.
2) Meilleure approximation dans l’espace normé, les espaces d’Hilbert, au sens des moindres
carrés.
3) Polynômes orthogonaux. Application au calcul d’intégrales.
4) Meilleure approximation uniforme (L∞ ), existence, unicité, caractérisation de la meilleure
approximation. Algorithme de calcul.

0.3 Bibliographie
1) Philip J. Davis : Interpolation and Approximation, Dover Publications, 1976
2) M.J.D Powell : Approximation Theory and Methods, Cambridge University Press, 1981
3) Jean-Pierre Demailly : Analyse numérique et équations différentielles, Grenoble Sciences,
2006
4) Carl de Boor : A Practical Guide to Splines

4
Chapitre 1

Approximation par des fonctions


splines

1.1 Rappel sur l’interpolation polynomiale


Etant données x0 , x1 , ..., xn ∈ R distincts et les valeurs f (x0 ), f (x1 ), ..., f (xn ). Il existe un et
un seul polynôme pn de degré ≤ n tel que :
pn (xi ) = f (xi ), i = 0, ..., n

1.1.1 Existence et unicité du polynôme d’interpolation


On aura donc :
pn (x) = a0 + a1 x + ... + an xn
Les conditions d’interpolation se resument par la résolution du système linéaire suivant :
1 x0 x20 · · · xn0
    
a0 f (x0 )
2 n  
1 x1 x1 · · · x1   a1   f (x1 ) 
  
.
. .. . .   .. 
   =  .. 
  (∗)
. . .  .   . 
1 xn x2n · · · xnn an f (xn )
| {z }
Matrice de Vandermonde
| {z }
n+1 équations à n+1 inconnus

Soit : Y
∆ = det A = (xj − xi ) 6= 0
0≤j<i≤n

Cela implique que le système linéaire (∗) a une solution unique.

5
6 Chapitre 1. Approximation par des fonctions splines

1.1.2 Formule de Lagrange du polynôme d’interpolation


La formule de Lagrange du polynôme d’interpolation est la suivante :
n
X
pn (x) = f (xj )lj (x)
j=0
avec : n
Y (x − xi )
lj (x) = pour j = 0, ..., n
i=0,i6=j (xj − xi )
On appelle (l0 , ..., ln ) la base de Lagrange. Les lj (j = 0, ..., n) suivent la propriété suivante :
Propriété 1.1.1. lj (xk ) = δjk .

1.1.3 Base de Newton - Différences divisées


Notation. Notons par [x0 , x1 , ..., xk ]f le coefficient dominant du polynôme pk (qui interpole f
aux points x0 , ..., xk ), c’est-à-dire :
k
X xj
[x0 , ..., xk ]f =
i=0,i6=j xj − xi
Q
j=0

[x0 , ..., xk ]f est appelé différence d’ordre k de f .


Si on considère pk − pk−1 , c’est un polynôme de degré ≤ k.
pk (xi ) − pk−1 (xi ) = 0, i = 0, ..., k − 1
Le coefficient dominant est [x0 , x1 , ..., xk ]f est :
k−1
Y k−1
Y
(pk − pk−1 )(x) = (x − xi )[x0 , x1 , ..., xk ]f ⇒ pk (x) = pk+1 (x) + [x0 , ..., xk ]f (x − xi )
i=0 i=0

Par réccurence :
n k
!
X Y
pn (x) = f (x0 ) + [x0 , x1 , ..., xk ]f (x − xi )
k=1 i=0
La formule précédente est appelée la formule de Newton. La base de Newton est la suivante :
(x − x0 ), (x − x0 )(x − x1 ), ..., (x − x0 )(x − x1 )...(x − xn )

Calcul recursif des différences divisées



[x
0 ]f
= f (x0 )
[x0 , x1 , ..., xk ]f = [x1 ,...,xk ]f −[x0 ,...,xk−1 ]f
xk −x0
On a :
[xi ]f = f (xi )

Démonstration. Voir M206 II-1.5.


(x − x0 )qk−1 (x) − (x − xk )pk−1 (x)
pk (x) =
xk − x0
qk−1 est le polynôme d’interpolation aux points x1 , ..., xk .
Chapitre 1. Approximation par des fonctions splines 7

1.1.4 Formule de l’erreur d’interpolation


Theorème 1.1.2. Soient x, x0 , ..., xn ∈ [a, b] et f ∈ C n+1 ([a, b]). Alors ∃ξx ∈] min(x, xi ), max(x, xi )[
tel que :
1
f (x) − pn (x) = Πn+1 (x)f (n+1) (ξx )
(n + 1)!
avec : n Y
Πn+1 (x) = (x − xi )
i=0
Démonstration. Voir M206 II-1.6. Elle est bassée sur le théorème de Rolle.

1.1.5 Quelques problèmes d’interpolation polynômiale


L’erreur d’interpolation dépend du choix des abscisses et de la régularité de la fonction.
Exemple 1.1.1. Si on choisit des abscisses équidistribuées dans [a, b], c’est-à-dire :
b−a
xj = a + jh, h =
n
On peut montrer que :
hn+1
|f (x) − pn (x)| =≤ max |f (n+1) (x)| ≤ ε
n + 1 x∈[a,b]
→ on obtient de bonnes approximation si f est "suffisament" régulière.
Problème. f ∈ C([a, b])\C 1 ([a, b])
Exemple 1.1.2. On peut prendre comme abscisses les :
2i + 1
 
xi = cos π , i = 0, ..., n
2n + 2
Les xi representent les racines des polynômes de Tchebychev1 .
Un polynôme de degré élevé présent souvent des oscillations qui peuvent provoquer des
erreurs de grand module (phénomène de Runge).
1
Exemple 1.1.3. On considère : f (x) = x2 +1
, x ∈ [−1, 1]

1
Tn (cos(x)) = cos(nx)
8 Chapitre 1. Approximation par des fonctions splines

La courbe en rouge représente la fonction f (x), la courbe bleue est le polynôme interpolateur
de degré 5 et la courbe verte est le polynôme interpolateur de degré 9. L’approximation est de
plus en plus mauvaise.

Donc : pour une fonction regulière et des points équidistants, |f (x) − pn (x)| ne converge pas
vers 0 et n’est pas bornée pour certains x.
Pour remédier à ce type de problème, on va chercher l’approximation dans une autre classe
de fonctions : fonctions splines.
On considère une partition de l’intervalle [a, b] :

a = t0 < t1 < ... < tn = b

et on va construire s telle que :


• ∀j ∈ 1, ..., n, sj = s|[lj ,lj+1 ] ∈ Pk (espace des polynômes de degré ≤ k).
• s ∈ C m ([a, b]) pour m le plus grand possible.
(j)
k
s (t1 ) s(j) (t−
1)
aj (x − t1 )j , aj = 1
X
s1 (x) = =
j=0 j! j!
(j)
k
s (t1 ) s(j) (t+
1)
bj (x − t1 ) , bj = 2
j
X
s2 (x) = =
j=0 j! j!
Pour avoir une régularité C m :
• s(j) (t1 ) = s(j) (t+
1 ), j = 0, ..., m
• aj = bj , j = 0, ..., m.
• Si m > k ⇒ s est un polynôme de degré ≤ k. On doit avoir m < k. Donc on va considérer
m = k.

1.2 Fonctions splines


Définition 1.2.1. n, k des entiers ≥ 1, t0 < t1 < ... < tn noeuds de la subdivision. On considère
Sk = Sk (t0 , t1 , ..., tn ) l’espace des fonctions s : [t0 , tn ] → R de classe C k−1 ([t0 , tn ]) et telles que :

s|[tj−1 ,tj ] ∈ Pk , j = 1, ..., n

est un espace vectoriel (sous-espace vectoriel de C k−1 ([a, b])).

Lemme 1.2.1. On considère les n + k fonctions suivantes :



 p (x)
 j

 = (x − t0 )j , j =0, ..., k
(x − t )k si x ≥ t
k j j


 ϕj (x) = (x − t j )+ = 0 si x < tj
, j = 1, .., n − 1

{pj }j=0,...,k ∪ {ϕj }j=1,...,n forment une base Sk (t0 , ..., tn ) et donc dim(Sk ) = n + k.
k
X n−1
X
∀s ∈ Sk , s(x) = aj pj (x) + bj ϕj (x)
j=0 j=1

avec :
(k) −
s(j) (t+
0) s(k) (t+
j ) − s (tj )
aj = et bj =
j! k!
Chapitre 1. Approximation par des fonctions splines 9

Démonstration. Les fonctions appartiennent à Sk :


(i) évident pour pj
(l) (l) (k−1)
(ii) ϕj (t− +
j ) = 0, ∀l, ϕj (tj ) = 0, ∀l ≤ k − 1 et ϕj (t+
j ) = k!.
Il suffit de montrer que : ∀s ∈ Sk , ∃!a0 , ..., ak , b1 , ..., bn−1 tel que :
k
X n−1
X
s= aj p j + bj ϕj
j=0 j=1

On procède par réccurence sur n. Pour n = 1, Sk (t0 , t1 ) = {p|[t0 ,t1 ] , p ∈ Pk }. {p0 , ..., pk } est la
base de Taylor. Supposons vrai pour n − 1. Soit s ∈ Sk (t0 , ..., tn ), s|[t0 ,tn−1 ] ∈ Sk (t0 , ..., tn−1 ) et
par réccurence :
k
X n−2
X
∃!a0 , ..., ak , b1 , ...bn−2 , s|[t0 ,tn−1 ] = s̃(x) = aj pj (x) + bj ϕj (x)
j=0 j=1

Au voisinage de tn−1 , s et ϕn−1 ∈ C k−1 et s̃ ∈ C k . ∀b ∈ R, ∀l = 0, ..., k − 1, on considère :


(s − s̃ − bϕn−1 )(l) .
(l) −
(t+
n−1 ) = (s − s̃) (tn−1 ) = 0

l=k:

(s − s̃ − bϕn−1 )(k) (t+ (k) + (k) +


n−1 ) = s (tn−1 ) − s̃ (tn−1 ) − bk! (1.1)
(k) −
= s(k) (t+
n−1 ) − s̃ (tn−1 ) − bk! (1.2)
= s (k)
(t+
n−1 ) −s (k)
(t−
n−1 ) − bk! (1.3)

Le passage de (1.1) à (1.2) s’explique par s̃ ∈ C k et (1.2) → (1.3) par s = s̃|[t0 ,tn−1 ] .
Sur [tn−1 , tn ], p = s − s̃ − bϕn−1 est un polynôme de degré k tel que :

p(l) (t+ = 0, l = 0, ..., k − 1
n−1 )
p(k) (t+
n−1 ) = 0 pour b = bn−1

avec :
s(k) (t− (k) −
n−1 s (tn−1 )
bn−1 =
k!
bn−1 est choisi tel que (1.3) = 0. Donc :

p = 0 ⇔ s(x) = s̃(x) + bn−1 ϕn−1 (x), x ∈ [tn−1 , tn ]

Vrai pour [t0 , tn ].

1.3 Splines cubiques interpolants


On considère le cas où k = 3.
Theorème 1.3.1. Pour toute fonction f , il existe s ∈ S3 (t0 , ..., tn ) vérifiant les conditions
d’interpolation.
s(ti ) = f (ti ), i = 0, ..., n
De plus, s est unique si on impose :
(a) les valeurs de s00 (t0 ) et s00 (tn )
10 Chapitre 1. Approximation par des fonctions splines

ou
(b) les valeurs s0 (t0 ) et s0 (tn ).
Si de plus, f ∈ C 2 ([a, b]) et si :
(a∗) s00 (t0 ) − s00 (tn ) = 0, splines naturelles.
ou
(b∗) s0 (t0 ) = f 0 (t0 ) et s0 (tn ) = f 0 (tn ),
Alors :
ks00 kL∞ ([a,b]) = max |s00 (x)| ≤ 3kf 00 kL∞ ([a,b])
[a,b]

Remarque. dim S3 (t0 , ..., tn ) = n+3. On a n+1 conditions d’interpolation et 2 autres conditions
((a) et (b)).

Démonstration pour le cas (a). On note sj = s(tj ) = f (tj ) = fj (pour j = 0, ..., n). On note
aussi s00j = s00 (tj ) et ∆tj = tj+1 − tj . comme s ∈ S3 alors s ∈ C 2 et donc s00 est linéaire par
morceaux. Donc pour x ∈ [tj , tj+1 ],

tj+1 − x x − tj
s00 (x) = s00j + s00j+1
tj+1 − tj tj+1 − tj

Si on intégre deux fois la fonction s00 :

(tj+1 − x)2 (x − tj )2
s0 (x) = −s00j + s00j+1 + αj (1.4)
2∆tj 2∆tj

(tj+1 − x)3 (x − tj )3
s(x) = s00j + s00j+1 + αj (x − tj ) + βj
6∆tj 6∆tj
Ici, on a utilisé que s est un polynôme de degré 3 par morceaux et que s ∈ C 2 . On utilise ensuite
les conditions d’interpolation : sj = fj et la continuité :
2
00 ∆tj
fj = sj + βj (1.5)
6

∆t2j
fj+1 = s00j+1 + αj ∆tj + βj (1.6)
6
De (1.5), on détermine les βj et de (1.6), les αj . Reste à imposer que :

s0 (t+ 0 −
j ) = s (tj ), j = 1, ..., n − 1 (1.7)

Pour calculer s0 (t− 0 +


j ), on considère (1.4) sur l’intervalle [tj−1 , tj ] et s (tj ), on considère (1.4) sur
l’intervalle [tj , tj+1 ].
00 ∆tj
s0 (t+
j ) = −sj + αj (1.8)
2
On fait (1.5) − (1.6) qu’on diviser par ∆tj :

fj+1 − fj ∆tj ∆tj


= [tj , tj+1 ]f − s00j+1 − s00j + αj
∆tj 6 6

Rappel. [tj , tj+1 ]f est la différence divisée au points tj , tj+1 de f .


Chapitre 1. Approximation par des fonctions splines 11

Donc (1.8) devient :

∆tj ∆tj ∆tj


s0 (t+ 00
j ) = −sj − s00j+1 + s00j + [tj , tj+1 ]f
2 6 6
Pour s0 (t−
j ) :

∆tj−1 ∆tj−1 ∆tj−1 ∆tj−1


s0 (t− 00
j ) = sj + αj−1 = s00j − s00j − s00j−1 + [tj−1 , tj ]f
2 2 6 6
Donc (1.7) s’écrit :

∆tj−1 00 ∆tj−1 + ∆tj 00 ∆tj 00


sj−1 + sj + s = [tj , tj+1 ]f − [tj−1 , tj ]f
6 3 6 j+1
1 ∆tj−1 1 ∆tj
s00j−1 + s00j + s00j+1 = 3[tj−1 , tj , tj+1 ]f
2 ∆tj−1 + ∆tj 2 ∆tj+1 + ∆tj
| {z } | {z }
1−γj γj

1 1
(1 − γj )s00j−1 + s00j + γj s00j+1 = 3[tj−1 , tj , tj+1 ], j = 1, ..., n − 1
2 2
00 00
On a fixé s0 et sn . On a alors à résoudre AX = Y :
 
3[t0 , t1 , t2 ]f − 21 (1 − γ1 )s000
1
s001
  
1 γ
2 1 3[t1 , t2 , t3 ]f
 
1
 2 (1 − γ2 )
1
s002
 
1 γ
2 2



 
..

 .  =  

.. .. ..  .  . 

. . .  .   
3[t , t , t ]
  
1 00 n−3 n−2 n−1 f
(1 − γn ) 1 s n−1

1 00

2 3[tn−2 , tn−1 , tn ]f − 2 γn sn

Il reste à montrer que A inversible, Y = 0 ⇒ X = 0. Soit :

|xp | = kXk∞ = max |xj |, 1 ≤ p ≤ n − 1


1≤j≤n
1 − γp γp


≤ xp−1 + xp + xp+1 = |yp |

2 2
1 − γp γp 1
kxk∞ = |xp | ≤ |yp | + |xp+1 | + |xp | ≤ kyk∞ + kxk∞
2 2 2
kxk∞
≤ kyk∞ ⇔ kxk∞ ≤ 2kyk∞
2
⇒ (y = 0 ⇒ x = 0) ⇒ A inversible ⇒ solution unique.

t
j+1 − x x − t
j
ks00 kL∞ [t0 ,tn ] ≤ max max |s00j | + |s00j+1 |


0≤j≤n−1 x∈[tj ,tj+1 ] ∆tj ∆tj
≤ max |s00j | = kxk∞ ≤ 2kyk∞
1≤j≤n

3
kyk∞ = 3 max |[tj−1 , tj , tj+1 ]f ≤ kf 00 kL∞ [t0 ,tn ]
1≤j≤n−1 | {z } 2
f 00 (ξj )
2
car f ∈C 2
12 Chapitre 1. Approximation par des fonctions splines

Corollaire. Soit sn (f ) le spline cubique interpolant :

s0 (t0 ) = f 0 (t0 ), s0 (tn ) = f 0 (tn )

Alors f ∈ C 2 ([t0 , tn ]), on a :

1
kf − sn (f )kL∞ [tj ,tj+1 ] ≤ (∆tj ) inf kf 00 − σkL∞ [t0 ,tn ]
2 σ∈S1 (t0 ,...,tn )

et si f ∈ C 4 ([t0 , tn ]) :

1
kf − sn (f )kL∞ ≤ max s(tj )4 kf (4) kL∞ ([t0 ,tn ]) ≤ ε
16 j

Démonstration. σ̃ ∈ S3 (t0 , t1 , ..., tn ), σ̃ + sn (f ) ∈ Sn et vérifie les conditions d’interpolation


pour σ̃ + f . Par unicité de la spline cubique interpolante :

sn (σ̃ + f ) = σ̃ + sn (f )

Soit g ∈ C 2 ([tj , tj+1 ]) et on considère le polynôme de degré 1, qui interpole g aux points tj , tj+1
et l’erreur d’interpoltaion vérifie :

x − tj x − tj+1 1 00 (∆tj )2
max g(x) − g(tj+1 ) − g(tj ) ≤ max |g (ξ)| max |(x−tj )(x−tj+1 )| ≤ k

x∈[tj ,tj+1 ] tj+1 − tj tj − tj+1 2 ξ∈[tj ,tj+1 ] [tj ,tj+1 ] 8
(1.9)
On applique ce résultat à :

g(x) = f (x) − sn (f )(x) = (f + σ̃ − sn (f + σ̃))(x), g(tj ) − g(j+1) = 0

(∆tj )2
kgkL∞ ([tj ,tj+1 ] = kf − sn (f )kL∞ ([tj ,tj+1 ] ≤ inf kf 00 + σ̃ 00 − sn (f + σ̃)00 kL∞
8 σ̃∈S 3

En appliquant le résultat du Théorème 1.3.1..

ks00n (f + σ̃)kL∞ ([t0 ,tn ]) ≤ 3k(f + σ̃)00 kL∞ ([t0 ,tn ])

Donc :
1
kgkL∞ ([t0 ,tn ]) ≤ [∆tj )2 inf kf 00 + σ̃ 00 k
2 σ̃∈S3

On applique maintenant (1.9) à la fonction g = f 00 (∈ C 2 ) et on prend σ ∈ S3 interpole aux


points ti .
(∆ti )2 (4)
kf 00 − σkL∞ [tj ,tj+1 ] ≤ kf kL∞ [tj ,tj+1 ]
8
1
kf 00 − σkL∞ [t0 ,tn ] ≤ max(∆tj )2 kf (4) kL∞ ([t0 ,tn ]
8
1
kf − sn (f )kL∞ [t0 ,tn ] ≤ max(∆tj )4 kf (4) kl∞ [t0 ,tn ]
16 j
Chapitre 1. Approximation par des fonctions splines 13

1.4 Propriété extremale des splines de degré impair


Soient a = t0 < t1 < ... < tn = b et 1 ≤ k ≤ n − 1 :

Définition 1.4.1. s ∈ S2k−1 (t0 , t1 , ..., tn ) est dite spline naturelle si ∀l = k, k + 1, ..., 2k − 2 :

s(l) (a) = s(l) (b) = 0 (2k − 2 conditions)

Une fonction g est dite interpolante de f si et seulement si g(tj ) = f (tj ), j = 0, ..., n.

Theorème 1.4.1 (Théorème de minimisation). Il existe une unique spline naturelle interpo-
lante s ∈ S2k−1 . De plus, pour toute fonction g ∈ C k ([a, b]) interpolante, on a :

kg (k) kL2 ([a,b]) ≥ ks(k) kL2 ([a,b])

avec égalité g = 0.

Remarque. • Pour k = 2, on obtient avec une autre caractérisation des splines naturelles
interpolnates.
– dim S2k−1 (t0 , ..., tn ) = n + 2k − 1, le sous-espace des splines naturelles reste de dimension
m ≥ n + 1.

Lemme 1.4.2. Soient s spline naturelle d’interpolation et g ∈ C k ([a, b]) une fonction d’inter-
polation. Alors : Z b
I= s(k) (x)(g (k) (x) − s(k) (x))dx = 0
a

Démonstration. Intégration par parites (s ∈ C 2k+1 ) k − 1 fois :


 b Z b
(k) (k+1)
I = s (x)(g − s) (x) − s(k−1) (x)[(g − s)(k−1) (x))dx
a a
= ...
k−2  b Z b
j (k+j) (k−1−j) k−1
s(2k−1) (x)(g 0 (x) − s0 (x))dx
X
= (−1) s (x)(g − s) (x) +(−1)
j=0 a a
| {z }
=0
n−1 Z tj+1
= (−1)k−1 (g 0 (x) − s0 (x))dx
X
ej
j=0 tj

n−1  tj+1
= (−1)k−1
X
ej g(x) − f (x)
j=0 tj
| {z }
=0

Démonstration du Théorème 1.4.1. Soit {b1 , b2 , ..., bn+2k−1 } base S2k−1 . Donc :
n+2k−1
X
s(x) = αi bi (x)
i=1

Les combinaisons de spline naturelle s’écrit :


n+2k−1
(l)
s(l) (a) =
X
αi bi (a) = 0, l = k, ..., 2k − 2 (1.10)
i=1
14 Chapitre 1. Approximation par des fonctions splines

n+2k−1
(l)
X (l)
s (b) = αi bi (b) = 0, l = k, ..., 2k − 2 (1.11)
i=1

Les conditions d’interpolations :


n+2k−1
X
s(tj ) = αi bi (tj ) = f (tj ), j = 0, ...n (1.12)
i=1

(1.10), (1.11) et (1.12) forment un système linéaires de 2k + n − 1 équations et 2k + n − 1


inconnues.  
0
 . 
 . 
 . 
 0 
 
Aα = c, A ∈ M(2k+n−1)(2k+n−1) , c =  
 f (t ) 
 0 
 . 
 . 
 . 
f (tn )
Il suffit de démonter que A est inversible et donc il suffit de montrer c = 0 ⇒ α = 0 pour
conclure l’existence et l’unicité. Soit f = 0 ⇒ c = 0. On va utiliser le Lemme 1.4.2. avec
g = 0 (interpolante).
Z b
(s(k) (x))2 dx = 0 ⇒ s(k) = 0
a

s est un polynôme de degré k − 1 aec n + 1 zéros aux points ti ⇒ s = 0.

Propriété 1.4.3 (Propriété de minimalité).


Z b Z b Z b Z b Z b
g (k) (x)2 dx − s(k) (x)2 dx = (g (k) − s(k) )(x) +2 s(k) (x)f (k) (x)dx − 2 s(k) (x)dx
a a a a a
| {z }
≥0
Z b
≥ −2 s(k) (x)(s(k) (x) − g (k) (x)) dx
|a {z }
=0

Z b !1/2 Z b !1/2
(k) 2 (k)
⇒ kg kL2 [a,b] = g(x) dx ≥ s (x)dx
a a
| {z }
ks(k) kL2

On a égalité si et seulement si :
Z b
(g (k) − s(k) )2 (x)dx = 0
a

g (k) − s(k) |[a,b] = 0 ⇒ g − s ∈ Pk−1 s’annule en n + 1 points ⇒ g = s.

1.5 La base des B-splines


– fonctions positives "localisés" support compact (non nulles dans un petit nombre de sous
intervalles).
Chapitre 1. Approximation par des fonctions splines 15

Définition 1.5.1. Etant donnés ... < t0 < t1 < ... < tn < .... On définit réccursivement :
 
 1 sur [tj , tj+1 ]
0
Nj (x) =



0 sinon

k x − tj tj+k+1 − x
Nj (x) = Njk−1 (x) + N k−1 (x)


tj+k+1 − tj+1 j+1

tj+k − tj

Considérons le cas particulier des noeuds équidistants :

∀j, tj = t0 + jh

et on note Ñk = N0k la B-spline pour tj = j. Aolors :

x − tj
 
Njk (x) = Ñ k
h

Exemple 1.5.1.


x si x ∈ [0, 1]
N01 (x) = xN00 (x) − (1 − x)N10 (x) =
2 − x si x ∈ [1, 2]

et ;
x 1 3−x 1
N02 (x) = N0 (x) + N1 (x)
2 2
avec : 
x − 1 si x ∈ [1, 2]
N11 = 
3 − x si x ∈ [2, 3]

Donc :
 2
x

2
 si x ∈ [0, 1]
N02 (x) = −x2 + 3x − 3/2 si x ∈ [1, 2]
 (3−x)2


2
si x ∈ [2, 3]
16 Chapitre 1. Approximation par des fonctions splines

Theorème 1.5.1 (Propriété des B-Splines). a) ∀x ∈ [tj , tj+k+1 [, Njk (x) > 0 et ∀x 6∈ [tj , tj+k+1 [,
Njk (x) = 0, c’est-à-dire supp(Njk ) = [tj , tj+k+1 ].
k
Njk (x) Njk (x) = 1 (k + 1 splines naturelles).
X X
b) = 1 et pour x ∈ [tr , tr+1 ],
j∈Z j=r−k
0
c) On note Df = f . Pour k ≥ 1, x 6∈ {ti } :

Njk−1 (x) k−1 !


Nj+1 (x)
DNjk (x) =k −
tj+k − tj tj+k+1 − tj+1

d) Njk |[t0 ,tn ] ∈ Sk ([t0 , tn ])


Démonstration. a) k = 0, trivial.
x − tj tj+k+1 − x
Njk (x) = Njk−1 (x) + k−1
Nj+1 (x)
tj+k − tj | {z } tj+k+1 − tj+1 | {z }
} =0 si x6∈|tj ,t } =0 si x∈[tj+1 ,t
j+k [ j+k+1 [
| {z | {z
>0 >0

Njk (x) > 0, ∀x ∈ [tj , tj+k+1 [


b) Soit x ∈ [tr , tr+1 [, ∀j tel que j + k + 1 ≤ r (⇔ j ≤ r − k + 1) ⇒ Njk (r) = 0 et ∀j tel que
j ≥ r + 1 ⇒ Njk (x) = 0. Donc :
r
Njk (x) = Njk (x)
X X

j∈Z j=r−k
x − tj X tj+k+1 − x
Njk−1 (x) + k−1
X
= Nj+1 (x)
j tj+k − tj j tj+k+1 − tj+1
X x − tj X tj+k − x
= Njk−1 (x) + Njk−1
j tj+k − t j j tj+k − tj

Njk−1 (x) = 1
X
=
j
Chapitre 1. Approximation par des fonctions splines 17

x − tj Nj0 (x)
c) k = 1, x ∈ [tj , tj+1 [, Nj1 (x) = ⇒ DNj1 = et x ∈]tj+1 , tj+2 [, Nj1 (x) =
tj+1 − tj tj+1 − tj
tj+2 − x N0j+1 (x)
⇒ DNj1 = .
tj+2 − tj+1 tj+2 − tj−1

Nj0 (x) Nj0 (x)


DNj1 (x) = − pour x ∈]tj , tj+2 [
tj+1 − tj tj+2 − tj+1
On peut montrer par reccurence que ;

Njk−1 (x) x − tj k−1


Nj+1 (x) tj+k+1 − x
DNjk (x) = + DNjk+1 (x) − + k−1
DNj+1 (x)
tj+k − tj tj+k − tj tj+k+1 − tj+1 tj+k+1 − tj+1

d) Par la Définition 1.5.1, Njk ∈ C(R), k ≥ 1.


1) Régularité : Njk ∈ C k−1 (R) ? Si on applique c), on obtient ∀k ≥ 2, Njk ∈ C 1 (R).
Reccurence : si ∀k ≥ l, Njk ∈ C k−1 (R), ∀k ≥ l + 1, D(Njk ) ∈ C l−1 (R) ⇒ Njk ∈ C l (R).
2)
x − tj tj+k+1 − x
Njk (x) = Njk−1 (x) − N k−1 (x)
tj+k − tj | {z } tj+k+1 − tj+1 | j+1{z }
∈Pk−1 ∈Pk−1

Cela implique que Njk |[tr ,tr+1 [ ∈ Pk .

On va proposer une nouvelle base pour Sk (t0 , t1 , ..., tn ). Pour j = −k, −k + 1, ..., 0, ..., n, les
B-Splines Njk sont non nulles dans [a, b] et Njk ∈ Sk (t0 , ..., tn ).

Theorème 1.5.2. Soient :

t−k < t−k+1 < ... < t−1 < t0 < t1 < ... < tn < tn+1 < ... < tn+k
| {z } | {z }
quelconque quelconque

Alors {Njk }n−1


j=−k forment une base de Sk (t0 , t1 , ..., tn )

Démonstration. Par réccurence qu’elles sont linéairement indépendantes.


n−1
aj Nj0 (x) = 0 ⇔ al = 0
X
k = 0, x ∈ [tl , tl+1 [,
j=0

Suppsons pour k − 1 :
k−1
n−1 n−1
Nlk−1 (x)
n
!
Nl+1 (x)
al Nlk = 0 ⇒ al DNlk (x) = 0 ⇒
X X X
al k − =0
l=−k l=−k l=−k tl+k − tl tl+k+1 − tl+1
k−1
N−k |[tO ,tn ] ≡ 0, Nnk−1 |[t0 ,tn ] ≡ 0
18 Chapitre 1. Approximation par des fonctions splines

k−1
n−1
X Nlk−1 (x) n−2
X Nl+1 (x) n+1
X Nlk−1 (x)
al k − al k =0⇒k (al − al−1 ) =0
l=−k+1 tl+k − tl l=−k tl+k+1 − tl+1 j=−k+1 tl+k − tl
Par hypothèse de reccurence, al = al−1 pour l = −k+1, ..., n+1 ⇔ an−1 = an−2 = ... = a−k = a.
n−1 n−1
aNlk (x) Nlk (x) = 0 ⇔ a = 0
X X
=0⇔a
l=−k l=−k
| {z }
=1

Donc al = 0, l = −k, ..., n − 1.


Avantages.
• Si on dispose :
γ̃j Njk (x) ≈approx s(x) = γj Njk (x)
X X
s̃(x) =
j j

avec |γj − γ̃j | < ε. Alors :

|γj − γ̃j |Njk (x) ≤ ε Njk (x) ≤ ε


X X
|s̃(x) − s(x)| ≤
j

On a stabilité numérique (petite perturbation des coefficients ⇒ petites variations de la


valeurs de la spline).
• Si on perturbe un coefficient de :
n−1
γj Njk (x)
X
s(x) =
j=−k

alors on change s que dans un petit intervalle :



n−1 γ̃
j = γj , j 6= l
γ̃j Njk avec
X
s̃(x) =
j=−k
γ̃l 6= γl

|s(x) − s̃(x)| = |γl − γ̃l |Nlk (x) 6= 0, x ∈ [tl , tl+k+1 ]


• A = (Njk (xk )j,l ) forme une matrice creuse.

1.6 Estimation de l’erreur


On se donne k ≥ 0 et n ≥ 1 et on se donne des abscisses :

t−k < t−k+1 < ... < t−1 < t0 < t1 < ... < tn < tn+1 < ... < tn+k

On a a = t0 , b = tn , h = max(tj+1 − tj ), Sk = Sk (t0 , ..., tn ). On va étudier l’erreur d’approxi-


mation d’une fonction f ∈ C n ([a, b]) par une fonction.
Notation. On note :
• kf k = max |f (x)|
x∈[a,b]
• ω(f, σ) = max{|f (x) − f (y), (x, y) ∈ [a, b], |x − y| < σ} (module de continuité)
• d(f, Sk ) = inf kf − sk
s∈Sk

Theorème 1.6.1 (Théorème de meilleure approximation). a) Pour f ∈ C 0 ([a, b]), d(f, Sk ) ≤


ω(f, (k + 1)h/2).
Chapitre 1. Approximation par des fonctions splines 19

b) Pour f ∈ C 1 ([a, b]), d(f, Sk ) ≤ (k + 1) h2 kf 0 k.


 k+1
h
c) Pour f ∈ C k+1 ([a, b]), d(f, Sk ) ≤ (k + 1)! 2
kf (k+1) k.

tj +tj+k+1
Démonstration. Soit xj l’élément le plus proche de 2
dans [a, b].
t +t t +t
– Si j j+k+1
2
∈ [a, b] alors xj = j j+k+1
2
,
tj +tj+k+1
– Si 2
> b alors xj = b,
tj +tj+k+1
– Si 2
< a alors xj = a.

⇒ ∀x ∈ [tj , tj+k+1 ] ∩ [a, b], on a :

k
tj+k+1 − tj 1X h
|x − xj | ≤ = (tj+l+1 − tj+l ) ≤ (k + 1)
2 2 l=0 | {z } | {z 2}
≤h ε

a) Soit f ∈ C 0 ([a, b]) et on considère l’élément de Sk :


n−1
f (xj )Njk (x)
X
S(f )(x) =
j=−k


– x ∈ [tk , tk+1 ] ∩ [a, b]
n−1
– {Njk }j=−k base de Sk .
alors :



n−1 n−1


k k
X X
|f (x) − S(f )(x)| = f (x) Nj (x) − f (xj )Nj (x)


j=−k j=−k
| {z }
=1



n−1
k
X
=
(f (x) − f (xj )) Nj (x)
j=−k | {z }
≤ω(f,ε)



n−1 k
≤ ω(f, ε) j = −k Nj (x) = ω(f, ε)

| {z }

=1

∀x ∈ [a, b], |f (x) − S(f )(x)| ≤ ω(f, ε) → d(f, Sk ) ≤ kf − S(f )k ≤ ω(f, ε).
b) D’après l’inégalité des accroissements finis, ∃ξj ∈] min(x, xj ), max(x, xj )[ tel que :

|f (x) − f (xj )| = |f 0 (ξj )||x − xj | ≤ kf 0 kε ⇒ d(f, Sk ) ≤ kf 0 kε

c) Par réccurence sur k


• k = 0, voir cas b).
20 Chapitre 1. Approximation par des fonctions splines

• Supposons la propriété vraie pour k = 1 et montrons le résultat pour k. Soit f ∈


C k+1 ([a, b]) alors g = f 0 ∈ C k ([a, b]). Alors par l’hypothèse de réccurence :
!k
h
∃σ ∈ Sk−1 , kg − σk ≤ k! kg (k) k (1.13)
2

On pose : Z x
f˜(x) = f 0 (s)ds = f (x) − f (a) (f = f˜ − f (a))
a
Z x
σ̃(x) = σ(s)ds ⇒ σ̃ 0 = σ ∈ Sk−1 ⇒ σ̃ ∈ Sk
a

Donc :

d(f, Sk ) = d(f˜ − f (a), Sk ) = d(f˜ − σ̃, Sk )


b) h
= (k + 1) k(f˜ − σ̃)0 k
2
h h
= (k + 1) k f 0 −σk = (k + 1) kg − σk
2 |{z} 2
g
!k
(1.13) h k
= (k + 1) k! kf (k+1) k
2 2
!k+1
h
= (k + 1)! kf (k+1) k
2

Remarque. Si n = 1 alors Sk = Pk et on obtient une borne supérieure pour la distance :


!k+1
b−a
d(f, Pk ) ≤ (k + 1)!kf (k+1) k
2

Mais cette borne n’est pas suffisament fine.

Theorème 1.6.2. Soit f ∈ C k+1 ([a, b]) :


!k+1
b−a kf (k+1) k
d(f, Sk ) ≤ 2
2 (k + 1)!

obtenue par le polynôme d’interpolation aux abscisses de Tchebychev.

On considère l’opérateur linéaire :

S : C 0 ([a, b]) → C 0 ([a, b])


f 7→ S(f )

où : n
aj (f )Njk (x)
X
S(f )(x) = (1.14)
j=−k
avec :
aj : C 0 ([a, b]) → R
f 7→ aj (f )
Chapitre 1. Approximation par des fonctions splines 21

tel que aj linéaire (∀λ, µ ∈ R, ∀f, g ∈ C 0 ([a, b]), aj (λf + µg) = λaj (f ) + µaj (g)) et :
X
aj = f (xj ) = (xi ) (coefficient d’une spline d’interpolation)
i∈I

On définit la norme de l’opérateur S, kSk, comme la plus petite constante L tel que :
kS(f )k ≤ Lkf k, ∀f ∈ C 0 ([a, b])
Lemme 1.6.3 (Lemme de Céa). Soit S définit par (1.14) et E un sous-espace vectoriel invariant
de C 0 ([a, b]), c’est-à-dire ∀g ∈ E, S(g) = g. Alors :
kf − S(f )k ≤ (1 − kSk)d(f, E)
Démonstration. ∀g ∈ E, kf − S(f )k = kf − g + g − S(f )k. On utilise le fait que S est linéaire
et S(g) = g.
kf − g + g − S(f )k = kf − g − S(f − g)k
≤ kf − gk + kS(f − g)k
= (1 + kSk)kf − gk
⇒ kf − S(f )k ≤ (1 + kSk)d(f, E).
Exemple 1.6.1. Considérons le cas d’une spline interpolante. On se donne n + k points d’in-
terpolation distincts :
a ≤ x−k ≤ x−k+1 ≤ ... ≤ xn−1 ≤ b
(pas nécessairement les noeuds de la spline). Si on veut déterminer Ski (f ) ∈ Sk tel que :
Ski (f )(xj ) = f (xj ), j = −k, ..., n − 1
On a :
n−1
Ski (f ) = aj (f )Njk
X

j=−k
n−1
Ski (f )(x) = aj (f )Njk (xl ) = f (xl ), l = −k, ..., n − 1
X

j=−k

On définit :  
f (x−k )  

b= .. 
, A = Njk (xl )

. 
j,l
f (xn−1 )
On rappelle que A est une matrice creuse (propriété des B-splines). On a donc à résoudre le
système linéaire suivant :  
a−k (l)
 .. 
A
 .  =b
an−1 (l)
Si A est inversible (bon choix des abscisses) alors on a :
 
a−k (l)
 ..  −1
.   = A b ⇒ linéarité des aj


an−1 (l)
Or : ∀g ∈ S k , Ski (g) = g donc E = Sk . On utilise le lemme de Céa :
kf − Ski (f )k ≤ (1 + kSki k)d(f, Sk ) (théorème de meilleure approximation)
22 Chapitre 1. Approximation par des fonctions splines

Cas particulier. k = 1. On pose xl = tl+1 :

Njk (xl ) = Nj1 (tl+1 ) = δj,l ⇒ A = In

alors :
n−1
S1i (f )(x) f (tl+1 )Nj1 (x) ⇒ |S1i (x)| ≤ max |f (tl+1 )| Nj1 (x) = 1 ≤ kf k
X X
l
j=1 j
| {z }

Donc :
kS1i (f )k ≤ kf k ⇒ kS1i (f )k = 1
Donc :
kf − S1i (f )k ≤ (1 + kS1i (f )k)d(f, Sk ) = 2 d(f, Sk )
| {z } | {z }
=1 ≤kf −S1j (f )k

⇒ kf − S1i (f )k ≤ 2d(f, Sk ) ≤ 2kf − S1i (f )k


1
⇒ kf − S1i (f )k ≤ d(f, Sk ) ≤ kf − S1i (f )k
2
Donc la spline interpolante est la meilleure approximation à un facteur 2 près.

1.7 Courbes splines


1.7.1 Définitions
Définition 1.7.1. Etant donnés des points {pi }i∈I du plan ou de l’espace. Une courbe spline
d’ordre k est une combinaison linéaire des points pi dont les coefficients sont des B-splines.

pi Nik (t), t ∈ [inf (ti ), sup(ti )]


X
Sk (t) =
i∈I i∈I
i∈I

La ligne brisée joignant ces points s’appelle le polygône spline ou le S-polygône.

Sk (t) est dans l’enveloppe connexe des points pi , i = r − k, ..., r pour t ∈ [tr , tr+1 ] :
r
pi Nik (t)
X
Sk (t) =
i=r−k
Chapitre 1. Approximation par des fonctions splines 23

1.7.2 Courbe ouverte

On choisit un intervalle [a, b] pour le paramètre t. Si on n+k sommets pi dans le S-polygône,


on souhaite construire une courbe d’extrémités p1 et pn+k tel que :

Sk (a) = p1 et Sk (b) = pn+k

On va diviser l’intervalle [a, b] en n sous-intervalles et prendre k + 1 noeuds confondus en a et


en b :

t1 = ... = tk = tk+1 = a < tk+2 < ... < tn+k < b = tn+k+1 = tn+k+2 = ... = tn+2k+1 (1.15)
| {z } | {z }
k+1 noeuds k+1 noeuds

Splines quadratiques avec noeuds confondus

On rappelle :

x − ti ti+k+1 − x k−1
Nik (x) = Nik−1 (x) + N (x)
ti+k − ti ti+k+1 − ti+1 i+1

x−ti
Mais si ti+k = ti , la formule précédente n’est plus valable. On va ainsi mettre ti+k −ti
"en
contribution 0".
Si on confond l points, on perd l − 1 degrés de régularité dans la B-spline.
24 Chapitre 1. Approximation par des fonctions splines

Revenons à la construction de la courbe ouverte.

Proposition 1.7.1. Avec les notations (1.15), on peut construire les B-splines {Nik }n+k
i=1

m+k
pi Nik
X
Sk (t) =
i=1

C’est une courbe spline telle que Sk (a) = p1 et Sk (b) = pn+k .

Démonstration. En a = tk+1 , les seuls splines non nulles sont N1k , ..., Nkk . Si i noeuds coincident
en un point, on a une continuité k − i. Donc pour j = 2, ..., k + 1, k + 2 − j noeuds coincident.
On a donc une continuité de j − 2 mais au moins une continuité C 0 . Donc : Njk (tk+1 ) = 0 et
N1k (tk+1 ) 6= 0. Or :
n+k
Nik (t) = 1
X

i=1

Donc N1k (tk+1 ) = 1 ⇒ Sk (tk+1 ) = p1 .


Chapitre 1. Approximation par des fonctions splines 25

Même raisonnement avec tn+k+1 = b : les seules B-splines non nulles Nnk (t), ..., Nn+k
k
(t). Pour
k
j = n, ..., n + k − 1, la continuité entraine que Nj (tn+k+1 ) = 0 :

n+k
pi Nik (tn+k+1 ) = pn+k
X
Sk (tn+k+1 ) =
i=n

Dnas le cas où les noeuds intérieurs sont simples, la courbe est formée de n arcs polynomiaux
de degré k et elle est de classe C k−1 .

Exemple de courbe spline quadratique ouverte


Exemple 1.7.1. Soient k = 2, n = 4 et P = {p1 , p2 , ..., p6 } un ensemble de points.

t1 = t2 = t3 = a < t4 < t5 < t6 < b = t7 = t8 = t9

Soit C = {1, 1, 1, 2, 3, 4, 5, 5, 5} un ensemble de noeuds et [a, b] = [1, 5].


6
pi Ni2 (t)
X
S2 (t) =
i=1

6
pi Ni2 (|{z}
X
S2 (1) = t3 ) = p1 , S2 (5) = p6
i=1 =t1

1
S2 (2) = S2 (t4 ) = p2 N22 (t4 ) + p3 N32 (t4 ) = (p2 + p3 )
2
1
S2 (3) = S2 (t5 ) = p3 N32 (t5 ) + p4 N42 (t5 ) = (p3 + p4 )
2
1
S2 (4) = S2 (t6 ) = (p4 + p5 )
2
Pour les dérivées :
6 1 6
!
Ni1 (t) Ni+1 (t)
S20 (t) Ni1 (pi − pi−1 )
X X
= pi − =
i=1 ti+2 − ti ti+3 − ti+1 i=2
26 Chapitre 1. Approximation par des fonctions splines

Calcul des dérivées :

S20 (t3 ) = S20 (1) = p2 − p1


S20 (t4 ) = S20 (2) = p3 − p2
S20 (t5 ) = S20 (3) = p4 − p3
S20 (t6 ) = S20 (4) = p5 − p4
S20 (t7 ) = S20 (5) = p6 − p5

1.7.3 Courbes fermés périodiques


On se fixe un S-polygone {p1 , ..., pn } :

pr+ns = pr , r = 1, ..., n, s ∈ Z

t1 < ... < tk a = tk+1 < tk+2 < ... < tn+k < b = tn+k+1 < tn+k+2 < ... < tn+2k+1
| {z }
(∗)

(∗) : et on impose aux absicsses la même périodicité (ti+1 − ti = ti+ns+1 − ti+ns ).

k
pi Nik (a)
X
Sk (a) =
i=1

k+n k
pi Nik (b) = k
X X
Sk (b) = pi+n Ni+n (b)
i=n+1 i=1
k
k
X
= pi Ni+n (a + nk)
i=1
k
k
X
= pi Ni+2n (a) (si les points sont équidistribués)
i=1
k
pi Nik (a) = Sk (a)
X
=
i=1

n+k
pi Nik (t)
X
Sk (t) =
i=1

Exemple 1.7.2. Soient k = 2, n = 6 et une suite de noeuds uniforme (équidistants).

P = {p1 , p2 , p3 , ..., p6 }

C = {|{z}
−1 , 0, |{z}
1 , 2, ..., |{z}
7 , 8, 9}
t1 t3 =t9
Chapitre 1. Approximation par des fonctions splines 27

8
pi Ni2 (t), p7 = p1 , p8 = p2 , ...
X
S2 (t) =
i=1

1
S2 (1) = S2 (t3 ) = S2 (7) = S2 (t9 ) = (p1 + p2 )
2
1
S2 (ti ) = (pi + pi+1 )
2
N12 (0) = N22 (0) = 1/2
28 Chapitre 1. Approximation par des fonctions splines

8 1
!
Ni1 (t) Ni+1 (t)
S20 (t)
X
= 2 pi −
i=1 ti+2 − ti ti+3 − ti−1
8
p1 N11 (t) (pi − pi−1 )Ni1 + p8 N91
X
= +
i=2

i = 1, ..., 8, S20 (t1 ) = pi−1 − pi−2

1.7.4 Algorithme d’évaluation de De Boor-Cox


Algorithme 1.7.1. Soit t ∈ [tr , tr+1 ] et Sk (t) = ri=r−k pi Nik (t). Le calcul de Sk (t), t ∈ [tr , tr+1 ]
P

peut se faire recursivement.


DeBoor-Cox()
1 for i ← r − k to r
[0]
2 do pi ← pi
3 for j ← 0 to k − 1
4 do for i ← r to r + j + k
[j] [j]
[j+1] t − ti )pi + (ti+k−j − t)pi−1
5 do pi =
ti+k−j − ti
6
7 p[k]
r = pk (t)
Dans l’algorithme, il y a 12 (k + 1)k combinaisons linéaires.

Démonstration. On définit récursivement les quantités suivantes :



d0 t − ti
i = di
reccurence sur m : avec αi =
dm = αk−m+1 dm−i + (t − αik−m+1 )dm−1 ti+j − ti
i i i i−1

r r
t − ti
dm k−m
dm N k−m−1 (t)
X X
i Ni (t) = i
i=r−k+m i=r−k+m ti+k−m − ti i
r
dm+1 Nik−m−1 (t)
X
= i
i=r−k+m

= dkr Nr 0(t) = dkr

pour m = 0 :
r
d0i Nik (t) = pi Nik (t) = Sk (t)
X X
S(t) =
i=r−k
Chapitre 2

Approximation au sens des moindres


carrés

2.1 Meilleure approximation dans un espace normé


2.1.1 Premiers résultats
Soit V un espace vectoriel muni d’une norme k · k et on considère un sous-espace U ⊂ V de
dimension finie.
Theorème 2.1.1. ∀f ∈ V , ∃u∗ ∈ U tel que :

kf − u∗ k = inf kf − uk
u∈U

u∗ est une1 meilleure approximation de f dans U .


Démonstration. Soit U 0 ⊂ U , U 0 = {u ∈ U, kuk ≤ 2kf k} borné fermé d’un espace de dimension
finie donc un compact (O ∈ U 0 ).

d∗ = inf ku − f k ⇒ ∃(ui )i∈N ⊂ U, lim kui − f k = d∗


u∈U i→∞

On peut extraire de (ui ) une sous-suite convergente vers ũ.


ε
∀ε > 0, ∃k ∈ N, kuk − f k ≤ d + ε/2, kuk − ũk ≤ (2.1)
2
kf − ũk ≤ kf − uk k + kuk − ũk ≤ d∗ + ε (2.2)
(2.1) + (2.2) implique deux propriétés :

kf − ũk ≤ d∗ (2.3)

kf − ũk ≥ d∗ (2.4)
(2.3) + (2.4) ⇒ kf − ũk = d∗ . Cela implique donc que ũ meilleur approximant d f dans U 0 .
Prenons u ∈ U \U 0 :

ku − f k ≥ kuk − kf k ≥ 2kf k − kf k = kf k ≥ kf − ũk car ũ ∈ U

⇒ ũ meilleur approximant de f dans U .


1
On n’a pas encore montré qu’elle est unique

29
30 Chapitre 2. Approximation au sens des moindres carrés

Exemple 2.1.1. Dans l’espace C([a, b)), on a les normes p :


Z b !1/p
kf kp = |f (x)|p dx ,1≤p<∞
a

et
kf k∞ = max |f (x)|
[a,b]

Pour p = 2, la norme kf k provient d’un produit scalaire.

Remarque. Si on trouve une meilleure approximant en norme ∞ avec une erreur petite, les deux
normes (norme 1 et norme 2) le seront aussi.

Proposition 2.1.2. ∀f ∈ C([a, b]) :

kf k1 ≤ (b − a)1/2 kf k2 ≤ (b − a)kf k∞

Démonstration. En utilisant Cauchy-Schwartz :


Z b
kek1 = |e(x)|dx
a
Z b !1/2 Z b !1/2
≤ |e(x)|2 dx 1dx
a a

≤ kek2 (b − a)1/2

Z b !1/2
2
kek2 = |e(x)| dx
a
Z b !1/2
≤ kek2∞ dx
a

= kek∞ (b − a)1/2

Définition 2.1.1. La norme 2 s’appelle la norme au sens des moindres carrés (ou norme
euclidienne).
La norme ∞ s’appelle la norme uniforme (ou min-max).

2.1.2 Unicité de la meilleure approximation


Définition 2.1.2. Un ensemble S d’un espace vectoriel V est convexe (respectivement stricte-
ment convexe) si et seulement si :

∀s0 , s1 ∈ S, θs0 + (1 − θ)s1 ∈ S, ∀θ ∈ [0, 1]



(resp. {θs0 + (1 − θ)s1 , θ ∈]0, 1[} ⊂S })

avec S = l’interieur de S.

Définition 2.1.3. Une norme est strictement convexe si et seulemenet si B(0, 1) = {x ∈


V, kxk < 1} est strictement convexe.
Chapitre 2. Approximation au sens des moindres carrés 31

Theorème 2.1.3. Soit S un sous-ensemble connexe d’un espace vectoriel normé V et f ∈ V :


a) si f ∈ V a une meilleure approximation dans S alors l’ensemble des meilleures approxima-
tions de f est un convexe.
b) Si de plus la norme est strictement convexe alors il existe au plus une meilleure approxima-
tion.

Démonstration. a) Soit s∗ une meilleure approximation de f , d∗ = kf − s∗ k. L’ensemble des


meilleures approximations est S ∩ B(f, d∗ ). Or S et B(f, d∗ ) sont des convexes.
b) Supposons qu’il y en a deux meilleures approximations distinctes s0 et s1 de f dans S.

ks0 − f k = ks1 − f k = d∗

B(f, d∗ ) est strictement convexe par hypothèse :

k1/2(s0 + s1 ) − f k < d∗

Ce qui est absurde.

Exemple 2.1.2. 1) Pour V ⊂ C([a, b]), la norme 2 est strictement convexe.


2) Les normes 1 et ∞ ne sont pas strictement convexes.

2.2 Meilleure approximation dans un espace préhilber-


tien
Soit V muni d’un produit scalaire <, > sur R.
Rappel. Un produit scalaire sur V est une application <, >: V × V → R avec les propriétés
suivantes :
(i) bilinéarité :
< v1 + λv2 , w >=< v1 , w > +λ < v2 , w >
< v, w1 + λw2 >=< v, w1 > +λ < v, w2 >
(ii) symétrie : < v, w >=< w, v >
(iii) < v, v >≥ 0 avec égalité si et seulement si v = 0.
Au produit scalaire, on associe :

– une norme : kxk = < x, x >.
– l’inégalité de Cauchy-Schwartz : | < x, y > | ≤ kxkkyk
– l’égalité du parallélogramme : kx + yk2 + kx − yk2 = 2kxk2 + 2kyk2
Rb
Exemple 2.2.1. 1) L2ω ([a, b]) = {f, a f (x)2 ω(x)dx < +∞}
Z b
< f, g >= f (x)g(x)ω(x)dx, ω = fonction poids
a

2) Produit scalaire discret sur Rn :


n
ω ∈ Rn , ωi > 0, ∀i
X
< x, y >= xi yi ωi ,
i=1
32 Chapitre 2. Approximation au sens des moindres carrés

P∞
3) Espaces des suites : l2 = {(li )i∈N , i=1 |li |2 < ∞}

X
< x, y >= |xi yi |
i=1

Proposition 2.2.1. Soit U un sous-espace de dimension finie. Comme k · k2 est strictement


convexe, une norme déduite d’un produit scalaire :

∀f ∈ V, ∃u∗ ∈ U, kf − u∗ k = inf kf − uk
u∈U

Exemple 2.2.2. Si V = C([a, b]), u ∈ P\ , f ∈ V . On cherche p∗ ∈ Pn qui minimise sur Pn ,


Sk (t0 , ..., tn ) :
Z b
(p(x) − f (x))2 ω(x)dx
a

L’avantage est que l’on peut considérer l’approximation discrète en moindres carrés si l’on
dispose des valeurs de f : si yi = f (xi ), i = 1, ..., N avec une variance w1i . On considère :

N
X
< f, g >N = wi f (xi )g(xi )
i=1

< f, f >N = 0 ⇒ f = 0
Ce n’est pas une norme sur PN mais sur PN −1

Theorème 2.2.2 (Caractérisation). Soit U un espace vectoriel de dimension finie de V (espace


préhilbertien de produit scalaire <, >). Soit f ∈ V alors p∗ est la meilleure approximation de f
dans U si et seulement si l’erreur e∗ = f − p∗ vérifie les propriétés d’orthogonolité :

< e∗ , p >= 0, ∀p ∈ U (2.5)

Démonstration. (⇒) Supposons par l’absurde qu’il existe p ∈ U tel que < e∗ , p >= 0. On
considère l’approximant p∗ + λp, λ ∈ R∗ .

kf − (p∗ + λp)2 k = < f − p∗ + λp, f − p∗ + λp >


= kf − pk2 − 2λ < f − p∗ , p > +λ2 kpk =: q(x)
2
Le minimum est atteint quand q 0 (λ) = 0 ⇔ λ = <ekpk
∗ ,p> et pas pour λ = 0, p

n’est pas

une meilleure approximation, ce qui est absurde. Donc ∀p ∈ U, < e , p >= 0.
(⇐) Soit < e∗ , p >= 0, ∀p ∈ U et on prend q ∈ U .

kf − qk2 − kf − p∗ k2 = < f − q, f − q > − < f − p∗ , f − p∗ >


= kf k2 − 2 < f, q > +kqk2 − kf k2 + 2 < f, p∗ > +kp∗ k2
= 2 < f, p∗ − q > +kqk2 − kpk2 + 2 < p∗ , p∗ − q > −2 < p∗ , p∗ − q >
= kp∗ k2 − 2 < p∗ , q > +kqk2 +2 < f − p∗ , p∗ − q >
| {z }
kp∗ −q|2 +2<e∗ ,p∗ −q>=kp∗ −qk2

kf − qk2 = kf − p∗ k2 + kp∗ − qk2 ≥ kq − p∗ k2


q meilleure approximation ⇔ p∗ = q ⇒ p∗ meilleure approximation.
Chapitre 2. Approximation au sens des moindres carrés 33

Remarque. 1) Unicité de la meilleure approximation.

kf − qk = kf − p∗ k ⇔ q = p∗

2) q = 0 :
kf k2 = kp∗ k2 + kf − pk2 (2.6)
Corollaire (méthode de calcul du meilleur approximant). Pour calculer la meilleure approxi-
mation, étant donné une base {ui }ni=1 de U , soit :
n
p∗ = αi∗ ui
X

i=1

On résoud le système :
n
αi∗ ui , uj >= 0, j = 1, ..., n
X
<f− (2.7)
i=1
On a ainsi :

(2.5) ⇔ < e∗ , ui >= 0


n
αi∗ < ui , uj >=< f, uj >, j = 1, ..., n
X
(2.7) ⇔
i=1

La recherche de la meilleure approximation revient à résoudre un système linéairede n équations



à n inconnues. Ce système d’équations est appelé les équations normales. Gn = < ui , uj >
i,j
est appelé matrice de Gram et elle est définie positive.
Démonstration. On montre que la matrice Gn de Gram de dimension n est définie positive :
 
a1
T
 . 
a Gn a = (a1 , ..., an )Gn  .. 


an
 
n n n
! a1
X X X  . 
= < ai ui , u1 >, < ai ui , u2 >, ..., <  .. 
ai ui , un >  
i=1 i=1 i=1
an
2
n n n

X X X
= < ai ui , ai ui >=
ai ui ≥0

i=1 i=1 i=1

et = 0 ⇔ ai = 0, ∀i.

Rapport avec les moindres carrés discrets A ∈ Rn×m avec m > n, A = [A1 , A2 , ..., An ].
On cherche min kb − Axk2 (c’est-à-dire kb − xi Ai k2 , x ∈ Rn ). Soit V = Rn et U = Im A =<
P

A1 , A2 , ..., An >. Résoudre au sens des moindres carrés le système Ax = b équivaut à chercher
la meilleure approximation de b dans U . Si A est de rang maximal, < A1 , A2 , ...An > est une
base de U .
Gn =< Ai , Aj >= AT A (matrice des équations normales)
< b, A1 >
 

< b, A2 > 
 = AT b
 
c= ..
.
 
 
< b, A”n >
34 Chapitre 2. Approximation au sens des moindres carrés

Système des équations normales :


AT Ax = AT b → QR = A
Pour éviter les problèmes de stabilité associés à la résolution du système Gn α = 0, on va
considérer une base orthogonale de l’espace U .
< ui , uj >= 0 ⇒ matrice de Gram diagonale
Le meilleur approximant est :
n
< f, ui >
p∗ =
X
ui
i=0 < ui , ui >

2.2.1 Algorithme de Gram-Schmidt


Algorithme 2.2.1. Soit (ui )ni=0 base de U , on veut (vi )ni=0 une base orthonormée.
()
1 v0 = u0
2 for i ← 1 to n
<ui ,uj >uj
do p∗ = i−1
P
3 j=0 kuj k2
4 vi = ui − p∗

Démonstration. Par réccurence, p∗ est la meilleure approximation de vi dans < v0 , ..., vn−1 >=<
u0 , ..., un−1 >. Par la caractérisation de la meilleure approximation :
vi ⊥ v0 , ..., vi−1 , < vi , vj >= 0, j = 0, ..., i − 1

Lemme 2.2.3. Soit U ⊂ V espace préhilbertien avec une base orthogonale (u0 , u1 , ..., un ).
n
X
∀f ∈ V, Πn (f ) = < f, ui > ui
i=0

est la meilleure approximation. Alors :


Πn : V → U
f 7 → Πn (f )
a) est linéaire (linéarité du produit scalaire),
b) est un projecteur : Π2n = Πn et,
c) ∀f ∈ V , kf k2 = kΠn (f )k2 + kf − Πn (f )k2 et en particulier :
kΠn (f )k
kΠn k = sup =1
f ∈V kf k
Démonstration. a)
n
X
Πn (Πn (f )) = < Πn (f ), ui > = Πn (f )
i=0
| {z }
<f,ui >

b)
∀q ∈ U, kf − qk2 = kf − p∗ k2 + kp∗ − qk2 ⇔ kf k2 = kf − p∗ k − kp∗ k
c) kΠn (f )k2 = kf k2 , f ∈ U . Donc Πn (f ) = f .
Chapitre 2. Approximation au sens des moindres carrés 35

2.2.2 Approximation à une précision donnée


Problème. Soit (ui )i des éléments de V , f ∈ V et on veut construire une approximation de f
comme combinaison linéaire des premières n + 1 fonctions de la suite. C’est-à-dire déterminer
n tel que kf − p∗n k ≤ δ ⇒ kf − p∗n k2 ≤ δ 2 ⇔ kp∗n k2 ≥ kf k2 − δ 2 .
Initialisation : On pose v0 = u0 (n = 0) :
v0
p∗0 =< f, v0 (c’est-à-dire kf k2 − δ 2 )
kv0 k 2

()
1 while kpn k2 < kf k2 − δ 2
2 do n=n+1
3 Calculer vn par Gram − Schmidt
4 Calculerp∗n = p∗n−1 + <f,v n>
v
kvn k2 n
<f,vn >2
5 Calculerkp∗n k = kp∗n−1 k + kvn k2

2
n n

X < f, vi > < f, vi >2
kp∗n k2 =
X

vi =
kvi k2 kvi k2


i=0 i=0

Lemme 2.2.4 (Inégalité de Bessel). Soit (u0 , ..., un−1 ) ∈ V orthonormée. Alors ∀f ∈ V :

< f, ui >2 = kf k2
X

j=0

avec égalité ∀f ∈ V (égalité de Parseval) si et seulement si < u0 , ..., un > est dense dans V .
Exemple 2.2.3 (Approximation polynomial en moindres carrés).
Problème. Déterminer un polynôme p ∈ Pn qui approche au mieux au sens des moindres
carrés un nuage de points (xj , f (xj ))N
j=0 avec N > n, xj distincts.

Soit ui (x) = xi pour i = 0, ..., n, ainsi on définit :


N
X
p(x) = ai ui (x)
i=0
36 Chapitre 2. Approximation au sens des moindres carrés

On cherche à déterminer (a0 , a1 , ..., an )T tel que :


N
(f (xj ) − p(xj ))2 soit minimum
X

j=0
 
f (x0 )  
a0
 f (x1 ) 
 
 . 
b =  ..  , A = (ui (xj ))i,j , a =  .. 
  
 . 

an
f (xn )
 
p(x0 )    
u0 (x0 ) u0 (xN )
 p(x1 ) 
 

 .  = a0  ..   .. 
.   + ... + an  .   = Aa

 . 
 . 

uN (x0 ) uN (xN )
p(xN )
Minimiser kb − Aak22 , c’est résoudre le système d’équations normales.

AT Aa = AT b

On peut faire mieux en utilisant la décomposition QR de A.


A=QR
kb − Aak22 = kb − QRak22 = kQt b − Rak22 = kc1 R1 ak22 + kc2 k22
!
c
Qb= 1
t
c2
q
cond(R1 ) = cond(AT A)
Application 2.2.1 (Approximation des fonctions périodiques, séries de Fourier). V = C2π :
espace des fonctions continues périodiques.

f (x + 2π) = f (x), 0 < x < +∞

U = Dn , l’espaces des polynômes trigonométriques :


n
1 X
Dn = {q, q(x) = a0 + aj cos(jx) + bj sin(jx)}
2 j=1

muni du produit scalaire : Z π


< f, g >= f (x)g(x)
−π
Rπ )
R−π
cos(jx) cos(kx)dx =0
π j 6= k
−π sin(jx) sin(kx)dx =0
Z π
sin(jx) cos(kx) = 0, ∀j, ∀k
−π

{1, sin x, cos x, sin 2x, cos 2x, ..., sin nx, cos nx} base orthogonale de Dn . Les polynômes p ∈ Dn
qui minimise kf − pk2 est donné par :
1Zπ
aj = − f (θ) cos(jθ)dθ
π −π
1Zπ
bj = − f (θ) sin(jθ)dθ
π −π
Chapitre 3

Polynômes orthogonaux et formules de


quadrature

Le cas particulier important dans l’approximation en moindres carrés correspond à l’ap-


proximation dans l’espace U = Pn . Nous allons caractériser les bases orthogonales par rapport
au produit scalaire :
Z b
< f, g >= f (x)g(x)ω(x)dx avec ω > 0 dans [a, b]
a

Une base orthonormale est obtenue par Gram-Schmidt appliqué à la base canonique.

3.1 Quelques propriétés des polynômes orthogonaux


Theorème 3.1.1 (Relation de réccurence à 3 termes). La suite (pi )i≥0 définie par :
pi+1 (x) = (x − αi )pi (x) − βi pi−1 , i ≥ 1
p0 (x) = 1, p1 (x) = (x − α0 )p0 (x)
avec :
< pi , xpi >
αi =
kpi k2
kpi k2
βi =
kpi−1 k2
vérifie :
a) ∀i, pi est un polynôme de degré u de coefficient dominant 1 (unitaire).
b) < pi , pj >= 0, ∀j 6= i, c’est-à-dire (p0 , ..., pn ) forment une base orthogonale de Pn .
Démonstration. a) trivial par les conditions initiales + réccurence.
b) Par réccurence :
n = 1, < p1 , p0 >=< xp0 , p0 > −α0 < p0 , p0 >= 0
Supposons que {p0 , ..., pn } sont orthogonaux. On veut montrer que pn+1 ⊥ p0 , , ...pn . On
considère le polynôme xpn et :
n
X < xpn , pi >
pn+1 = xpn (x) − pi ⊥ p0 , ..., pn
i=0 < pi , pi >
| {z }
meil. approx. de xpn dans {p0 ,...,pn }

37
38 Chapitre 3. Polynômes orthogonaux et formules de quadrature

< xpn , pi >=< pn , xpi >= 0 pour i ≤ n − 2

< xpn−1 , pn−1 > < xpn , pn >


pn+1 (x) = xpn (x) − pn−1 − pn
< pn−1 , pn−1 > < pn , pn >
| {z }
αn
< xpn , pn−1 >
= xpn (x) − αn pn (x) − pn−1
< pn−1 , pn−1 >
Mais :
< xpn , pn−1 >=< pn−1 , xpn−1 >=< pn , pn−1 >

Remarque. 1) {pi }ni=0 base de Pn . Ils sont linéairement indépendants.


n
X n
X
λi pi = 0 ⇒ λi < pi , pj >= 0
i=0 i=0

λj < pj , pj >= 0 ⇒ λj = 0
2) Si φn+1 est un polynôme orthogonal de degré n+1 alors φn+1 = cpn+1 (la suite des polynômes
est définie à une constante multiplicative près).
n+1
X
φn+1 = λi pi
i=1

< φn+1 , pj >= λj < pj , pj >= 0, j = 0, ..., n


⇒ λj =, ∀j = 1, .., n → φn+1 = λn+1 pn+1
Theorème 3.1.2 (Entrelacement des racines). Le polynôme pn admet n racines distincts dans
l’intervalle ]a, b[ :
a < x1,n < x2,n < ... < xn,n < b
et les zéros de pn entrelacent ceux de pn+1 :

a < x1,n+1 < x1,n < x2,n+1 < x2,n < ... < xj,n < xj,n+1 < xj+1,n < ... < xn,n < xn+1,n < b

Démonstration. 1) Soient {y1 , ..., yn } les points dans ]a, b[ où pn change de signe. On construit
le polynôme :
n
Y
p(x) = ± (y − yi )
i=1

qui a les mêmes changements de signe que pn dans [a, b] et donc pn (x)p(x) ≥ 0 et s’annule
en n points. Soit ω > 0 :
Z b
< p, pn >= p(x)pn (x)ω(x) dx > 0
a | {z }
≥0

Dû aux propriétés d’orthogonalité de pn :

deg(p) ≥ n (3.1)

deg(p) ≤ n (3.2)
(3.1) + (3.2) ⇒ deg(p) = n ⇒ y1 , ..., yn sont les racines distincts de pn dans ]a, b[.
Chapitre 3. Polynômes orthogonaux et formules de quadrature 39

2) Entrelacements des racines : par réccurence


• k = 1, trivial.
• Supposons vrai pour k et montrons pour k + 1.
k−1
Y
pk−1 (xj,k ) = (xj,k − xi,k−1 )
i=1
j−1
Y k−1
Y
= (xj,k − xi,k−1 ) (xj,k − xi,k−1 )
i=1 i=j
| {z }| {z }
>0 (−1)k−j pk−1 (xj,k )>0

= βk pk−1 (xj,k )
|{z}
≥0

avec1
sgn(pk+1 (xj,k ) = − sgn(pk−1 (xj,k ) = (−1)k−j+1
pk+1 (xk,k ) < 0, lim pk+1 (x) = +∞
x→∞
Donc il existe un xk+1,k+1 > xk,k .
(−1)k pk+1 (x1,k ) > 0, lim (−1)k−1 pk+1 (x) = −∞
x→−∞

Donc il existe une racine de pk+1 , x1,k+1 > x1,k .


Pour chaque intervalle ]xj,k , xj+1,k [ :
pk+1 (xj,k )pk+1 (xj+1,k ) < 0
donc il y a au moins une racine de pk+1 donc ]xj,k , xj+1,k [ pour j = 1, ..., k − 1. On a ainsi
k + 1 racines + 2 extrémités = k + 1. Cela implique qu’il y a exactement une racine dans
chaque intervalle.

Theorème 3.1.3 (Caractérisation). Soit {ω(x), a ≤ x ≤ b} une fonction (poids) conntiue.


Une fonction φk+1 ∈ C([a, b]) vérifie les conditions d’orthogonalité :
Z b
φk+1 (x)p(x)ω(x)dx = 0, ∀p ∈ Pk
a

si et seulement si ∃u ∈ C k+1 ([a, b]) telle que :


(i) ω(x)φk+1 (x) = u(k+1) (x) pour a ≤ x ≤ b.
(ii) u(i) (a) = u(i) (b) = 0, i = 0, ..., k.
Démonstration. (⇐)
Z b Z b
ω(x)φk+1 p(x)dx = u(k+1) (x)p(x)dx (3.3)
a a
Z b
k+1
= (−1) u(x) p(k+1) (x) dx (3.4)
a | {z }
=0, ∀p∈Pk
= 0
Pour passer de l’étape (3.3) à l’étape (3.4), on fait une intégration par parties en remar-
quant u(i) (b) = u(i) (a) = 0.
(
1 −1 si x < 0
sgn(x) =
1 si x ≥ 0
40 Chapitre 3. Polynômes orthogonaux et formules de quadrature

– On définit u par ω(x)φk+1 (x) = u(k+1) (x) avec constante d’intégration u(i) (a) = 0 pour
i = 0, ..., k.
Z b
u(k+1) (x)p(x)dx = 0, ∀p ∈ Pk
a

On choisit p(x) = (b − x)j , pj (x), j ≤ k.


Z b
u(k+1) (x)(b − x)j = 0 ⇒ ... (3.5)
a
 b
(j)
⇒ (−1)j u(k−j) pj = (−1)j j!u(k−j) (b) = 0
a
⇒ u(k−j) (b) = 0

u vérifie donc les propriétés (i) et (ii)

On va maintenant proposer des choix de fonctions tels que φk+1 est un polynôme de degré
k + 1.

3.2 Exemples de familles de polynômes orthoognaux


Exemple 3.2.1 (Polynômes de Jacobi). Soient un intervalle d’orthogonalité [a, b] = [−1, 1],
une fonction poids ω(x) = (1 − x)α (1 + x)β (avec α, β > −1), on définit les polynômes de
Jacobi :
u(x) = (1 − x)α+k+1 (1 + x)β+k+1
On a ainsi :
u(k+1)
est un polynôme de degré k + 1
ω(x)
On a la représentation :

−α −β dk h α β+k
i
pk ((x) = (1 − x) (1 + x) (1 − x) (1 + x) (3.6)
dxk
(4.6) est la formule de Rodrigue. Elle peremt d’obtenir des expressions algébriques pour αk et
βk .

Exemple 3.2.2 (Cas particulier). 1. α = β = 0 : polynômes de Legendre avec ω(x) = 1.


2. α = β = −1/2 : polynômes de Tchebychev de première espèce pj (x) = Tj (x) , ω(x) =
√ 1 .
1−x2
3. α
√ = β = 1/2 : polynômes de Tchebychev de seconde espèce pj (x) = Uj (x), ω(x) =
1 − x2 .

Exemple 3.2.3 (Polynômes de Laguerre). Soient l’intervalle d’orthogonalité [a, b] = [0, +∞],
une fonction poids ω(x) = e−x . On définit les polynômes de Laguerre :

u(x) = e−x xk+1

dk −x k
Lk (x) = ex (e x )
dxk
Chapitre 3. Polynômes orthogonaux et formules de quadrature 41

Exemple 3.2.4 (Polynômes d’Hermite). Soient l’intervalle d’orthogonalité [a, b] = R, ω(x) =


2 2
e−x ,u(x) = e−x xk+1 . On définit les polynômes d’Hermite :

2 dk −x2 k
Hk (x) = e−x (e x )
dxk
Exemple 3.2.5 (Un peu plus sur les polynômes de Tchebychev). Tn (θ) = cos(nθ) (changement
de varibles cos θ = x). Tn est un polynôme de degré n en cos θ.
Z 1
(1 − x2 )1/2 Tj (x)Tk (x) = 0, ∀j 6= 0
−1

Z π
1Z π
cos(jθ) cos(kθ)dθ = cos((k + j)θ) − cos((k − j)θ)dθ
0 2 0
= 0

• On connait tous les racines :


π
cos(nθ) = 0 ⇔ nθ = + kπ
2
π + 2nkπ
⇔ θ=
n
– cos(α + β) + cos(α − β) = 2 cos(α) cos(β). On pose α = kθ et β = θ :

cos(k + 1)θ) + cos((k − 1)θ) = 2 cos(kθ) cos θ


| {z } | {z } | {z }
Tk+1 (x) Tk−1 (x) Tk (x)

Donc :
Tk+1 (x) + Tk−1 (x) = 2Tk (x)x ⇒ Tk+1 (x) = 2xTk (x) − Tk−1 (x)
De même pour les polynômes de Tchebychev de second degré.
sin((n + 1) arccos(x))
Un (x) =
sin(arccos(x))

3.3 Formule de quadrature


Z b
I(f ) = f (x)ω(x), ω>0
a
On veut calculer une valeur approchée de I(f ).
Définition 3.3.1. Une formule de quadrature à n points est donnée :
n
X
In (f ) = ωi f (xi ), xi ∈ [a, b]
i=1

Le degré de précision est l’entier m tel que :

I(xk ) = In (xk ) k = 0, ..., m


I(xm+1 ) 6= In (xm+1 )

C’est le degré du polynôme du plus haut degré pour lequel la formule est exacte.
42 Chapitre 3. Polynômes orthogonaux et formules de quadrature

3.3.1 Formules de quadrature interpolatoire


Lemme 3.3.1. Les trois affirmations suivantes sont équivalentes :
(i) In admet un degré de précision ≥ n − 1.
(ii) In est interpolatoire (⇔ In (f ) = I(pn ) où pn est un polynôme de degré n − 1 qui interpole
f aux points xi )
(iii) ∀j, ωj = I(lj ) où lj sont les polynômes de Lagrange :
n
Y x − xi
lj (x) = , lj (xi ) = δij
i,j=1 xj − xi
i6=j

Pn−1
Démonstration. (i) ⇒ (iii) lj = k=0 ak x k
m
ak I(xk )
X
I(lj ) =
k=0
m
ak Im (xk )
X
=
k=0
m−1
!
k
X
= In ak x = Im (lj )
k=0
m
X
= ωi lj (xi ) = ωj
i=1
Pn
(iii) ⇒ (ii) pn = i=1 li (x)f (x), polynôme d’interpolation :
n
X
I(pn ) = f (xi )I(li )
i=1
Xn
= ωi f (xi ) = In (f )
i=1

(ii) ⇒ (i) Pour k = 0, ..., n − 1, I(xk ) = In (xk ).

Exemple 3.3.1 (ω = 1). 1) Formule des trapèzes :

b−a
I2Tr (f ) = (f (a) + f (b))
2
Chapitre 3. Polynômes orthogonaux et formules de quadrature 43

2) Formule du point milieu : !


a+b
I1M (f ) = (b − a)f
2

Il suffit de montrer que I(x) = I1M (x).

b+a
I1M (x) = (b − a)
2
Z b
b 2 − a2
I(x) = xdx =
a 2
Theorème 3.3.2. Pour toute formule de quadrature, In interpolante :

kf (n) k[a,b] Z b
∀f ∈ C n ([a, b]), |I(f ) − In (f )| ≤ |Πn (x)|ω(x)dx
n! a

avec :
n
Y
Πn (x) = (x − xi )
i=1

Démonstration. Formule de Cauchy pour l’erreur d’interpolation.

f (n) (ξ)
f (x) − pn (x) = Πn (x), ξ ∈ [a, b], kf k[a,b] = max |f (x)|
n! [a,b]

Exemple 3.3.2. 1) Régle des trapèzes :

kf 00 k Z b
|I(f ) − IrTr (f )| ≤ (x − a)(b − x)dx
2 a
kf 00 k
= (b − a)3
12

2) Régle du point milieu :


Z b !
0 a+b
|I(f ) − I1M (f )| ≤ kf k x− dx
a 2
(b − a)2 0
= kf k
4
44 Chapitre 3. Polynômes orthogonaux et formules de quadrature

On peut pousser l’analyse d’erreur un peu plus loin. L’erreur d’interpolation peut s’écrire :
f (x) − pn (x) = [x1 , ..., xn , x]f Πn (x)
L’erreur dans le calcul d’interpolation :
Z b
I(f ) − In (f ) = [x1 , ..., xn , x]f Πn (x)dx
a

Cette formule peut simplifier dans certaines situations.


a) Si Πn (x) est de signe constant sur [a, b] : par le théorème de la moyenne :
Z b
I(f ) − In (f ) = [x1 , ..., xn , ξ]f Πn (x)dx
a

et de plus si f ∈ C n ([a, b])


f (n) (η) Z b
I(f ) − In (f ) = Πn (x)dx avec η ∈]a, b[
n! a
Rb
b) Si a Πn (x)dx = 0 : formule de réccurence pour les différences divisées :
[x1 , x2 , ..., xn+1 , x]f = [x1 , ..., xn+1 ]f + [x1 , ..., xn+1 , x]f (x − xn )
Z b Z b
[x1 , ..., xn , x]f = [x1 , ..., xn , xn+1 ](x − xn )Πn (x)dx
a a
Si on choisit xn+1 de telle sorte que Πn+1 (x) = (x − xn+1 )Πn (x) soit de signe constant :
f (n+1) (ξ) Z b
I(f ) − In (f ) = Πn (x)
(n + 1)! a
Pour la règle du point milieu :
!
a+b
Π1 (x) = x −
2
 
a+b
Z b  x− 2
b
Π1 (x) = =0
a 2 a
a−b
On choisit un deuxième point x1 = x2 = 2
.
!2
a+b
Π2 (x) x − ≥ 0 signe constant
2

!2
f 00 (ξ) Z b a+b
I(f ) − I1M (f ) = x− dx
2 a 2
!#b
f 00 (ξ) 1 x − a+b
"
2
=
2 3 2 a
00 3
f (ξ) 2(b − a)
=
2 24
f 00 (ξ)
= (b − a)3
24
Pour la construction des formules de type interpolante :
Chapitre 3. Polynômes orthogonaux et formules de quadrature 45

(a) Soit on construit le polynôme d’interpolation pn aux points xi , i = 1, ..., n et on calcule :


Z b
In (f ) = pn (x)dx
a
n
X Rb
= Ai fi (x) avec Ai = a li (x)dx
i=1

(b) Soit on pose :


n
X
In (f ) = Ai f (xi )
i=1

et on calcule les coefficients Ai de la combinaison linéaire de sorte que la formule soit exacte
pour les monomes 1, x, ..., xn−1 .
n Z b
Ai xji = xj dx,
X
j = 0, ..., n − 1
i=1 a

Rb j
où a x dx constitue un système linéaire de n équations à n inconnues (Ai ).

3.3.2 Méthodes composites


Pour pouvoir contrôler l’erreur (c’est-à-dire construire des formules précises à une précision ε
près), l’idée est de diviser l’intervalle en N sous-intervalles et appliquer la formule d’intégration
à chacun. L’amplitude des sous-intervalles viendra comme paramètre de l’erreur de l’erreur et
permettra lde le choisir pour obtenir la précision voulue.
Etant donnée a = t0 < t1 < ... < tN = b et une formule de quadrature sur [a, b].
n
I [a,b] (f ) =
X
ωi f (xi )
i=1

Z d
d−cZ b
g(t)dt = g(ϕ(x))dx (3.7)
c b−a a
avec
ϕ : [a, b] → [c, d]
d−c
x 7→ t = c + b−a (x − a)
d − c [a,b]
(3.7) ⇔ I (g ◦ ϕ)
b−a
n
!
[c,d] d−cX d−c
I (g) = ωi g c + (xi − a)
b − a i=1 b−a
Z b N
X −1 Z tk+1
f (x)dx = f (x)dx
a k=0 tk

Définition 3.3.2. On définit la méthode composite par :


N −1
I [tk ,tk+1 ] (f )
X
I(N ) (f ) =
k=1
N −1 n !
tk+1 − tk tk+1 − tk
X X 
= ωi f tk + (xi − a)
k=1 i=1 b−a b−a
46 Chapitre 3. Polynômes orthogonaux et formules de quadrature

Formule des trapèzes composites

[a,b] b−a
I2 = (f (a) + f (b))
2
[t ,t ] ti+1 − ti
I2 i i+1 = (f (ti+1 ) − f (ti ))
2
N −1 N −1
Tr
X [ti ,ti+1 ] X ti+1 − ti
I(N ) ([a, b])(f ) = I2 = (f (ti−1 ) − f (ti ))
i=0 i=0 2
Dans le cas des points équidistribuées :
h = ti+1 − ti , i = 0, ..., N − 1
N −1
" #
Tr h X
I(N ) ([a, b])(f ) = f (b) + f (a) + 2 f (ti )
2 i=1
L’erreur commise est :
Z b
Tr Tr
E(N ) (f ) = f (x)dx − I(N ) ([a, b])(f )
a
N −1 Z ti+1 
X [t ,ti+1 ]
= f (x)dx − I2 i (f ) (3.8)
i=0 ti

La formule (3.8) est vraie si f ∈ C 2 ([a, b]).


N −1
X 1 00 (ti+1 − ti )3
(3.8) = f (ξi ) , ξi ∈]ti , ti+1 [
i=0 2 6
3 N −1
h
f 00 (ξi )
X
=
12 i=0
PN −1 00
h3 N f (ξ
i=0 i)
=
12 | N
{z }
théorème de la moyenne
b − a 00
= f (ξ)h2
12
Si |f 00 (x)| ≤ M , ∀x ∈ [a, b]
b−a Tr
|E(NM h2
) (f )| ≤
12
Pour calculer ab f (x)dx avec une précision ε, il suffit de considérer un nombre N de sous-
R

intervalles tels que : s


b−a 2 12 1
Mh ≤ ε ⇔ h ≤ ε
12 b−aM

3.3.3 Formules de quadrature de Gauss


Z b
I(f ) = f (x)ω(x)dx, ω ≥ 0 sur [a, b]
a
n
X
In (f ) = Ai f (xi ), 2n paramètres
i=1
Si on fixe les xi , on construit les formules interpolatoire de degré de précision n − 1. Si on les
laisse libres, quel espace dans lequel la formule peut être exacte ?
Chapitre 3. Polynômes orthogonaux et formules de quadrature 47

Lemme 3.3.3. Soit In (f ) = ni=1 Ai f (xi ) une fomrule de quadrature avec un degré de précision
P

m. Alors m < 2n et si m − 2n − 2, 2n − 1 alors Ai > 0, ∀i.


Démonstration. Supposons, par l’absurde, m ≥ 2n. On construit le polynôme :
n
(x − xi )2
Y
p(x) =
i=1

C’est un polynôme de degré 2n.


n
X
I(p) = In (p) = Ai p(xi ) = 0
i=1

Or : Z b
I(p) = p(x)ω(x)dx > 0
a
Ce qui est contradictoire. Donc m < 2n. Maintenant, supposons m ≥ 2n − 2, on choisit :
 2
n 2
Y (x − xi ) 
p(x) = lj (x) = 

i=j (xj − xi ) 
i6=j

Ce polynôme est le polynôme de Lagrange et a un degré 2n − 2.


n
X
In (p) = Ai lj (xi )2 = Aj = I(p) > 0, ∀j
i=1

Theorème 3.3.4. Soit pn le nième polynôme orthogonal par rapport au produit scalaire :
Z b
< f, g >= f (x)g(x)ω(x)dx
a

et soient a ≤ x1 < x2 < ... < xn ≤ b ses racines. Alors


n
X
In (f ) = Aj f (xj ) avec Aj = I(lj ), j = 1, ..., n (3.9)
j=1

(3.9) a un degré de précision de 2n − 1, elle est unique et c’est la formule de quadrature de


Gauss.
Démonstration. Soit p ∈ P2n−1 et il suffit de montrer que I(p) = In (p). On considère
la division euclidienne p = qpn + r avec r est un polynme de degré ≤ n − 1. Comme
Aj = I(lj ) pour j = 1, ..., n, c’est une formule interpolatoire donc In (r) = I(r)
In (p) = In (qpn ) + In (r) (3.10)
n
X
= Aj q(xj )p(xj ) +I(r) = 0 + I(r) (3.11)
j=1
| {z }
=0

et : Z b
I(qpn ) = q(x)pn (x)ω(x)dx = 0 car q ∈ Pn−1
a
Donc :
(3.11) = I(qpn ) + I(r) = I(p)
48 Chapitre 3. Polynômes orthogonaux et formules de quadrature

Unicité : Supposons que l’on a :


n
I˜n (f ) =
X
Ãi f (x̃i )
i=1

la formule de quadrature de Gauss avec Ãi = I(˜lj ), ˜lj est le polynôme de Lagrange associé
aux abscisses x̃i .
Z b
I˜n (pn ˜li ) = I(pn ˜li ) = pn (x)˜li (x)ω(x) = 0 par othogonalité
| {z } a
∈P2n−1
n
Ãj pn (x̃j )˜li (x̃j ) = Ãi pn (x̃i )
X
=
j=1

Pour i = 1, ..., n, Ãi pn (x̃i ) = 0. En utilisant le lemme 3.3.3 et en sachant que Ãi > 0, on
a ainsi que pn (x̃i ) = 0 avec i = 1, ..., n et donc :

x̃i = xi , i = 1, ..., n ⇒ I˜n = In

Theorème 3.3.5. Soit pn le polynôme de degré n orthonormal par rapport au produit scalaire
Z b
< f, g >= f (x)g(x)ω(x)dx
a

de coefficient de tête χn (c’est-à-dire pn (x) − χn xn ∈ Pn−1 )

2n−1 f (2n−1) (ξ) 1


∀f ∈ C ([a, b]), ∃ξi ∈ [a, b], I(f ) − In (f ) =
(2n − 1)! χ2n
Démonstration. Soit p ∈ P2n−1 qui vérifie les conditions d’interpolation suivantes :

 p(xi ) = f (xi ), i = 1, ..., n
polynôme d’interpolation d’Hermite
 p0 (xi ) = f 0 (xi ), i = 1, ..., n

On a montré l’existence et l’unicité de la formule de quadrature de Gauss, on veut maintenant


montrer sa formule d’erreur.
n
f (2n−1) Y
∃ξ ∈ [a, b], f (x) − p(x) = (x − xj )2
(2n − 1)! j=1

On pose :
f (2n−1) (x) f (2n−1) (x)
m = min , M = max
[a,b] (2n − 1)! [a,b] (2n − 1)!
(f (x) − p(x))χ2n
m ≤ Qn  ≤ M ⇔ mpn (x)2 ≤ χ2n (f (x) − p(x)) ≤ M pn (x)2
j=1 (x − xj )
2 2
χn
Z b
pn (x)2 ω(x)dx = 1
a

m ≤ χ2n I(f − p) ≤ M

I(f − p) = I(f ) − I(p) = I(f ) − In (p) (3.12)


= I(f ) − In (f )
Chapitre 3. Polynômes orthogonaux et formules de quadrature 49

La formule (3.12) est vraie car le degré de précision est 2n − 1.


n
X n
X
In (p) = Ai p(xi ) = Ai f (xi ) = In (f )
i=1 i=1

m M
2
≤ I(f ) − In (f ) ≤ 2
χn χn
Par le théorème des valeurs intermédiaires :
1 f (2n−1)
∃ξ ∈ [a, b], I(f ) − In (f ) =
χ2n (2n − 1)!

Exemple 3.3.3. χn = 2n−(1/2) pour les polynômes de Tchebychev.


!2n
1 b−a
2
≤2
χn 4
Chapitre 4

Approximation en norme uniforme

Problème. Calculer la meilleure approximation (si existence) d’une fonction continue sur un
compact en norme uniforme dans un espace de dimension finie. Plus précisement, V = C([a, b]),
k · k = k · k∞ , kf k∞ = max[a,b] |f (x)|, U est un espace vectoriel de dimension finie. On veut
déterminer p∗ ∈ U tel que :
kf − p∗ k∞ = min kf − pk∞
p∈U

Si p existe, on l’appelle meilleur approximant en norme uniforme ou en norme min-max.
On veut ainsi chercher :
– les problèmes d’existence et d’unicité,
– la caractérisation,
– des algorithmes de calcul.

4.1 Réduction de l’erreur d’une approximation


Problème. Etant donnée une approximation p ∈ U de f , peut-on la changer de façon à trouver
une meilleure approximation (c’est-à-dire trouver q ∈ U tel que k(p + θq) − pk∞ < kf − pk∞ .
Soit Z un sous-ensemble fermé de [a, b]. On cherche p ∈ U qui minimise maxx∈Z |f (x)−p(x)|.
Theorème 4.1.1. f ∈ C([a, b]), p∗ ∈ U, ZM l’ensemble des points de Z dans lequel l’erreur
atteint son maximum.
|f (x) − p∗ (x)| = kf − p∗ k∞,Z
Alors p∗ minimise l’expression maxx∈Z |f (x)−p∗ (x)| dans U (p∗ est solution de la minimisation
minp∈U kf − pk∞,Z ) si et seulement s’il n’existe pas de p ∈ U tel que :

e∗ (x) = (f (x) − p∗ (x))p(x) > 0, ∀x ∈ ZM (4.1)

Démonstration. (⇐) Supposons que p∗ n’est pas optimal :

∃p ∈ U, ∃θ > 0, |f (x) − (p∗ (x) − θp(x))| < |f (x) − p∗ (x)|, ∀x ∈ ZM


⇒ (f (x) − p∗ (x))p(x) > 0, ∀x ∈ Zn

et sgn(f (x) − p∗ (x)) = sgn(p(x)), ∀x ∈ Zn .


(⇒) Supposons que (4.1) est vérifiée. Il reste à montrer que, pour une valeur de θ,

max |f (x) − p∗ (x) − θp(x)| < max |f (x) − p∗ (x)| .


x∈Z x∈Z
| {z }
ke∗ k∞,Z

50
Chapitre 4. Approximation en norme uniforme 51

Supposons sans perte de généralité que

|p(x)| ≤ 1, ∀x ∈ [a, b].

On définit l’ensemble
Z0 = {x ∈ Z, p(x).e∗ (x) ≤ 0},
on a ainsi Z0 ∩ ZM = ∅. Soit
d = max |e∗ (x)|,
x∈Z0

d < max |e∗ (x)| (4.2)


x∈Z

Si Z0 = ∅ alors d = 0. Choissions
1
 
θ= max |e∗ (x)| − d > 0.
2 x∈Z
Ainsi,
Z est fermé ⇒ ∃ξ ∈ Z, |e∗ (ξ) − θp(ξ)| = max |e∗ (x) − θp(x)|
x∈Z

(i) Supposons ξ ∈ Z0

max |ex − x) − θp(x)| = |e∗ (ξ)| + θ|p(ξ)|


x∈Z
1 1
≤ d − d + max |e∗ (x)|
2 2 x∈Z

< max |e (x)|
x∈Z

⇒ p n’est pas meilleur approximant

/ Z0 ⇒ p(ξ) et e∗ (ξ) ont le même signe et


(ii) Supposons ξ ∈

|e∗ (ξ) − θp(ξ)| < max (|e∗ (ξ), θ|p(ξ)|) ≤ max |e∗ (x)|
x∈Z

⇒ p n’est pas meilleur approximant.


Donc pour vérifier si on a un meilleur approximant, il suffit de regarder l’ensemble des
valeurs extrêmales de e∗ .

4.2 Caractérisation de la meilleure approximation

Soit U = Pn . Si p ∈ Pn alors p a au plus n changements de signe. Donc si e∗ (x) change de


signe plus de n fois dans ZM alors p∗ est la meilleure approximation.
Inversement, si le nombre de changement de signe de e∗ est ≤ n (aux points ηk , k = 1, ..., n)
alors en choissant n Y
p(x) = (x − ηk )
k=1

on montre que p∗ n’est pas optimale.

Définition 4.2.1. U vérifie la condition de Haar si et seulement si ∀p ∈ U, p 6= 0 le nombre


de racines de {p(x) = 0, a ≤ x ≤ b} est inférieure à la dimension de l’espace.
52 Chapitre 4. Approximation en norme uniforme

Remarque. Une définition de la condition de Haar est la suivante : « Si {φi }ni=0 base de U, ∀ξi
pour i =0, ..., n où les ξi forment une subdivision de [a, b] (a ≤ ξ0 < ξ1 < ... < ξn ≤ b) alors la
n
matrice φi (ξj ) est inversible. »
i,j=0
Pour U = Pn ,
1 ξ0 · · · ξ0n
 

1 ξ1 · · · ξ1n 

[φi (ξj )] = 
.. .. .
.. 
. . .
1 ξn · · · ξnn
Theorème 4.2.1 (Théorème de caractérisation). Soit U un espace de dimension n + 1 de
C([a, b]) vérifiant la condition de Haar. Alors p∗ est la meilleure approximation minimax de
f ∈ C([a, b]) si et seulement il existe n + 2 points {ξi∗ , i = 0, ..., n + 1} tel que a ≤ ξ0∗ < ξ1∗ <

... < ξn+1 < b,

|f (ξi∗ ) − p∗ (ξi∗ )| = kf − p∗ k∞ , i = 1, ..., n + 1,


∗ (4.3)
f (ξi+1 ) − p∗ (ξi+1

) = −(f (ξi∗ ) − p∗ (ξi∗ )), i = 0, ..., n.

Démonstration. (⇒) Supposons l’existence des {x∗i , i = 0, ..., n + 1} vérifiant (4.3),

∃ηi ∈]ξi∗ , ξi+1



[, f (ηi ) − p∗ (ηi ) = 0, i = 0, ...n.

On a n + 1 changement de signe p/e∗ (x) ⇒ p∗ optimal et condition de Haar.


(⇒) p∗ meilleure approximation ⇒ e∗ doit avoir au moins n+1 changement de signes (sinon
soient η1 , ..., ηn les points de changement de signe, on peut construire p ∈ U qui a comme
racines les ηi ), ce qui permet de définir n + 2 points ξi∗ vérifiant (4.3).

Preuve de minimalité des polynômes de Tchebychef, kpk∞,[−1,1]


Rappel (Polynômes de Tchebychef). On définit le nième polynôme de Tchbeychef par

T n(x) = 2xTn−1 (x) + Tn−2 (x),

sachant que les premies polynômes de Tchebychev sont

T0 (x) = 1, T1 (x) = x.

Donc
Tn (x) = 2n−1 xn + · · · .
et
∀x ∈ [−1, 1], Tn (x) = arccos θ où x = cos θ
Corollaire.
1
 
arg min max |p(x)| = Tn ,
p∈Pn −1≤x≤1 2n−1
où p est de degré n et unitaire. On a ainsi ∀x ∈ [−1, 1], |Tn (x)| ≤ 1,

|Tn (x)| = 1 ⇔ | cos nθ| = 1.

Pour nθ = kπ, où k = 0, ...n,



θk = , k = 0, ..., n.
n
Chapitre 4. Approximation en norme uniforme 53

n−1


min n max xn i
X
+ ci x


c0 ,...,cn−1 ∈R −1≤x≤1
i=0

⇔ chercher le meilleur approximant dans Pn−1 en norme uniforme pour la fonction f (x) = xn
dans [−1, 1].
n−1
1
e(x) = xn + ci xi = n−1 Tn (x).
X

i=0 2
On choisit ξ = cos(θn−i ),

Tn (ξi ) = (−1)i+1 , ξ0 < ξ1 < ... < ξn


|Tn (ξ)| = 1 = kTn k∞ ,
Tn (ξi+1 ) = −Tn (ξi ).

Corollaire. U un sous-espace linéaire de C([a, b]) de dimension n + 1 vérifiantla condition de


Haar et a ≤ ξ0 < ξ1 < ... < ξn+1 ≤ b. Soit f ∈ C([a, b]). Alors p∗ ∈ U minimise

max |f (ξi ) − p(ξi )|,


0≤i≤n+1

pour p ∈ U si et seulement si

f (ξi+1 ) − p∗ (ξi+1 ) = − [f (ξi ) − p∗ (ξi )] , i = 0, ..., n.

Soit Z = {ξi , i = 0, ..., n + 1}. La fonction p∗ peut être calculée par

h = f (ξ0 ) − p∗ (ξ0 )

On choisit une base pour l’espace {φi }ni=0 ,


n
p∗ (x) =
X
λj φj (x),
j=0

les λj sont solution du système linéaire


n
λj φj (ξi ) = (−1)i h,
X
f (ξi ) − i = 0, ..., n + 1.
j=0

Ce système a toujours une solution (qui est le meilleur approximant) pour tout f ⇒ la matrice
du système à résoudre doit être inversible ⇒ la solution est unique.

4.3 Algorithme de calcul de Remez (exchange algorithm)


Cet algorithme permet le calcul de p ∈ U (qui vérifie la condition de Haar) qui minimise

kf − pk∞ = max |f (x) − p(x)|.


x∈[a,b]

C’est l’algorithme itératif qui génère un ensemble de points (ξi )n+1


i=0 à chaque étape qui converge
vers {ξi∗ , i = 0, ..., n + 1} vérifiant (4.3).
Itération :
54 Chapitre 4. Approximation en norme uniforme

1) On part d’un ensemble {ξi ,, i = 0, ..., n + 1} et on calcule p ∈ U minimisant

max |f (ξi ) − p(ξi )|,


0≤i≤n+1

en résolvant le système linéaire

f (ξi ) − p(ξi ) = (−1)i h, i = 0, ..., n

en posant h := f (ξ0 ) − p(ξ0 ). On sait que |h| ≤ kf − p∗ k ≤ kf − pk∞ .


2) On considère la fonction erreur
e(x) = f (x) − p(x)
et on calcule les abscisses des points extremaux, soit η tel que

|f (η) − p(η)| = kf − pk∞

3) On caclule δ := |f (η) − p(η)| − |h|. Si η est suffisament petit alors on arrête l’algorithme car

kf − pk∞ ≤ kf − p∗ k∞ + δ,

4) sinon on échange l’ensemble de référence

{ξi∗ , i = 0, ..., n + 1}.

Si on considère la fonction h(ξ0 , ..., ξn ) = |h|, le but de l’itération est d’augmenter la veleur
de h le plus possible.

You might also like