0% ont trouvé ce document utile (0 vote)
26 vues4 pages

Exercices de splines et polynômes cubiques

Ce document présente plusieurs exercices sur les splines cubiques et leur utilisation pour l'interpolation de fonctions. Les exercices portent sur le calcul de polynômes cubiques par morceaux, l'approximation de fonctions par des splines cubiques, et l'estimation d'erreurs d'interpolation.

Transféré par

Mohamad
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
26 vues4 pages

Exercices de splines et polynômes cubiques

Ce document présente plusieurs exercices sur les splines cubiques et leur utilisation pour l'interpolation de fonctions. Les exercices portent sur le calcul de polynômes cubiques par morceaux, l'approximation de fonctions par des splines cubiques, et l'estimation d'erreurs d'interpolation.

Transféré par

Mohamad
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Paul Verlaine-Metz, année 2008/2009 - J-P.

Croisille 1

Université Paul Verlaine-Metz - UFR MIM Année 2008/2009


Master de Mathématiques, année M1
Module Modélisation et introduction à la programmation

Exercices - Feuille 2

1- Polynôme cubique de Hermite et spline cubique


1) Ecrire un programme cubic.m qui calcule l’unique polynôme cubique sur [a, b] prenant les
valeurs f (a), f (b), f ′ (a), f ′ (b) pour f , fonction donnée.
2) Soit a = x0 < x1 < ... < xn−1 < xn = b. Ecrire un routine qui calcule le polynôme cubique par
morceaux sur chaque ]xi−1 , xi [, prenant les valeurs f (xi ), f ′ (xi ).
3) Ecrire une routine spline.m qui calcule l’unique spline cubique s̃(x) prenant les valeurs f (xi )
aux points xi . On précisera bien les entrées /sorties du programme. Pourquoi n’y a-t-il pas besoin
de spécifier les valeurs des dérivées f ′ (xi ) aux points autres que x0 , xn ?
4) Appliquer le programme à la fonction de Runge. Tracer l’erreur n 7→ en correspondante, n étant
le nombre de points de discrétisation,

en = sup |s̃(x) − f (x)| (1)


a≤x≤b

2- Splines cubiques
1) a) Rappeler le principe du calcul de la spline cubique d’une fonction f (x) sur l’intervalle [a, b]
avec n + 1 points régulièrement espacés

x0 = a < x1 < ... < xn = b (2)

b) On considère la fonction f (x) = Log (x). En utilisant la fonction spline de matlab (faire help
spline), tracer la spline cubique s̃(x) qui approche f (x) sur l’intervalle [a, b] = [0.01, 1.01] avec
n + 1 points régulièrement espacés pour différentes valeurs de n: n = 4, 9, ... et les conditions limite
de Hermite.
c) Ecrire un programme qui calcule cette spline et la représenter. On mettra le nombre de points
en paramètres. Evaluer numériquement kf (x) − s̃(x)k∞ .
d) On considère la fonction f (x) = sin(2πx) sur l’intervalle [a, b] = [0, 1]. Calculer et représenter la
spline cubique avec conditions limite périodiques pour n = 3, n = 7, n = 15 points régulièrement
espacés.
Université Paul Verlaine-Metz, année 2008/2009 - J-P. Croisille 2

3- Comparaison interpolé spline cubique/mesures effectives


On rappelle le tableau de données mesurées (cf feuille 1)

ν E(ν) ν E(ν) ν E(ν)


>0.00 -3.10 3.65 3.10 >5.88 4.77
0.29 -2.94 >4.00 4.19 6.25 5.02
>0.45 -2.72 4.17 4.90 >6.71 5.05
>0.80 -2.23 >4.35 5.77 7.18 5.39
1.11 -1.60 >4.57 6.57 >8.00 6.55
>1.43 -0.78 >4.76 6.23 8.50 7.45
1.82 0.00 5.00 5.52 >9.00 8.45
>2.27 1.00 >5.26 4.90 9.50 9.80
2.50 1.30 5.56 4.65 >10.00 11.30
>2.91 1.80

1) Tracer l’interpolé spline cubique s(x) basée sur les données marquées >.
2) Evaluer pour les autres données la prédiction faite par s(x) et la valeur effectivement mesurée.
Comparer avec l’interpolé de Lagrange.
4- Spline cardinale
On considère sur R les points xk = kh, h > 0 étant un pas de discrétisation. La spline cardinale
lj (x) est l’unique spline cubique sur R attachée aux xj telle que lj (xk ) = δjk .
1) Rappeler la définition d’une spline cubique s(x) ∈ S3 [x0 , x1 , .., xn ].
2) Montrer que les dérivées lj′ (xk ) sont solution de

3
lj′ (xk−1 ) + 4lj′ (xk ) + lj′ (xk+1 ) = [δj,k+1 − δj,k−1 ] , k∈Z (3)
h
3) En déduire qu’il existe deux constantes α, β ∈ R tel que
√ √
lj′ (xk ) = α(−2 + 3)k−j + β(−2 − 3)k−j , k ≥j+1 (4)

4) Montrer qu’il existe une unique fonction lj (x) bornée sur R vérifiant (3) et que les dérivées
lj′ (xk ) vérifient

 −3(−2 + 3)j−k /h, k < j

lj′ (xk ) = 0, √ k=j (5)


3(−2 + 3)k−j /h, k>j

5) Tracer la spline cardinale lj (x) à l’aide d’un programme matlab.


5- Inégalité de Wirtinger R 2π
Soit u ∈ C 1 [0, 2π] tel que u(0) = u(2π) et 0 u(t)dt = 0.
1) Montrer que
Z 2π Z 2π
2
|u(t)| dt ≤ |u′ (t)|2 dt (6)
0 0
On essaiera successivement:
a) L’inégalité de Cauchy-Schwarz appliquée à des fonctions bien choisies.
b) L’utilisation du développement en séries de Fourier de u.
2) En déduire que si f ∈ C 1 [a, b] avec f (a) = f (b) = 0, alors
Z b Z b
2 2 2
π |f (x)| dx ≤ (b − a) |f ′ (x)|2 dx (7)
a a
Université Paul Verlaine-Metz, année 2008/2009 - J-P. Croisille 3

6- Relation intégrale pour les splines


1) Rappeler la définition de l’espace des splines cubiques S3 (Ωn ) associées à
Ωn = {a = x0 , x1 , ..., xn−1 , xn = b}.
Préciser la dimension de cet espace et en donner une base.
2) Rappeler les trois types de condition limite : Hermite, “naturelle” et périodique, qu’on peut
ajouter à la condition de collocation s(xν ) = f (xν ) afin de définir la spline s(x).
On note d(x) l’erreur entre la fonction à interpoler et la spline, d(x) = f (x) − s(x). On veut
montrer que la relation intégrale suivante est vraie dans chacun des trois cas ci-dessus.
Z b Z b Z b
f ′′ (x)2 dx = (f ′′ (x) − s′′ (x))2 dx + s′′ (x)2 dx (8)
a a a

3) Montrer que (8) est équivalent à


Z b
s′′ (x)d′′ (x)dx = 0 (9)
a

4) En intégrant par parties, montrer que (9) est vrai sous la condition au bord

s′′ (b)d′ (b) = s′′ (a)d′ (a) (10)

Montrer que cette condition est vérifiée dans chacun des trois cas ci-dessus.
5) On souhaite à présent montrer que les conditions de collocation + conditions au bord définissent
bien la spline cubique de façon unique. Pourquoi suffit-il de montrer que f ≡ 0 ⇒ s ≡ 0 ? On
considère la décomposition de s(x) sur la base des splines
3 n−1
X xλ X ′ (x − xν )3+
s(x) = a′λ + bν (11)
λ! p=1
3!
λ=0

Montrer que si f ≡ 0, alors s(x) = a0 + a1 x, puis montrer que chacun des 3 types de conditions
limite entraı̂nent s(x) ≡ 0.
7- Estimations d’erreur pour l’interpolation spline
Soit s ∈ S2m−1 (Ωn ), une spline d’ordre impair attachée à l’ensemble

Ωn = {a = x0 < x1 , ..., xn−1 < xn = b} (12)

Alors on a la relation intégrale suivante


Z b Z b Z b
f (m) (x)2 dx = (f (m) (x) − s(m) (x))2 dx + s(m) (x)2 dx (13)
a a a

pourvu que s(x) vérifie la relation aux limites, (on note d(x) = f (x) − s(x)),
m−2
X m−2
X
(−1)µ s(m+µ) (a)d(m−µ−1) (a) = (−1)µ s(m+µ) (b)d(m−µ−1) (b) (14)
µ=0 µ=0

1) Vérifier que cette relation intégrale est toujours valable pour les splines linéaires.
2) Déduire des questions précédentes et de l’inégalité de Wirtinger que la spline linéaire s̃ vérifie

h ′
kf − s̃k2 ≤ kf k2 (15)
π
Université Paul Verlaine-Metz, année 2008/2009 - J-P. Croisille 4

3) a) Montrer que l’on a pour toute fonction f ∈ C 2 [a, b] et s̃ la spline linéaire, que

kf ′ − s̃′ k22 = (f − s̃, f ′′ )2 (16)

où (., .)2 designe le produit scalaire de L2 [a, b]. b) En déduire que

h2 ′′
kf − s̃k2 ≤ kf k2 (17)
π2
4) Soit a = x0 < x1 , ..., < xn = b, n + 1 points distincts de [a, b] et s̃ la spline cubique associée avec
conditions aux limites de Hermite.
a) En intégrant par parties et en utilisant l’inegalité de Wirtinger, montrer que

h ′
kf − s̃k2 ≤ kf − s̃′ k2 (18)
π
b) En appliquant le théorème de Rolle à f − s̃, montrer que

(2h)2
kf ′ − s̃′ k22 ≤ kf − s̃k2 kf (4) k2 (19)
π2
c) En déduire que
h4 (4)
kf − s̃k ≤ 4 kf k2 (20)
π4

Vous aimerez peut-être aussi