AnaNumI_15-09-2022_small
AnaNumI_15-09-2022_small
AnaNumI_15-09-2022_small
Notes de cours
Sup Galilée, Ingénieurs MACS 1ère année & L3-MIM
Version du 2022/09/15
Francois Cuvelier
Université Paris XIII / Institut Galilée
L.A.G.A./Département de Mathématiques
http://www.math.univ-paris13.fr/„cuvelier
[email protected]
Table des matières
4 Interpolation 125
4.1 Polynôme d’interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.1.1 Erreur de l’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.1.2 Points de Chebyshev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.1.3 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.2 Polynôme d’interpolation de Lagrange-Hermite . . . . . . . . . . . . . . . . . . . . . . . . 136
4.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
B Annexes 197
B.1 Analyse : rappels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
B.1.1 En vrac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
B.1.2 Espace métrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
B.2 Algèbre linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
B.2.1 Vecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
B.2.2 Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
B.2.3 Normes vectorielles et normes matricielles . . . . . . . . . . . . . . . . . . . . . . . 209
B.2.4 Réduction des matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
0.0.0
0.TABLE DES MATIÈRES
0.0.TABLE DES MATIÈRES
Toute cette partie est le contenu quasi-intégral d’un document réalisé par C. Japhet
Ce chapitre est une introduction à la représentation des nombres en machine et aux erreurs d’arrondis,
basé sur [5], [4].
Cet exemple est extrait de [5], [4]. Le nombre π est connu depuis l’antiquité, en tant que méthode de
calcul du périmètre du cercle ou de l’aire du disque. Le problème de la quadrature du cercle étudié par les
anciens Grecs consiste à construire un carré de même aire qu’un cercle donné à l’aide d’une règle et d’un
compas. Ce problème resta insoluble jusqu’au 19ème siècle, où la démonstration de la transcendance de
π montra que le problème ne peut être résolu en utilisant une règle et un compas.
Nous savons aujourd’hui que l’aire d’un cercle de rayon r est A “ πr2 . Parmi les solutions proposées
pour approcher A, une méthode consiste à construire un polygône dont le nombre de côté augmenterait
jusqu’à ce qu’il devienne équivalent au cercle circonscrit. C’est Archimède vers 250 avant J-C qui appli-
quera cette propriété au calcul des décimales du nombre π, en utilisant à la fois un polygône inscrit et
circonscrit au cercle. Il utilise ainsi un algorithme pour le calcul et parvient à l’approximation de π dans
10
l’intervalle p3 ` 71 , 3 ` 71 q en faisant tendre le nombre de côtés jusqu’à 96.
Regardons l’algorithme de calcul par les polygônes inscrits. On considère un cercle de rayon r “ 1 et
on note An l’aire associée au polygône inscrit à n côtés. En notant αn “ 2π
n , An est égale à n fois l’aire
du triangle ABC représenté sur la figure 1.1, c’est-à-dire
αn αn
An “ n cos sin ,
2 2
n αn αn n n 2π
An “ p2 cos sin q “ sin αn “ sinp q.
2 2 2 2 2 n
2 Représentation des nombres en machine, erreurs d’arrondis
2π
A αn “ n
Comme on cherche à calculer π à l’aide de An , on ne peut pas utiliser l’expression ci-dessus pour
calculer An , mais on peut exprimer A2n en fonction de An en utilisant la relation
c d a
αn 1 ´ cos αn 1 ´ 1 ´ sin2 αn
sin “ “ .
2 2 2
Ainsi, en prenant n “ 2k , on définit l’approximation de π par récurrence
c ?
2k 2π 1 ´ 1 ´ sk´1
x k “ A2 k “ sk , avec sk “ sinp k q “
2 2 2
En partant de k “ 2 (i.e. n “ 4 et s “ 1) on obtient l’algorithme suivant:
1. Représentation des nombres en machine, erreurs d’arrondis
1: s Ð 1, n Ð 4 Ź Initialisations
2: Tantque s ą 1e ´ 10 faire Ź Arrêt si s “ sin pαq est petit
3: s Ð sqrtpp1 ´ sqrtp1 ´ s ˚ sqq{2q Ź nouvelle valeur de sinpα{2q
4: nÐ2˚n Ź nouvelle valeur de n
5: A Ð pn{2q ˚ s Ź nouvelle valeur de l’aire du polygône
6: Fin Tantque
1.2. Représentation scientifique des nombres dans différentes bases
On a limkÝÑ`8 xk “ π. Ce n’est pourtant pas du tout ce que l’on va observer sur machine! Les
résultats en Python (sous Sage) de la table 1.1 montre que l’algorithme commence par converger vers π
puis pour n ą 65536, l’erreur augmente et finalement on obtient An “ 0!! “Although the theory and the
program are correct, we obtain incorrect answers” ([5]).
Ceci résulte du codage des valeurs réelles sur un nombre fini de bits, ce que nous allons détailler dans
ce chapitre.
n An |An ´ π| sinpαn q
4 2.00000000000000 1.141593e+00 1.000000e+00
8 2.82842712474619 3.131655e-01 7.071068e-01
16 3.06146745892072 8.012519e-02 3.826834e-01
32 3.12144515225805 2.014750e-02 1.950903e-01
64 3.13654849054594 5.044163e-03 9.801714e-02
128 3.14033115695474 1.261497e-03 4.906767e-02
256 3.14127725093276 3.154027e-04 2.454123e-02
512 3.14151380114415 7.885245e-05 1.227154e-02
1024 3.14157294036788 1.971322e-05 6.135885e-03
2048 3.14158772527996 4.928310e-06 3.067957e-03
4096 3.14159142150464 1.232085e-06 1.533980e-03
avec
• Partie entière : 1234
• Mantisse : 0.5678 ou 1.2345678 ou 0.0012345678
• Exposant : 4 ou 6
Selon le décalage et l’exposant que l’on aura choisi, le couple mantisse-exposant va changer mais le nombre
représenté est le même. Afin d’avoir une représentation unique, la troisième dans (1.1) sera utilisée, avec
1.2345678 pour mantisse et 3 pour exposant. Elle correspond à l’écriture avec un premier chiffre avant le
point décimal non nul dans la mantisse.
Exemple en base 2
La base 2 est la base utilisée par les ordinateurs. Les chiffres utilisables dans cette base sont 0 et 1 que
l’on appelle bit pour binary digit, les ordinateurs travaillent en binaire. Par exemple
39 “ 32 ` 4 ` 2 ` 1 “ 25 ` 22 ` 21 ` 20 “ p100111q2 ,
3.625 “ 21 ` 20 ` 2´1 ` 2´3 “ p11.101q2 “ p1.1101q2 21
exposant e tel que le couple pm, eq caractérise le nombre. En faisant varier e, on fait « flotter » la virgule
décimale. La limitation fondamentale est que la place mémoire d’un ordinateur est limitée, c’est-à-dire
qu’il ne pourra stocker qu’un ensemble fini de nombres. Ainsi un nombre machine réel ou nombre à
virgule flottante s’écrira :
x̃ “ ˘m ¨ be
m “ D.D ¨ ¨ ¨ D
e “ D¨¨¨D
où D P t0, 1, ..., b´1u représente un chiffre. Des représentations approchées de π sont : (0.031,2), (3.142,0),
(0.003,3) et on observe qu’elles ne donnent pas la même précision. Pour rendre la représentation unique
1.2.1 Partie entière, mantisse et exposant
et garder la meilleure précision, on utilisera une mantisse normalisée : le premier chiffre avant le point
décimal dans la mantisse est non nul. Les nombres machine correspondants sont appelés normalisés.
En base 2, le premier bit dans la mantisse sera donc toujours 1, et on n’écrit pas ce 1 ce qui permet
d’économiser un bit. L’exposant est un nombre variant dans un intervalle fini de valeurs admissibles :
L ď e ď U (typiquement L ă 0 et U ą 0). Le système est donc caractérisé par quatre entiers :
• la base b (b “ 2),
En mathématiques on effectue les calculs avec des nombres réels x provenant de l’intervalle continu
x P r´8, 8s. A ? cause de la limitation ci-dessus, la plupart des réels seront approchés sur un ordinateur.
Par exemple, 13 , 2, π possèdent une infinité de décimales et ne peuvent donc pas avoir de représentation
exacte en machine. Le plus simple des calculs devient alors approché. L’expérience pratique montre que
cette quantité limitée de nombres représentables est largement suffisante pour les calculs. Sur l’ordinateur,
les nombres utilisés lors des calculs sont des nombres machine x̃ provenant d’un ensemble discret de
nombres machine x̃ P tx̃min , . . . , x̃max u. Ainsi, chaque nombre réel x doit être transformé en un nombre
1.2. Représentation scientifique des nombres dans différentes bases
machine x̃ afin de pouvoir être utilisé sur un ordinateur. Un exemple est donné sur la figure 1.1.
Figure 1.2: Représentation des nombres réels R par les nombres machine F
Prenons un exemple, beaucoup trop simple pour être utilisé mais pour fixer les idées: t “ 3, L “
´1, U “ 2. Dans ce cas on a 3 chiffres significatifs et 33 nombres dans le système F. Ils se répartissent
avec 0 d’une part, 16 nombres négatifs que l’on ne représente pas ici, et 16 nombres positifs représentés
sur la figure 1.3.
1
Dans cet exemple, l’écriture en binaire des nombres entre 2 et 1 est
1 3 1 1
“ p0.100q2 , “ ` “ p0.110q2 ,
2 4 2 4
5 1 1 7 1 1 1
“ ` “ p0.101q2 , “ ` ` “ p0.111q2 .
8 2 8 8 2 4 8
On obtient ensuite les autres nombres en multipliant par une puissance de 2. Le plus grand nombre
représentable dans ce système est 72 (en particulier 4 n’est pas représentable). On remarque que les
nombres ne sont pas espacés régulièrement. Ils sont beaucoup plus resserrés du côté de 0 entre 41 et 21 que
entre 1 et 2 et encore plus qu’entre 2 et 3. Plus précisément, chaque fois que l’on passe par une puissance
de 2, l’espacement absolu est multiplié par 2, mais l’espacement relatif reste constant ce qui est une bonne
chose pour un calcul d’ingéniérie car on a besoin d’une précision absolue beaucoup plus grande pour des
nombres petits (autour de un millième par exemple) que des nombres très grands (de l’ordre du million
par exemple). Mais la précision ou l’erreur relative sera du même ordre. L’erreur absolue ou relative est
définie à section 1.4.1.
Précision machine. elle est décrite par le nombre machine eps. eps est le plus petit nombre machine
positif tel que 1 ` eps ą 1 sur la machine. C’est la distance entre l’entier 1 et le nombre machine x̃ P F
le plus proche, qui lui est supérieur. Dans l’exemple précédent eps “ 1{4.
Notez qu’avec des nombres dénormalisés, ce nombre serait 0.000000001 ˆ 10´99 , c’est-à-dire avec
seulement un chiffre significatif!
Les différences de représentation des nombres flottants d’un ordinateur à un autre obligeaient à repren-
dre les programmes de calcul scientifique pour les porter d’une machine à une autre. Pour assurer la com-
patibilité entre les machines, depuis 1985 une norme a été proposée par l’IEEE (Institute of Electrical
and Electronics Engineers), c’est la norme 754.
Le système IEEE 754 est un standard pour la représentation des nombres à virgule flottante en binaire. Il
définit les formats de représentation des nombres à virgule flottante (signe, mantisse, exposant, nombres
dénormalisés) et valeurs spéciales (infinis et NaN). Le bit de poids fort est le bit de signe. Cela signifie
que si ce bit est à 1, le nombre est négatif, et s’il est à 0, le nombre est positif. Les Ne bits suivants
représentent l’exposant décalé, et les Nm bits suivants représentent la mantisse.
L’exposant est décalé de 2Ne ´1 ´ 1 (Ne représente le nombre de bits de l’exposant), afin de le stocker
sous forme d’un nombre non signé.
x̃ exposant e mantisse m
x̃ “ 0 psi S “ 0) e“0 m“0
x̃ “ ´0 psi S “ 1)
Nombre normalisé 0 ă e ă 255 quelconque
x̃ “ p´1qS ˆ 2e´127 ˆ 1.m
Nombre dénormalisé e“0 m‰0
x̃ “ p´1qS ˆ 2e´126 ˆ 0.m
x̃ “ Inf psi S “ 0) e “ 255 m“0
1.3.2 Double précision
x̃ “ ´Inf psi S “ 1)
x̃ “ NaN (Not a Number) e “ 255 m‰0
• Le plus petit nombre positif normalisé différent de zéro, et le plus grand nombre négatif normalisé
différent de zéro sont :
˘2´126 “ ˘1, 175494351 ˆ 10´38
• Le plus grand nombre positif fini, et le plus petit nombre négatif fini sont : ˘p224 ´ 1q ˆ 2104 “
˘3, 4028235 ˆ 1038
zéro 0 0000 0000 000 0000 0000 0000 0000 0000 0,0
1 0000 0000 000 0000 0000 0000 0000 0000 -0,0
1 0 0111 1111 000 0000 0000 0000 0000 0000 1,0
Plus grand nombre normalisé 0 1111 1110 111 1111 1111 1111 1111 1111 3, 4 ˆ 1038
Plus petit x̃ ě 0 normalisé 0 0000 0001 000 0000 0000 0000 0000 0000 2´126
Plus petit x̃ ě 0 dénormalisé 0 0000 0000 000 0000 0000 0000 0000 0001 2´149
Infini 0 1111 1111 000 0000 0000 0000 0000 0000 Inf
1 1111 1111 000 0000 0000 0000 0000 0000 -Inf
NaN 0 1111 1111 010 0000 0000 0000 0000 0000 NaN
2 0 1000 0000 000 0000 0000 0000 0000 0000 2,0
exemple 1 0 1000 0001 101 0000 0000 0000 0000 0000 6,5
exemple 2 1 1000 0001 101 0000 0000 0000 0000 0000 -6,5
exemple 3 1 1000 0101 110 1101 0100 0000 0000 0000 -118,625
Détaillons l’exemple 3 : on code le nombre décimal -118,625 en utilisant le système IEEE 754.
1. C’est un nombre négatif, le bit de signe est donc "1",
2. On écrit le nombre (sans le signe) en binaire. Nous obtenons 1110110,101,
3. On décale la virgule vers la gauche, en laissant seulement un 1 sur sa gauche (nombre flottant
normalisé): 1110110, 101 “ 1, 110110101 ˆ 26 . La mantisse est la partie à droite de la virgule,
remplie de 0 vers la droite pour obtenir 23 bits. Cela donne 11011010100000000000000,
4. L’exposant est égal à 6, et nous devons le convertir en binaire et le décaler. Pour le format 32-bit
IEEE 754, le décalage est 127. Donc 6 + 127 = 133. En binaire, cela donne 10000101.
x̃ exposant e mantisse m
x̃ “ 0 psi S “ 0) e“0 m“0
x̃ “ ´0 psi S “ 1)
Nombre normalisé 0 ă e ă 2047 quelconque
x̃ “ p´1qS ˆ 2e´1023 ˆ 1.m
Nombre dénormalisé e“0 m‰0
x̃ “ p´1qS ˆ 2e´1022 ˆ 0.m
x̃ “ Inf psi S “ 0) e “ 2047 m“0
• Underflow: Si un calcul produit un nombre positif x qui est plus petit que x̃` min ˚ eps, on dit qu’il
y a underflow. Néanmoins, le calcul ne s’arrête pas dans ce cas, il continue avec la valeur de x mise
à zéro.
1.3.3 Matlab
Sous Matlab, les calculs réels sont en double précision par défaut. La fonction single peut être utilisée
pour convertir les nombres en simple précision. Pour voir la représentation des nombres réels sous Matlab,
on peut les afficher au format hexadécimal avec la commande format hex.
Le système hexadécimal est celui en base 16 et utilise 16 symboles : 0 à 9 pour représenter les valeurs
de 0 à 9, et A, B, C, D, E, F pour représenter les valeurs de 10 à 15. La lecture s’effectue de droite à
gauche. La valeur vaut la somme des chiffres affectés de poids correspondant aux puissances successives
du nombre 16. Par exemple, 5EB5216 vaut 2 ˚ 160 ` 5 ˚ 161 ` 11 ˚ 162 ` 14 ˚ 163 ` 5 ˚ 164 “ 387922.
Pour passer du binaire au format hexadecimal, c’est facile en regardant la chaîne binaire en groupe de 4
chiffres, et en représentant chaque groupe en un chiffre hexadécimal. Par exemple,
387922 “ 010111101011010100102 “ 0101 1110 1011 0101 00102
“ 5 E B 5 216
“ 5EB5216
La conversion de l’hexadécimal au binaire est le processus inverse.
On définit l’erreur absolue entre un nombre réel x et le nombre machine correspondant x̃ par
ra “ |x ´ x̃|.
|x ´ x̃|
r“ .
|x|
Opérations machine: On désigne par flop (de l’anglais floating operation) une opération élémentaire
à virgule flottante (addition, soustraction, multiplication ou division) de l’ordinateur. Sur les calculateurs
actuels on peut s’attendre à la précision suivante, obtenue dans les opérations basiques:
1.4.4 Erreurs d’annulation
˜ “ px̃ ‘ ỹqp1 ` rq
x̃‘ỹ
˜ représente
où |r| ă eps, la précision machine, et ‘ représente l’opération exacte, ‘ P t`, ´, ˚, {u et ‘
1. Représentation des nombres en machine, erreurs d’arrondis
1.4.2 Associativité
L’associativité des opérations élémentaires comme par exemple l’addition:
px ` yq ` z “ x ` py ` zq,
n’est plus valide en arithmétique finie. Par exemple, avec 6 chiffres de précision, si on prend les trois
nombres
x “ 1.23456e ´ 3, y “ 1.00000e0, z “ ´y,
on obtient px ` yq ` z “ p0.00123 ` 1.00000e0q ´ 1.00000e0 “ 1.23000e ´ 3 alors que x ` py ` zq “ x “
1.4. Calculs sur les nombres flottants
1.23456e ´ 3. Il est donc essentiel de considérer l’ordre des opérations et faire attention où l’on met les
parenthèses.
1.4.3 Monotonicité
Supposons que l’on a une fonction f strictement croissante sur un intervalle ra, bs. Peut-on assurer en
arithmétique finie que
x̃ ă ỹ ñ f px̃q ă f pỹq?
En général non. Dans la norme IEEE les fonctions standard sont implémentées de façon à respecter la
monotonicité (mais pas la stricte monotonicité).
» f=@(x) 1./(1-sqrt(1-x.^2));
» f(0.5*sqrt(eps))
ans =
Inf
3.6029e+16
C’est ce qui se passe dans la cas du calcul de π avec l’algorithme naïf 1.1. En utilisant la formule
c d a
donc sujet aux erreurs d’annulation. Pour y palier, il faut reformuler les équations de façon à
s’affranchir des erreurs d’annulations, par exemple en multipliant le numérateur et le dénominateur par
b ? c ? ?
αn 1´ 1´sin2 αn p1´ 1´sin2 αn qp1` 1´sin2 αn q
sin “ 2 “ ?
2 2p1` 1´sin2 αn q
c
1´p1´sin2 αn q sin αn
“ ? “ b ? .
2p1` 1´sin2 αn q 2p1` 1´sin2 αn q
On peut alors écrire l’Algorithme 1.2 correspondant au calcul de π avec cette nouvelle formule.
1: s Ð 1, n Ð 4, Ź Initialisations
2: Tantque s ą 1e ´ 10 faire Ź Arrêt si s “ sin pαq est petit
3: s Ð s{sqrtp2 ˚ p1 ` sqrtp1 ´ s ˚ sqqq Ź nouvelle valeur de sinpα{2q
4: nÐ2˚n Ź nouvelle valeur de n
5: A Ð pn{2q ˚ s Ź nouvelle valeur de l’aire du polygône
6: Fin Tantque
n An |An ´ π| sinpαn q
4 2.00000000000000 1.141593e+00 1.000000e+00
8 2.82842712474619 3.131655e-01 7.071068e-01
16 3.06146745892072 8.012519e-02 3.826834e-01
32 3.12144515225805 2.014750e-02 1.950903e-01
64 3.13654849054594 5.044163e-03 9.801714e-02
128 3.14033115695475 1.261497e-03 4.906767e-02
256 3.14127725093277 3.154027e-04 2.454123e-02
512 3.14151380114430 7.885245e-05 1.227154e-02
1024 3.14157294036709 1.971322e-05 6.135885e-03
2048 3.14158772527716 4.928313e-06 3.067957e-03
4096 3.14159142151120 1.232079e-06 1.533980e-03
8192 3.14159234557012 3.080197e-07 7.669903e-04
16384 3.14159257658487 7.700492e-08 3.834952e-04
32768 3.14159263433856 1.925123e-08 1.917476e-04
65536 3.14159264877699 4.812807e-09 9.587380e-05
131072 3.14159265238659 1.203202e-09 4.793690e-05
1.5.0 Erreurs d’annulation
Missile Patriot
En février 1991, pendant la Guerre du Golfe, une batterie américaine de missiles Patriot, à Dharan (Arabie
Saoudite), a échoué dans l’interception d’un missile Scud irakien. Le Scud a frappé un baraquement de
l’armée américaine et a tué 28 soldats. La commission d’enquête a conclu à un calcul incorrect du temps
de parcours, dû à un problème d’arrondi. Les nombres étaient représentés en virgule fixe sur 24 bits,
donc 24 chiffres binaires. Le temps était compté par l’horloge interne du système en 1/10 de seconde.
Malheureusement, 1/10 n’a pas d’écriture finie dans le système binaire : 1/10 = 0,1 (dans le système
décimal) = 0,0001100110011001100110011... (dans le système binaire). L’ordinateur de bord arrondissait
1/10 à 24 chiffres, d’où une petite erreur dans le décompte du temps pour chaque 1/10 de seconde. Au
moment de l’attaque, la batterie de missile Patriot était allumée depuis environ 100 heures, ce qui avait
entraîné une accumulation des erreurs d’arrondi de 0,34 s. Pendant ce temps, un missile Scud parcourt
environ 500 m, ce qui explique que le Patriot soit passé à côté de sa cible. Ce qu’il aurait fallu faire
c’était redémarrer régulièrement le système de guidage du missile.
Explosion d’Ariane 5
Le 4 juin 1996, une fusée Ariane 5, à son premier lancement, a explosé 40 secondes après l’allumage.
La fusée et son chargement avaient coûté 500 millions de dollars. La commission d’enquête a rendu son
rapport au bout de deux semaines. Il s’agissait d’une erreur de programmation dans le système inertiel
de référence. À un moment donné, un nombre codé en virgule flottante sur 64 bits (qui représentait la
vitesse horizontale de la fusée par rapport à la plate-forme de tir) était converti en un entier sur 16 bits.
Malheureusement, le nombre en question était plus grand que 32768 (overflow), le plus grand entier que
l’on peut coder sur 16 bits, et la conversion a été incorrecte.
Bourse de Vancouver
Un autre exemple où les erreurs de calcul ont conduit à une erreur notable est le cas de l’indice de la
Bourse de Vancouver. En 1982, elle a crée un nouvel indice avec une valeur nominale de 1000. Après
chaque transaction boursière, cet indice était recalculé et tronqué après le troisième chiffre décimal et,
au bout de 22 mois, la valeur obtenue était 524,881, alors que la valeur correcte était 1098.811. Cette
différence s’explique par le fait que toutes les erreurs d’arrondi étaient dans le même sens : l’opération
de troncature diminuait à chaque fois la valeur de l’indice.
(a) Scipione del Ferro 1465-1526, (b) Niccolo Fontana 1499-1557, (c) Ludovico Ferrari 1522-1565,
mathématicien italien mathématicien italien mathématicien italien
(d) Paolo Ruffini 1765-1822, (e) Bernard Bolzano 1781- (f) Niels Henrick Abel 1802-1829,
mathématicien italien 1848, mathématicien, logicien, mathématicien norvégien
philosophe et théologien de
l’empire d’Autriche
14 Résolution de systèmes non linéaires
Un problème simple comme la recherche des zéros/racines d’un polynôme n’est pas ... simple. Depuis
tout petit, on sait trouver les racines d’un polynôme de degré 2 : a2 x2 ` a1 x ` a0 “ 0. Quid des racines
de polynômes de degré plus élevé?
• degré 3 : Scipione del Ferro (1465-1526, mathématicien italien) et Niccolo Fontana (1499-
1557, mathématicien italien)
• degré 4 : Lodovico Ferrari (1522-1565, mathématicien italien)
• degré 5 : Paolo Ruffini (1765-1822, mathématicien italien) en 1799, Niels Henrick Abel (1802-
1829, mathématicien norvégien) en 1824, montrent qu’il n’existe pas de solution analytique.
L’objectif de ce chapitre est de rechercher numériquement les zéros/racines d’une fonction ou d’un
systéme d’équations lorsqu’ils existent :
2.1.1 Méthode de dichotomie ou de bissection
‚ Soit f : ra, bs Ă R ÝÑ R, trouver x P ra, bs tel que f pxq “ 0, étudier en section 2.1
‚ Soit f : Ω Ă Kn ÝÑ Kn , trouver x P Ω tel que f px
xq “ 0 (K “ R ou K “ C). étudier en section 2.3
Avant de commencer une petite piqure de rappels par la lecture de l’Annexe B.1
Plus précisement, on suppose que la fonction f vérifie f paqf pbq ă 0. D’après le théorème des valeurs
intermédiaires ou le théorème de Bolzano, il existe alors un ξ Psa, br tel que f pxq “ 0.
On note I p0q “sa, br et x0 “ pa`bq{2. Si f px0 q “ 0 alors on a fini! Supposons f px0 q ‰ 0, alors ξ appartient
à sa, x0 r si f paqf px0 q ă 0, sinon il appartient à sx0 , br. On vient donc de déterminer une méthode
permettant de diviser par 2 la longueur de l’intervalle de recherche de ξ. On peut bien évidemment itérer
ce principe en définissant les trois suites pak qkPN , pbk qkPN et pxk qkPN par
a`b
‚ a0 “ a, b0 “ b et x0 “ 2 ,
‚ @k P N, $
’
& ak`1 “ bk`1 “ xk si f pxk q “ 0,
ak`1 “ xk , bk`1 “ bk si f pbk qf pxk q ă 0,
’
%
ak`1 “ ak , bk`1 “ xk sinon (i.e. f pak qf pxk q ă 0.)
et
xk`1 “ pak`1 ` bk`1 q{2.
Par construction on a ak ď xk ď bk .
En Figure 2.2, on représente les intervalles successifs obtenus par la méthode de dichotomie pour
a “ 0.1, b “ 2.4 et f : x ÞÑ px ` 2qpx ` 1qpx ´ 1q.
y
35
30
y = f(x)
25
a9 b9
20
a8 b8
a7 b7
15
a6 b6
a5 b5
10
a4 b4
a3 b3
5 a2 b2
a1 b1
x
a0 0.5 1 1.5 2 b0 2.5
On suppose que la fonction f est continue sur ra, bs, vérifie f paqf pbq ă 0 et qu’il existe un unique
α Psa, br tel que f pαq “ 0.
Q. 1 1. Montrer que les suites pak q et pbk q convergent vers α.
2. En déduire que la suite pxk q converge vers α.
b´a
Q. 2 1. Montrer que pour tout k P N, |xk ´ α| ď 2k`1
.
logp b´a
ϵ q
2. Soit ϵ ą 0. En déduire que si k ě logp2q ´ 1 alors |xk ´ α| ď ϵ.
logp b´a
ϵ q
kě ´ 1.
logp2q
˛
Soit f : ra, bs Ă R ÝÑ R une fonction continue vérifiant f paqf pbq ă 0 et admettant α Psa, br comme
unique solution de f pxq “ 0. Alors la suite pxk qkPN définie par la méthode de dichotomie converge
vers α et
b´a
|xk ´ α| ď k`1 , @k P N.
2
logp b´a
ϵ q
On a alors @ϵ ą 0, @k ě logp2q ´1
|xk ´ α| ď ϵ.
Algorithmique
Tout d’abord nous allons poser "correctement" le problème pour lever toute ambiguité. En effet, si
2.1.1 Méthode de dichotomie ou de bissection
le problème est rechercher une racine de f sur l’intervalle ra, bs par la méthode de dichotomie, dois-je
uniquement rechercher une approximation d’une racine ou calculer la suite pxk q ou l’ensemble des suites
pxk q, pak q et pbk q? C’est ce que nous appelerons le(s) résultat(s)/objectif (s) de l’algorithme. L’écriture
d’un algorithme est fortement corrélée aux objectifs souhaités.
Sauf note contraire, on choisira par la suite comme objectif de déterminer une approximation de la racine
α de f :
Ensuite, pour aboutir à cet objectif on détermine les données (avec hypothèses) nécessaires et suff-
isantes :
2. Résolution de systèmes non linéaires
On peut alors noter (formellement pour le moment) Dichotomie la fonction permettant, à partir des
données f, a, b, et ϵ, de trouver αϵ . Cette fonction algorithmique aura la syntaxe suivante :
αϵ Ð Dichotomie pf, a, b, ϵq
Nous allons maintenant proposer une manière d’aborder l’écriture de cette fonction dans un langage al-
gorithmique présenté au chapitre A. On doit s’affranchir de tout (ou presque) symbolismes mathématiques
pour s’approcher au plus près des langages de programmation. Par exemple, la notation mathématique
2.1. Recherche des zéros d’une fonction
k“0 pour noter les 11 premiers itérés d’une suite n’est pas directement disponible dans les langages
pxk q10
de programmations : on peut par exemple passer par un tableau X de dimension 11 (au moins) pour
stocker les valeurs de la suite. Suivant les langages, l’accès aux composantes d’un tableau diffère : sous
Matlab/Octave l’accès au 1er élément d’un tableau X se fait par X(1) et en C/C++/Python par X[0].
Lors de l’écriture d’un algorithme, nous utiliserons l’opérateur () ou(exclusif) [] pour accéder aux dif-
férentes composantes d’un tableau : () si le 1er élément est d’indice 1 ou [] si le 1er élément est d’indice
0.
Pour écrire un algorithme non trivial, nous utiliserons une technique de raffinements d’algorithme (voir
chapitre A) : par raffinements succéssifs, nous allons écrire des algorithmes équivalents pour aboutir au
final à un algorithme n’utilisant que
• des fonctions usuelles, mathématiques (cos , exp , E partie entière, ...), entrées/sorties , ...
6: αǫ Ð xkmin
Entre les raffinements R0 et R1 , nous avons juste décrit le principe de calcul de toute suite récurrente
d’ordre 1.
Pour faciliter la lecture, nous rappelons la méthode de dichotomie :
a`b
‚ a0 “ a, b0 “ b et x0 “ 2 ,
et
ak`1 ` bk`1
xk`1 “
2
Ecrit sous cette forme, le calcul de la suite pxk q nécessite le calcul simultané des suites pak q et pbk q.
La transcription de ce raffinement dans un langage de programmation n’est pas forcément triviale pour
tout le monde. Quid de ak , ϵ, ... qui sont syntaxiquement incorrectes dans un langage de programmation?
Le cas du ϵ est très simple : les lettres grecques étant prohibées, on la remplacera par exemple par
eps. Pour les suites pak q, pbk q et pxk q, tronquées à kmin , on pourra utiliser des tableaux (vecteurs) de
kmin ` 1 réels notés A , B et X qui contiendront respectivement l’ensemble des valeurs ak , bk et xk pour
0 ď k ď kmin . Plus précisément nous pourrons utiliser les opérateurs pq (indice des tableaux commence à
1) ou rs (indice des tableaux commence à 0) pour accéder aux différents éléments des tableaux et nous
aurons par convention A pk ` 1q “ A rks “ ak , @k P v0, kmin w. Par la suite nous utiliserons les opérateurs
pq et nous aurons alors les relations suivantes entre les notations mathématiques et algorithmiques.
@k P v0, kmin w, A pk ` 1q “ ak , B pk ` 1q “ bk et X pk ` 1q “ xk .
Des codes Matlab/Octave et C correspondant de cette fonction sont données en Annexe B.4.1, re-
2. Résolution de systèmes non linéaires
On peut noter qu’une réécriture de la méthode de dichotomie permet d’éviter d’utiliser les deux suites
pak q et pbk q. En effet, on a
A`B
‚ A “ a, B “ b et x0 “ 2 ,
2.1. Recherche des zéros d’une fonction
$
’
& A “ B “ xk si f pxk q “ 0,
A “ xk , B inchangé si f pBqf pxk q ă 0,
’
%
B “ xk , A inchangé sinon (i.e. f pAqf pxk q ă 0.)
et
A`B
xk`1 “
2
Si notre objectif n’est que de calculer αϵ , on peut, sur le même principe, s’affranchir d’utiliser un
Une autre écriture est possible sans utiliser le nombre kmin et donc en utilisant une boucle Tantque
(pour les anglophobes!) ou While (pour les anglophiles!). Celle-ci est présentée dans l’Algorithme 2.4
11: Fin Si
12: x Ð pA ` Bq{2
13: Fin Tantque
14: Fin Fonction
1: Fonction x Ð Dichotomie5 ( f, a, b )
2: A, B P R
3: A Ð a, B Ð b, x Ð pa ` bq{2, xp Ð a
4: Tantque x „“ xp faire
5: Si f pBqf pxq ă 0 alors
6: AÐx Ź B inchangé
7: Sinon
8: BÐx Ź A inchangé
9: Fin Si
2.2. Points fixes d’une fonction (dimension 1)
10: xp Ð x
11: x Ð pA ` Bq{2
12: Fin Tantque
13: Fin Fonction
Des codes Matlab/Octave et C correspondant à cette fonction sont données en Annexe B.4.1, respec-
tivement en Listing 15 et 16. Les Listings 8 et 17 correspondent respectivement à un script Matlab et
un main C utilisant cette fonction.
α “ Φpαq.
Definition 2.2
On dit qu’une suite pxk qkPN obtenue par une méthode numérique, converge vers α avec un ordre
p ě 1 si
Dk0 P N, DC ą 0 tels que |xk`1 ´ α| ď C|xk ´ α|p , @k ě k0 . (2.2)
où C ă 1 si p “ 1.
Voici une version du théorème du point fixe dans R. Pour la résolution des systèmes non linéaires un
théorème plus général sera proposé (Théorème 2.13): le théorème du point fixe dans un espace de Banach.
Soient ra, bs un intervalle non vide de R et Φ une application continue de ra, bs dans lui-même.
Alors, il existe au moins un point α P ra, bs vérifiant Φpαq “ α. Le point α est appelé point fixe
de la fonction Φ.
De plus, si Φ est contractante (lipschitzienne de rapport L P r0, 1r), c’est à dire
‚ On montre tout d’abord l’existence du point fixe. Pour celà, on note f pxq “ Φpxq ´ x. f est donc
‚ On montre ensuite l’unicité sous l’hypothèse de contraction (2.3). On suppose qu’il existe α1 et α2
dans ra, bs tels que Φpα1 q “ α1 et Φpα2 q “ α2 . Dans ce cas on a
On en déduit
p1 ´ Lq|α1 ´ α2 | ď 0
Comme L ă 1 on a 1 ´ L ą 0 et donc |α1 ´ α2 | ď 0 ce qui entraine α1 “ α2 .
‚ On a Φpra, bsq Ă ra, bs et comme x0 P ra, bs, la suite pxk qkPN est bien définie. On va démontrer la
convergence de la suite xk vers l’unique point fixe α de Φ. Pour celà, en utilisant la définition de la
suite et du point fixe, on a
|xk`1 ´ α| “ |Φpxk q ´ Φpαq|
Comme Φ est contractante, xk P ra, bs et α P ra, bs on obtient
|xk`1 ´ α| ď L|xk ´ α|
inégalités ont été utilisées pour démontrer l’existence d’un point fixe: ceci n’est plus possible dans un
cadre plus générale.
On va donc supposer, dès le départ, que l’application Φ est contractante de ra, bs dans lui-même. Ceci va
permettre d’établir que la suite xk est de Cauchy.
‚ Comme x0 P ra, bs et Φ est une application continue de ra, bs dans lui-même, la suite xk est bien
définie @k P N.
‚ On démontre ensuite que xk est une suite de Cauchy. Soit k ą 0. On a
|xk`1 ´ xk | “ |Φpxk q ´ Φpxk´1 q| ď L|xk ´ xk´1 |,
et on obtient par récurrence
|xk`1 ´ xk | ď Lk |x1 ´ x0 |
2. Résolution de systèmes non linéaires
et
@l ě 0, |xk`l ´ xk`l´1 | ď Ll |xk ´ xk´1 |.
Soit p ą 2. On en déduit par application répétée de l’inégalité triangulaire que
p´1
ÿ
|xk`p ´ xk | “ |pxk`p ´ xk`p´1 q ` pxk`p´1 ´ xk`p´2 q ` . . . ` pxk`1 ´ xk q| “ | pxk`l`1 ´ xk`l q|
l“0
p´1
ÿ
ď |xk`l`1 ´ xk`l q|
l“0
2.2. Points fixes d’une fonction (dimension 1)
p´1
ÿ 1 ´ Lp
ď Ll |xk`1 ´ xk | “ |xk`1 ´ xk | (voir somme partielle d’une série géométrique)
l“0
1´L
1 ´ Lp k
ď L |x1 ´ x0 |.
1´L
Comme Lk Ñ 0 quand k Ñ `8, on conclu que pxk q est une suite de Cauchy.
‚ La suite pxk q est une suite de Cauchy dans R espace complet donc elle converge vers β dans R. De
plus pour tout k, xk appartient à ra, bs fermé borné, donc sa limite β aussi.
‚ Φ étant contractante sur ra, bs, elle est donc continue. On a alors par continuité de Φ
lim Φpxk q “ Φpβq.
kÑ`8
et donc β est un point fixe de Φ. L’existence d’un point fixe est donc établi.
La suite de la démonstration est inchangée.
Soit x0 P ra, bs et pxk qkPN la suite définie par xk`1 “ Φpxk q. On a alors
4. Si x0 ‰ α, alors
xk`1 ´ α
lim “ Φ1 pαq. (2.8)
kÑ`8 xk ´ α
On utilise le théorème B.2 des accroissements finis pour obtenir: Dξk Ps minpxk , αq, maxpxk , αqr tel que
Φpxk q ´ Φpαq
“ Φ1 pξk q.
xk ´ α
Quand k Ñ `8, on a xk Ñ α et donc ξk Ñ α. Par continuité de la fonction Φ1 on obtient (2.8).
Preuve. On va construire un intervalle fermé borné, noté V, pour lequel les hypothèses du Théorème 2.4
sont vérifiées.
Comme Φ1 est continue dans un voisinage de α avec |Φ1 pαq| ă 1, alors il existe β ą 0 tel que
@x P V, |Φ1 pxq| ă 1.
Comme l’intervalle V est un fermé et que l’application |Φ1 | est continue sa borne supérieure est atteinte
dans V :
Dx̄ P V tel que |Φ1 px̄q| “ sup |Φ1 pxq|.
xPV
On en déduit
|Φpxq ´ Φpαq| “ |x ´ α||Φ1 pξq| ď δ|Φ1 pξq| ď δ
Comme Φpαq “ α, on obtient |Φpxq ´ α| ď δ i.e. Φpxq P V.
On peut donc appliquer le Théorème 2.4 avec ra, bs “ V “ rα ´ δ, α ` δsq ce qui permet de conclure.
Exercice 2.2.1
Q. 1 Montrer qu’il existe δ ą 0 tel que @x0 Psα ´ δ, α ` δr la suite définie par xk`1 “ Φpxk q converge
vers α.
On suppose de plus que Φ1 est dérivable sur sα ´ δ, α ` δr et qu’il existe M P R` tel que
@x P rα ´ δ, α ` δs|Φ2 pxq| ď M
Q. 2 1. Montrer que
ˆ ˙2k
2 1
@x0 P rα ´ δ, α ` δs, |xk ´ α| ď M |x0 ´ α|
M 2
Q. 2 1. D’après la formule de Taylor-Lagrange rappelée au Théorème B.3, on a Dη Ps minpα, xq, maxpα, xqr
tel que
2.2. Points fixes d’une fonction (dimension 1)
px ´ αq2 2
Φpxq “ Φpαq ` px ´ αqΦ1 pαq ` Φ pηq
2!
1
“ α ` Φ2 pηqpx ´ αq2 .
2
On en déduit que |Φpxq ´ α| ď M M M
2 |x ´ α| ce qui s’écrit encore 2 |Φpxq ´ α| ď p 2 |x ´ α|q . Or si
2 2
˚
x0 P rα ´ δ, α ` δs, alors xk´1 P rα ´ δ, α ` δs, @k P N . On a alors
M M M
|Φpxk´1 q ´ α| “ |xk ´ α| ď p |xk´1 ´ α|q2
2 2 2
et donc par récurrence
M M k
|xk ´ α| ď p |x0 ´ α|q2 .
2 2
2. On a
2 M
|xk ´ α| ď p |xk´1 ´ α|q2
M 2
c’est à dire
|xk ´ α| M
ď
|xk´1 ´ α|2 2
et donc la méthode est d’ordre 2.
1
Q. 3 En supposant de plus que |x0 ´ α| ď 5M , on obtient immédiatement le résultat.
˛
Proposition 2.6
Soit p P N˚ , et Φ P C p`1 pVq pour un certain voisinage V de α point fixe de Φ. Si Φpiq pαq “ 0, pour
1 ď i ď p et si Φpp`1q pαq ‰ 0, alors la méthode de point fixe associée à la fonction Φ est d’ordre
p ` 1 et
xk`1 ´ α Φpp`1q pαq
lim p`1
“ . (2.10)
kÑ`8 pxk ´ αq pp ` 1q!
Preuve. Les hypothèses du théorème 2.5 étant vérifiées (Φ1 pαq “ 0), la suite pxk q converge vers α. D’après
un développement de Taylor-Lagrange (voir le Théorème B.3) de Φ en α, il existe ηk entre xk et α vérifiant
ÿp
pxk ´ αqi piq pxk ´ αqp`1 pp`1q
xk`1 “ Φpαq ` Φ pαq ` Φ pηk q
i“1
i! pp ` 1q!
pxk ´ αqp`1 pp`1q
“α` Φ pηk q
pp ` 1q!
@x P rα ´ h, α ` δsztαu, |Φpxq ´ α| ą |x ´ α|
et donc la suite pxk q ne peut converger vers α et ceci même si x0 est très proche de α. Dans ce cas on dit
que α est un point fixe répulsif pour Φ.
Toutefois, on peut rattrapper le coup. En effet, comme Φ1 est non nulle et de signe constant au voisinage
de α : il existe h ą 0 tel que la fonction Φ soit strictement monotone sur I “ rα ´ h, α ` hs.. D’après le
corollaire B.4 Φ est une bijection de I dans l’intervalle fermé J “ Φ´1 pIq. Comme α “ Φpαq, on a α P J
et Φ´1 pαq “ α. Le problème de point fixe trouver x P I tel que Φpxq “ x revient alors à trouver x P J tel
que Φ´1 pxq “ x. Or Φ1 pαq ‰ 0 et Φpαq “ α, la proposition B.5 donne alors pΦ´1 q1 pαq “ 1{Φ1 pαq et donc
|pΦ´1 q1 pαq| ă 1. Le point α est un point fixe attractif pour Φ´1 .
1.5
2. Résolution de systèmes non linéaires
0.5
α x
y = Φ(x)-1 p
y = Φ −1 (x) = x
-1.5 -0.5 0.5 1 1.5
y=x
α = Φ(α)
y=x -0.5
?
Figure 2.3: fonction x2 et son fonction inverse x sur r0, `8r
2.2. Points fixes d’une fonction (dimension 1)
Comme Φ1 pαq “ 2 le point fixe α est répulsif. On donne dans le tableau suivant les premiers termes
de deux suites : l’une avec x0 “ 1.05 et l’autre avec x0 “ 0.95. Dans ce dernier cas, la suite va converger
... vers un autre point fixe.
k xk xk
0 1.05000 0.950000
1 1.10250 0.902500
2 1.21551 0.814506
3 1.47746 0.663420
.. .. ..
. . .
8 265742. 1.98264 ˆ 10´6
Les premières itérations de ces deux suites sont représentées en Figure 2.4.
?
Sur l’intervalle r0, `8r, la fonction Φ admet comme fonction inverse Φ´1 pxq “ x et on a aussi
Φ´1 p1q “ 1 (i.e. α “ 1 est un point fixe de Φ´1 ). De plus pΦ´1 q1 p1q “ 1{2 ă 1, ce qui permet d’affirmer
que α “ 1 est un point fixe attractif de Φ´1 ). On donne dans le tableau suivant les premiers termes de
y
y
y = Φ(x) = x 2
1.4
y=x
y = Φ(x) = x 2
y=x
2 1.2
Φ(x0 )
Φ(
1.5x2 )
Φ(x1 )
0.8
Φ(x1 )
Φ(x2 )
Φ(x0 )
0.6
1
Φ(x3 )
0.5
Φ(
0.2x4 )
Φ(x5 )
Φ(x67 ) x
x0x1 x2 x3
x x87x6 x5
0.2
x4
0.4
x3
0.6
x2 x1x0
0.8 1 1.2 1.4
0.2 0.4 0.6 0.8 1 1.2 1.4
-0.2
Les premières itérations de ces deux suites sont représentées en Figure 2.5.
k xk xk
0 1.10000 0.500000
1 1.11000 0.750000
2 1.12210 0.812500
3 1.13701 0.847656
.. .. ..
. . .
8 1.32397 0.918223
Les premières itérations de ces deux suites sont représentées en Figure 2.7.
y
p
y= x
1.4 y=x
y 1.2
p
y= x
1.4 y=x
1
Φ(x4 )
Φ(
1.2x0 ) Φ(x3 )
Φ(x1 ) Φ(x2 )
2.2.2 Interprétations graphiques de la méthode du point fixe
Φ(x2 ) 0.8
1
Φ(x1 )
0.8 0.6
0.6
Φ(x0 )
0.4
0.4
0.2
0.2
x x0 x1 x2 x3 x4x5
x
x3x2 x1 x0 0.2 0.4 0.6 0.8 1 1.2 1.4
0.2 0.4 0.6 0.8 1 1.2 1.4
y
3
x x2 − x + 1
2.5
2.2. Points fixes d’une fonction (dimension 1)
1.5
0.5
α x
-0.5 0.5 1 1.5 2
y=x -0.5
y
y = Φ(x) = x 2 − x + 1
y=x
y 1.5
y = Φ(x) = x 2
−x+1
y=x
1.5
Φ(x8 )
Φ(x7 )
Φ(x6 ) 1
Φ(x5 )
Φ( xx43 )) Φ(x678 ))
Φ( x)
Φ(x210 ))
Φ( Φ( x5 )
xx34 ))
Φ( Φ(
Φ(
Φ(
Φ(x12 )
Φ(x0 )
1
0.5
0.5
Comme Φ1 pαq “ 2 le point fixe α est répulsif. On donne dans le tableau suivant les premiers termes
de trois suites obtenues avec x0 “ 1.5 pour les suites associées à f1 et f2 , et avec x0 “ 1.1 pour celle
y y
2 2 y = Φ(x) = − 3
4
x + 74
y=x
y
Φ(x
27 ) y = Φ(x) = − 4
3
x + 73
y=x
Φ(
1.5x7531 ) 1.5
Φ(x1 ) Φ(x5 )
1.5
Φ(x3 )
Φ(x ) Φ(x3 )
Φ(x75 )
Φ(x
1 1
Φ( x86 )) Φ(x1 )
Φ(x4 )
Φ(x2 ) 1
Φ(x0 )
Φ(x0 ) Φ(x2 )
Φ(
0.5x86420 ) 0.5
Φ(x4 )
0.5
y=x
x97531 x86420
x x1 x3 x5xx7 9 xx8 6x4 x2 x0
x x8 x
x7 x5 x3 x1 x0 x2 x4 x6
0.5 1 1.5 2 0.5 1 1.5 2 0.5 1 1.5 2
Le principe de base est très simple et donné par les Algorithmes 2.6 et 2.7, écrit respectivement avec une
boucle Tantque et une boucle Répéter.
Algorithme 2.6 Méthode de point fixe : version Algorithme 2.7 Méthode de point fixe : version
Tantque formel Répéter formel
1: kÐ0 1: kÐ0
2: Tantque non convergence faire 2: Répéter
3: xk`1 Ð Φpxk q 3: k Ðk`1
4: k Ðk`1 4: xk Ð Φpxk´1 q
5: Fin Tantque 5: jusqu’à convergence
2.2.3 Algorithme générique du point fixe
Nous allons plus particulièrement étudier les critères d’arrêt des boucles Tantque et Répéter (négation
l’un de l’autre) qui sont bien trop flous : on s’arrête quand on converge!
Tout d’abord, on n’est pas sur de converger : il faudra donc n’autoriser qu’un nombre maximum
d’itérations kmax. De plus, si l’on converge vers une certaine valeur α celle-ci n’étant pas connue à
l’avance (sinon l’algo n’a aucun intérêt), on ne peut utiliser, comme condition du Tantque, |xk ´ α| ą ϵ
( |xk ´ α| ď ϵ pour la condition du Répéter) où ϵ serait la précision souhaitée. L’idée serait de comparer
xk`1 et xk et donc de tester s’ils sont suffisament proches : la condition serait alors |Φpxk q ´ xk | “
2. Résolution de systèmes non linéaires
|xk`1 ´ xk | ą tol, (boucle Tantque) ou |Φpxk q ´ xk | ď tol, (boucle Répéter) avec tol la tolérance
souhaitée. Il faut noter que dans ce cas la valeur tol doit être choisie correctement et dépend de l’ordre
de grandeur de α. Si α est de l’ordre de 108 , tol “ 1 comme valeur est raisonnable. Toutefois on peut lui
préférer une condition relative |Φpx k q´xk |
|xk |`1 ą tol (boucle Tantque) ou |Φpx k q´xk |
|xk |`1 ď tol (boucle Répéter)
qui permet à tol de correspondre à une tolérance relative souhaitée que ce soit pour de grandes valeurs de
α ou pour des petites. Les algorithmes du point fixe (recherche de α solution de Φpxq “ x) avec notations
mathématiques sont donnés par Algorithme 2.8 et 2.9, respectivement avec des boucles Tantque et
Répéter.
2.2. Points fixes d’une fonction (dimension 1)
Des versions, sous forme de fonction, plus proches de la programmation sont proposées en Algo-
rithme 2.10 et 2.11. Bien évidemment, suivant l’usage que l’on souhaite de ces fonctions, il est facile de
les adapter pour retourner plus d’informations (nombre d’itération effectives, statut de convergence, ...)
‚ la méthode de la corde :
f pbq ´ f paq
qk “ q “
b´a
‚ la méthode de la sécante :
f pxk q ´ f pxk´1 q
qk “
xk ´ xk´1
où x´1 et x0 sont données,
‚ la méthode de Newton : en supposant f 1 connu, on prend
qk “ f 1 pxk q.
La méthode de la corde
2.2.4 Méthodes de points fixes pour la recherche de racines
Soit f une fonction de classe C 1 sur ra, bs tel que f paq ‰ f pbq. Soit x0 P ra, bs donné. La suite obtenue
par la méthode de la corde est donnée par
b´a
xk`1 “ xk ´ f pxk q, @k P N. (2.12)
f pbq ´ f paq
On peut voir cette relation comme un cas particulier de la méthode du point fixe. En effet, en prenant
b´a
Φpxq “ x ´ f pbq´f paq f pxq, la suite définie en (2.12) s’écrit xk`1 “ Φpxk q.
On a alors le résultat suivant
f pbq´f paq
Soit f P C 1 pra, bsq tel que f pbq ‰ f paq et λ “ b´a . On note pxk qkPN la suite définie par x0 P ra, bs
et pour tout k ě 0
f pxk q
xk`1 “ xk ´ . (2.13)
2. Résolution de systèmes non linéaires
λ
On suppose de plus que @x P ra, bs
minpλpx ´ aq, λpx ´ bqq ď f pxq ď maxpλpx ´ aq, λpx ´ bqq (2.14)
minp0, 2λq ă f 1 pxq ă maxp0, 2λq (2.15)
Exercice 2.2.2
2.2. Points fixes d’une fonction (dimension 1)
f pbq´f paq
Soit f une fonction de classe C 1 sur ra, bs vérifiant f paqf pbq ă 0. et λ “ b´a . Soit x0 P ra, bs
donné. La suite obtenue par la méthode de la corde est donnée par
f pxk q
xk`1 “ xk ´ , @k P N.
λ
f pxq
On note Φpxq “ x ´ λ .
Q. 1 Montrer que si pour tout x P ra, bs on a
minpλpx ´ aq, λpx ´ bqq ď f pxq ď maxpλpx ´ aq, λpx ´ bqq (2.16)
Q. 3 En déduire que sous les deux conditions précédentes la méthode de la corde converge vers
l’unique solution α P ra, bs de f pxq “ 0.
f pxq
λpx ´ bq ď f pxq ď λpx ´ aq ô a ď x ´ ďb
λ
ô a ď Φpxq ď b.
f pxq
λpx ´ aq ď f pxq ď λpx ´ bq ô a ď x ´ ďb
f 1 pxq
0 ă f 1 pxq ă 2λ ô 0 ă ă2
λ
f 1 pxq
ô ´1 ă 1 ´ ă1
λ
ô ´1 ă Φ1 pxq ă 1.
f 1 pxq
2λ ă f 1 pxq ă 0 ô 0 ă ă2
λ
Q. 3 Sous les hypothèses (2.16) et (2.17) on a Φpra, bsq Ă ra, bs et @x P ra, bs, |Φ1 pxq| ă 1. Comme f
est de classe C 1 sur ra, bs, la fonction Φ l’est aussi. La suite pxk q est définie par xk`1 “ Φpxk q. Ainsi les
hypothèses du théorème 2.4 sont vérifiées ce qui assure l’unicité du point fixe ainsi que la convergence de
la suite pxk q vers ce point fixe.
˛
f 1 pξk q
xk`1 “ xk ´ pxk ´ αq .
λ
f 1 pξk q f 1 pξk q
xk`1 ´ α “ xk ´ α ´ pxk ´ αq “ pxk ´ αqp1 ´ q.
λ λ
Comme xk ‰ α, on a alors
xk`1 ´ α f 1 pξk q
“1´ .
xk ´ α λ
xk`1 ´ α f 1 pαq
lim “1´ .
kÑ`8 xk ´ α λ
“0
ˆ ˙
1 pxk ´ αq2 p2q
xk`1 “ xk ´ pxk ´ αqf 1 pαq ` f pηk q .
λ 2!
λ
loooomoooon λ 2!
“0 par hyp.
Comme ηk P V converge vers α (car compris entre xk et α) et f p2q continue sur V, on en déduit
On présente en Algorithme 2.12 l’implémentation usuelle de la méthode de la corde. Une autre version
utilisant la fonction PtFixe est donnée en Algorithme 2.13.
Pour illustrer ces résultats de convergence, on va rechercher la racine positive de f pxq “ x2 ´ 1 par la
méthode de la corde avec comme données
On représente en Figure 2.9 les itérations de la méthode de la corde pour l’exemple 1 à partir du graphe
de la fonction f (figure de gauche) et à partir du graphe de la fonction Φ (figure de droite). Même chose
pour l’exemple 2 avec la Figure 2.10.
3
y = f(a) + q(x − a)
y = f(x) y
2.5
f(x0 ) y = Φ(x)
y=x
2
1.5
1.5
Φ(x
12 )
Φ(x1 )
0.5
Φ(x0 )
f(x1 )
-0.5
x1 x2x3 x0
x
-1
0.5 1 1.5 2
3
y = f(a) + q(x − a)
y = f(x) y
2.5
2
f(x0 ) y = Φ(x)
y=x
2
1.5
1.5
Φ(x
Φ( x112 ))
Φ(x0 )
0.5
2.2.4 Méthodes de points fixes pour la recherche de racines
ff((x x1xx23456
x6345 ))
2 x0 0.5
0.5 1 1.5 2
f(x1 )
-0.5
x1 xx23 x0
x
-1
0.5 1 1.5 2
Dans le tableau suivant on donne l’erreur commise par les suites dérivées des exemples 1 et 2 et ceci
pour quelques itérations.
exemple 1 exemple 2
2. Résolution de systèmes non linéaires
k |xk ´ α| |xk ´ α|
0 8.0000e-01 8.0000e-01
1 3.2000e-01 1.3333e-01
2 5.1200e-02 2.9630e-02
3 1.3107e-03 5.3041e-03
4 8.5899e-07 8.9573e-04
5 3.6893e-13 1.4962e-04
6 0.0000e+00 2.4947e-05
.. .. ..
. . .
15 0.0000e+00 2.4756e-12
On remarque qu’avec les données de l’exemple 1 la convergence est beaucoup plus rapide. Ceci est
2.2. Points fixes d’une fonction (dimension 1)
ek
exemple 1
exemple 2
10-2
10-4
10-6
10-8
10-10
10-12
k
0 2 4 6 8 10 12 14 16
ek + 1
10-5
10-7
10-9
10-11
ek
10-10 10-8 10-6 10-4 10-2
La méthode de Newton
Soient f une fonction de classe C 1 et x0 un réel donné. La suite obtenue par la méthode de Newton est
donnée par
f pxk q
xk`1 “ xk ´ , @k P N. (2.18)
f 1 pxk q
Soit f une fonction de classe C 2 sur un certain voisinage d’une racine simple α de f. Soit x0 donné
dans ce voisinage, la suite pxk qkPN définie par la méthode de Newton
f pxk q
xk`1 “ xk ´ , @k P N. (2.19)
f 1 pxk q
est localement convergente d’ordre 2.
Preuve. Comme α est racine simple de f (i.e. f pαq “ 0 et f 1 pαq ‰ 0) et f 1 continue, il existe un voisinage
V de α tel que pour tout x P V, f 1 pxq ‰ 0. On peut alors définir la fonction Φ sur V par
f pxq
@x P V, Φpxq “ x ´ .
f 1 pxq
pα ´ xk q2 p2q
pαqon “ f pxk q ` pα ´ xk qf 1 pxk q `
lofomo f pξk q.
2!
“0
2.2.4 Méthodes de points fixes pour la recherche de racines
1
Comme f pxk q ‰ 0, l’équation précédente s’écrit aussi
p2q
f pxk q 2f pξk q
α “ xk ´ ´ pα ´ x k q
f 1 pxk q 2f 1 pxk q
f p2q pξk q
“ xk`1 ´ pα ´ xk q2 .
2f 1 pxk q
On obtient alors
Soit f une fonction de classe C 2 au voisinage de α, racine de f. On suppose que f 1 pxq ‰ 0 pour tout
x P V (i.e. α racine simple de f ). Soit x0 P V donné. La suite obtenue par la méthode de Newton est
donnée par
f pxk q
xk`1 “ xk ´ , @k P N. (2.20)
f 1 pxk q
On peut voir cette relation comme un cas particulier de la méthode du point fixe. En effet, en prenant
Φpxq “ x ´ ff1pxq
pxq , la suite définie en (2.20) s’écrit xk`1 “ Φpxk q et on note que Φpαq “ α (i.e. α point
2.2. Points fixes d’une fonction (dimension 1)
fixe de Φ).
De plus f étant de classe C 3 et sa dérivée non nulle sur V, on obtient que Φ est de classe C 2 sur V, et
@x P V,
f 2 pαq
Φ1 pαq “ 0, Φ2 pαq “ .
f 1 pαq
D’après la proposition 2.6, si f 2 pαq ‰ 0 alors la méthode de Newton est d’ordre 2.
Faire méthode de Newton modifiés dans le cas de racine de multiplicité m ą 1.???
Exercice 2.2.3
Avec x0 “ 1, on obtient ?
k xk | 2 ´ xk |
3
1 2 8.57864e-02
17
2 12 2.45310e-03
577
3 408 2.12390e-06
Avec x0 “ 45 , on obtient
?
k xk | 2 ´ xk |
57
1 40 1.07864e-02
6449
2 4.08236e-05
Avec a “ 3 et x0 “ 1, on obtient ?
k xk | 3 ´ xk |
1 2 2.67949e-01
7
2 4 1.79492e-02
97
3 56 9.20496e-05
?
Q. 3 Il suffit de voir que n a est la racine positive de f pxq “ xn ´ a et d’appliquer la méthode de Newton
par exemple. La suite des itérés de Newton s’écrit alors
Avec a “ 3, n “ 4 et x0 “ 1, on obtient
?
k xk | 4 3 ´ xk |
3
1 2 1.83926e-01
97
2 72 3.11482e-02
115403137
3 87616608 1.06368e-03
236297297271008837816738085152257
4 179546943199700984864483416264832 1.28780e-06
˛
7: xp Ð x 2: Φ Ð x ÞÑ x ´ f pxq{dfpxq
8: x Ð xp ´ f pxpq{dfpxpq Ź dfpxpq ‰ 0 3: αtol Ð PtFixepΦ, x0 , tol, kmaxq
9: err Ð |x ´ xp| 4: Fin Fonction
10: Fin Tantque
11: Si err ď tol alors Ź Convergence
12: αtol Ð x
13: Fin Si
14: Fin Fonction
Comme premier exemple, on prend f pxq “ x2 ´ 1 avec x0 “ 0.40 et pour le second f pxq “ x2 cos pxq
avec x0 “ 2.00.
On représente en Figures 2.13 and 2.14, respectivement pour les exemples 1 et 2, les itérations de la
méthode de Newton à partir du graphe de la fonction f (figure de gauche) et à partir du graphe de la
2.2. Points fixes d’une fonction (dimension 1)
y
2
y = Φ(x)
y=x
3 y=α
f : x x2 − 1
y = f (x0 )(x − x0 ) + f(x0 ) 1.5
Φ(x0 )
′
D0 :
f(x1 ) Φ(x1 )
f(x ) x0
f(x32 ) x3 x2 x1
0.5 1 1.5 2
f(x0 )
-1 0.5
-2
x0 x3x2 x1
x
-3
0.5 1 1.5 2
1.5
D0 : y = f (x0 )(x − x0 ) + f(x0 )
′
y=α 1
0.5
xx32 x1 x0
ff((x
x23 ))
0.5 1 1.5 2
f(x1 )
-0.5
0.5
-1
-1.5
f(x0 )
xx32 x1 x0
x
-2 0.5 1 1.5 2
1
Figure 2.14: Exemple 2, méthode de Newton, α “ 2 π, racine de f : x ÞÑ x2 cos pxq avec x0 “ 0.40,
ek ek + 1
10-3 10-3
10-5 10-5
10-7 10-7
10-9 10-9
10-11 10-11
10-13 10-13
k ek
0 1 2 3 4 5 6 10-7 10-6 10-5 10-4 10-3 10-2 10-1
dre théorique 2
ce qui donne
f pxk q ´ f pxk´1 q xk´1 ´ xk p2q
f 1 pxk q “ ` f pξk q.
xk´1 ´ xk 2!
x ´x
Si la suite est convergente, on a k´12! k f p2q pξk q Ñ 0, ce qui justifie l’approximation précédente. On a
alors la méthode de la sécante donnée en (2.21). Cette méthode est une méthode à deux pas : le
calcul de xk`1 nécessite de connaitre xk et xk´1 . Il faut donc deux valeurs d’initialisations x´1 et x0
pour définir la suite pxk q.
Soit f une fonction de classe C 2 sur un certain voisinage d’une racine simple α de f. Soient x´1 et
x0 donnés dans ce voisinage tels que f px´1 q ‰ f px0 q , la suite pxk qkPN définie par la méthode de la
sécante
xk ´ xk´1
xk`1 “ xk ´ f pxk q, @k P N. (2.21)
f pxk q ´ f pxk´1 q
?
1` 5
est localement convergente d’ordre 2 « 1.618.
Comme premier exemple, on recherche une racine de x2 ´ 1 avec x´1 “ 0.000 et x0 “ 2.000. Une
représentation graphique des premières itérés de la suite est donnée en Figure 2.16. Sur cette figure, les
droites Dk sont celles passant par les points pxk´1 , f pxk´1 qq et pxk , f pxk qq. Pour deuxième exemple, on
recherche une racine de x2 cos pxq avec x´1 “ 1.000 et x0 “ 3.000. Une représentation graphique des
premières itérés de la suite est donnée en Figure 2.17.
On illustre la convergence et l’ordre de convergence respectivement en Figures 2.18a et 2.18b. Pour
cette dernière, on a représenté en échelle logarithmique ek`1 “ |xk`1 ´ α| en fonction de ek “ |xk ´ α|. En
effet si une méthode est convergente d’ordre p exactement on aura pour k suffisament grand ek`1 « Cepk .
f(x
30 ) y =α
f(x3
x) − 1 x1 x2
x3 x0
0.5 1 1.5 2
f(x2 )
f(x1 )
−
f(x-11 )
−
2
D →
f : x x 1
− −
D →
0 : (x 1 , f(x 1 )) (x0 , f(x0 ))
D →
1 : (x0 , f(x0 )) (x1 , f(x1 ))
D →
2 : (x1 , f(x1 )) (x2 , f(x2 ))
3 : (x2 , f(x2 )) (x3 , f(x3 ))
-2
D →
f : x x cos(x)
D →
1 : (x0 , f(x0 )) (x1 , f(x1 ))
D →
2 : (x1 , f(x1 )) (x2 , f(x2 ))
D →
3 : (x2 , f(x2 )) (x3 , f(x3 ))
4
4 : (x3 , f(x3 )) (x4 , f(x4 ))
f(
fx
f −
((x2)
x1
4 ) y =α
x3 x0
0.5
−
x 1 x1 x2 x4
1 1.5 2 2.5 3
-2
-4
-6
f(x3 )
-8
f(x0 )
Figure 2.17: Méthode de la sécante pour f pxq “ x2 cos pxq , x´1 “ 1.000 et x0 “ 3.000
ek ek + 1
100
exemple : f(x) = x − 1
2
exemple : f(x) = x2 − 1 pente=1.612
exemple : f(x) = x cos x 10-3
,
10-2
2
( )
exemple : f(x) pente=1.608
= x 2 cos(x),
10-4 10-5
10-6 10-7
10-8 10-9
10-10 10-11
10-12
10-13
10-14
10-15
k ek
0 2 4 6 8 10 12 14 10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2
prend pour xk l’intersection de la droite passant par les points pak , f pak qq et pbk , f pbk qq avec l’axe des
abscisses. Si f pak qf pbk q ă 0 cela nous assure que xk Psak , bk r.
L’équation de la droite est donnée par
f pbk q ´ f pak q bk f pak q ´ ak f pbk q
y “ cx ` d, avec c “ et d “ .
bk ´ a k bk ´ a k
On a alors
ak f pbk q ´ bk f pak q
xk “ ´d{c “ .
2. Résolution de systèmes non linéaires
f pbk q ´ f pak q
En résumé, on définit les trois suites pak qkPN , pbk qkPN et pxk qkPN par
a0 f pb0 q´b0 f pa0 q
‚ a0 “ a, b0 “ b et x0 “ f pb0 q´f pa0 q ,
‚ @k P N,
$
’
’ ak`1 “ bk`1 “ xk`1 “ xk , si f pxk q “ 0,
’
&a
k`1 “ xk , bk`1 “ bk , si f pbk qf pxk q ă 0,
’
’ ak`1 “ ak , bk`1 “ xk , si f pak qf pxk q ă 0,
’
% a f pbk`1 q´bk`1 f pak`1 q
xk`1 “ k`1f pbk`1 q´f pak`1 q , si f pxk q ‰ 0.
2.2. Points fixes d’une fonction (dimension 1)
Exercice 2.2.4
On suppose que la fonction f est continue sur ra, bs, vérifie f paqf pbq ă 0 et qu’il existe un unique
ξ Psa, br tel que f pξq “ 0.
Q. 1 Montrer que
af pbq ´ bf paq
aď ď b.
f pbq ´ f paq
f paq
Comme f paqf pbq ă 0, f paq ´ f pbq est du même signe que f paq et alors f paq´f pbq ě 0. De plus b ´ a ą 0
et donc on a x ´ a ě 0.
De la même manière, on a
af pbq ´ bf paq ´ bpf pbq ´ f paqq f pbq
x´b“ “ pa ´ bq
f pbq ´ f paq f pbq ´ f paq
f pbq
Comme f paqf pbq ă 0, f pbq ´ f paq est du même signe que f pbq et alors f pbq´f paq ě 0. De plus a ´ b ă 0
et donc on a x ´ b ď 0.
Initialisation On vérifie la proposition pPk q pour k “ 0. On a f paqf pbq ă 0 donc pP0 q ´ piq est vérifiée.
D’après Q. 1, on obtient a0 ď x0 ď b0 . La proposition pP0 q est donc vérifiée.
Q. 3 Supposons qu’il existe s P N tel que f pxs q “ 0. Alors, pour tout i ď 1, on a as`i “ bs`i “
‚ Supposons f plq “ f pLq. On a f pak qf pbk q ă 0. Comme f est continue, à la limite on obtient
f plqf pLq “ f plq2 “ f pLq2 ď 0 et donc f plq “ f pLq “ 0. On a necessairement l et L dans sa, br
car f paqf pbq ă 0 et donc f paq et f pbq non nuls. Par unicité du zéro de f dans sa, br on obtient
l “ L “ ξ. Comme ak ď xk ď bk , on en déduit que la suite pxk q converge aussi vers ξ.
‚ Supposons f plq ‰ f pLq. Par continuité de la fonction f la suite pxk q converge alors vers M “
lf pLq´Lf plq
f pLq´f plq . Comme ak ď xk ď bk on a aussi
lf pLq ´ Lf plq
lďM “ ď L. (2.22)
f pLq ´ f plq
De plus ayant f pxk q ‰ 0 @k P N, on a f pak qf pbk q ă 0 @k P N. En passant à la limite et par
continuité de f on obtient f plqf pLq ď 0.
Montrons que f plq “ 0 ou f pLq “ 0.
ce qui donne lf plq ě Lf plq et lf pLq ď Lf pLq i.e. pl ´ Lqf plq ě 0 et pL ´ lqf pLq ď 0. Comme
L ´ l ě 0, on en déduit f plq ď 0 et f pLq ď 0. Or f plqf pLq ď 0, ce qui donne f plq “ 0 ou
f pLq “ 0.
– Si f plq ą f pLq, alors de (2.22) on obtient
ce qui donne lf plq ď Lf plq et lf pLq ě Lf pLq i.e. pL ´ lqf plq ě 0 et pL ´ lqf pLq ď 0. Comme
L ´ l ě 0, on en déduit f plq ě 0 et f pLq ě 0. Or f plqf pLq ď 0, ce qui donne f plq “ 0 ou
f pLq “ 0.
Puisque l et L appartiennent à sa, br, on a M Psa, br. Par unicité du zéro de f sur sa, br on en déduit
que M “ ξ.
Théorème 2.11
2. Résolution de systèmes non linéaires
Soit f : ra, bs Ă R ÝÑ R une fonction continue vérifiant f paqf pbq ă 0 et admettant α Psa, br comme
unique solution de f pxq “ 0. Alors la suite pxk qkPN définie par la méthode Regula-Falsi converge
vers α
Soit f : ra, bs Ă R ÝÑ R une fonction continue vérifiant f paqf pbq ă 0 et admettant α Psa, br comme
unique solution de f pxq “ 0. Si f est deux fois dérivables sur ra, bs et si f 2 est monotone sur sa, br
2.3. Résolution de systèmes non linéaires
1 1
c = 0.00 c ∼ − 0 825 .
0.5 0.5
0
0
0.
0.
f 2 (x 1 ,
=
=
2)
2)
x2
x2
0 0
x
x
1,
1,
x2 )
1 (x
1 (x
= 0.0
f
-1 -1
x1 x1
Figure 2.19: Résolution graphique de 2.24 avec c “ 0.00 (gauche) et c „ ´0.825 (droite)
0.5 0.5
0
0
0.
0.
=
=
2)
2)
x2
x2
0 0
x
x
1,
1,
1 (x
1 (x
f
f (
2 x
-0.5 1, x -0.5
2) =0
.0
f2 (x
1 , x2 ) = 0.0
-1 -1
x1 x1
Figure 2.20: Résolution graphique de 2.24 avec c “ ´1.00 (gauche) et c “ ´1.50 (droite)
Comme dans le cas scalaire, pour résoudre numériquement ce genre de problème on utilise des suites
itératives et plus particulièrement celles basées sur les méthodes de points fixes. En effet, nous allons voir
que le théorème du point fixe se généralise très facilement (voir Théorème 2.13).
En définissant, par exemple, la fonction Φ P C 0 pU ; RN q par Φ pxxq “ x ` f px xq, on peut remarquer
xq “ 0 est équivalent à Φ px
f px xq “ x . On peut donc se ramener à la recherche d’un point fixe (s’il existe)
de la fonction Φ .
Trouver α P U Ă RN tel que
$
’
’ Φ 1 pα
α1 , . . . , α N q “ α 1
’
& Φ 2 pαα1 , . . . , α N q “ α 2
Φ pα
αq “ α ðñ ..
’
’ .
’
%
Φ N pαα1 , . . . , α N q “ α N
2.3.1 Point fixe
x rk`1s “ Φ px
xrks q
où Φ est une fonction à déterminer et x r0s P RN . Bien évidemment le choix d’une bonne fonction Φ est
primordiale pour espérer avoir convergence.
2. Résolution de systèmes non linéaires
Ce type de problème peut s’avérer délicat à traiter : comment choisir Φ ? x r0s ? Si l’on converge vers
quel point fixe?
Théorème 2.13
Φpx
DL Ps0, 1r, }Φ xq ´ Φ pyy q} ď L }x
x ´ y } , @px
x, y q P U ˆ U. (2.25)
Alors
1. Φ admet un unique point fixe α P U (i.e. unique solution de x “ Φ px
xq).
3. Pour tout k P N,
› › Lk´l ›› rl`1s ›
› › ›
α ´ x rks › ď
›α x
›x ´ x rls › , 0 ď l ď k (2.26)
1´L
Preuve. On démontre tout d’abord l’existence d’un point fixe. Pour celà on va démontrer que la suite
x rks est de Cauchy dans U fermé d’un espace de Banach (donc elle converge dans U ).
Comme Φ est contractante, on a pour tout k P N˚
› › › › › ›
› rk`1s › › › › rks ›
x
›x ´ x rks › “ ›Φ x rks q ´ Φ px
Φpx x rk´1s q› ď L ›x
x ´ x rk´1s ›
(2.29)
p´1
ÿ › › 1 ´ Lp › ›
› rk`1s › › rk`1s ›
ď Ll ›x
x ´ x rks › “ x
›x ´ x rks ›
l“0
1´L
› ›
Comme Lk Ñ 0 quand k Ñ `8, on conclu que px x rks q est une suite de Cauchy. De plus, par construction
rks x rks q converge
x P U Ă B, pour tout k P N, et B étant un espace de Banach et U un fermé, la suite px
alors vers α P U. Comme Φ est contractante, elle est donc continue et en passant à la limite dans
x rk`1s “ Φ px
x rks q, on abouti à α “ Φ pα
αq, i.e. α est un point fixe de Φ dans U.
L’unicité se déduit immédiatement par la contraction de la fonction Φ . En effet, soit α 1 et α 2 deux points
On a alors @h
h P RN à l’ordre 1
f px
x ` h q « f px
xq ` Jf px
xq.h
h. (2.30)
αq “ 0. Si x rks est proche de α , alors en utilisant (2.30) avec x “ x rks
Nous voulons trouver α tel que f pα
rks rks
et α “ x ` h (i.e. h “ α ´ x ) on obtient
f pα xrks q ` Jf px
αq « f px xrks q.h
h
Au lieu de résoudre f px
xq “ 0, on résoud le système linéarisé
xrks q ` Jf px
f px xrks q.h̃ “ 0
Cette formule est une généralisation de celle vue dans le cas scalaire (voir ??). Il faut noter qu’a chaque
` ˘´1
itération la matrice Jacobienne est modifiée et qu’il faut calculer le vecteur ´ pJf pxxrks q xrks q. Nu-
f px
meriquement, on ne calcule que très rarement l’inverse d’une matrice car celà est très couteux en temps
mais on résoud le système linéaire (2.31) ce qui est bien plus efficace.
On admet dans ce cours le théorème suivant
Théorème 2.14
´ ¯´1
x rk`1s “ x rks ´ pJf px
xrks q xrks q
f px
On donne ensuite l’algorithme 2.16 permettant de déterminer une approximation d’un point fixe d’une
2. Résolution de systèmes non linéaires
fonction f . Dans cet algorithme on suppose donnée la fonction Solve permettant de résoudre un système
linéaire.
f : f : RN ÝÑ RN ,
Jf : la matrice Jacobienne de f ,
x0 : donnée initiale, x0 P RN ,
tol : la tolérence, tol P R` ,
kmax : nombre maximum d’itérations, kmax P N˚
Résultat :
α tol : un élément de RN proche de α .
Remarque 2.15 Si l’on ne connait pas explicitement la Jacobienne de f, il est possible de calculer une
approximation de celle-ci en utilisant des formules de dérivation numérique.
2.3.3 Exemples
Exemple modèle
Comme premier exemple, nous reprenons le système 2.24 avec c “ ´1.5
#
f1 px1 , x2 q “ ´x31 ` x2 ´ 21 “0
1 2 (2.33)
f2 px1 , x2 q “ 25 p10 x2 ` 1q ´ x1 ´ 23 “ 0.
On représente en Figure 2.21 les itérées succéssives pour 4 suites avec une initialisation différentes.
On remarque qu’il est très difficile, si l’on n’est pas suffisament proche d’un point fixe, de prédire vers
lequel on converge.
x0 = (0.00; 1.45)
x0 −
= ( 0.31; −
0.98)
4 x0 −
= ( 0.74; 1.46)
x0 −
= ( 0.90; −
0.03)
2.3.3 Exemples
2
= − 1 50
x2
c .
-3 -2 -1 0 1
x1
En Figure 2.22a, on représente les bassins d’attraction pour les itérées de Newton associés au système
2.33 : à chaque point initial x0 “ px, yq on associe le point fixe vers lequel la suite de Newton converge et
chaque point fixe correspond une couleur. En Figure 2.22b, on représente le nombre d’itérations assurant
la convergence des itérées de Newton : à chaque point initial x0 “ px, yq on associe le nombre d’itérations
nécessaire à la convergence et une échelle de couleur permet de visualer ces nombres.
Exemple complexe : z 3 ´ 1 “ 0
On souhaite trouver les racines complexes de z 3 ´ 1. Pour celà on peut poser z “ x ` ıy, et le système
équivalent devient #
f1 px, yq “ x3 ´ 3xy 2 ´ 1 “ 0
(2.34)
f2 px, yq “ 3x2 y ´ x3 “ 0.
Bien évidemment en restant dans le corps des complexes, l’algorithme de Newton est le même (encore
faut-il que le langage de programmation utilisé le supporte ).
On représente en Figure 2.23 les bassins d’attraction et le nombre d’itérations de convergence associé à
des données initiales dans r´1.5, 1.5s ˆ r´1.5, 1.5s. On obtient alors une fractale de Newton. Pour illustrer
ce caractère fractale des représentations, on donne en Figures 2.24 et 2.25 des zooms successifs sur les
graphes.
50
45
40
α2
α4
α3 35
30
25
α1
20
15
10
50
45
α2
40
35
α3 30
25
20
α1 15
10
α2
α3
α1
2.3.3 Exemples
Figure 2.24: Méthode de Newton, système (2.34), zooms sur les bassins d’attraction
α3
α1
Figure 2.25: Méthode de Newton, système (2.34), zooms sur les nombres d’itérations
Exemple complexe : z 5 ´ 1 “ 0
On représente en Figure 2.26 les bassins d’attraction et le nombre d’itérations de convergence associé à
des données initiales dans r´1.5, 1.5s ˆ r´1.5, 1.5s.
120
α5
α4 100
80
α2
60
α1
40
α3
20
Exemple complexe : z 3 ´ 2z ` 2 “ 0
On représente en Figure 2.27 les bassins d’attraction et le nombre d’itérations de convergence associé à
des données initiales dans r´2, 2s ˆ r´2, 2s.
2. Résolution de systèmes non linéaires
40
35
2.3. Résolution de systèmes non linéaires
30
α3
25
α1
20
α2
15
10
(a) Bassin d’attraction des racines. En rouge zône (b) Nombre d’itérations de convergence. En blanc
de divergence zône de divergence
Dans cette partie nous allons consisérer la résolution numérique d’un système linéaire Ax x “ b dont la
matrice A est inversible.
On pourrait penser que pour résoudre le système linéaire Ax x “ b , A inversible, le plus simple serait de
calculer la matrice A-1 , inverse de A, puis d’effectuer un produit matrice-vecteur pour obtenir x “ A-1b .
Or pour calculer l’inverse d’une matrice d’ordre n on doit résoudre n systèmes linéaires d’ordre n! En
effet, déterminer l’inverse d’une matrice A revient à rechercher la matrice X solution de
¨ ˛¨ ˛ ¨ ˛
A1,1 A1,2 ... A1,n X1,1 X1,2 ... X1,n 1 0 ... 0
˚ .. ‹ ˚ .. ‹ ˚ .‹
˚ A2,1 . . . ..
. . ‹ ˚ ..
.
..
. . ‹ ˚ .. ..
. . .. ‹
AX “ I ðñ ˚ ‹ ˚ X2,1 ‹ “ ˚0 ‹
˚ . .. .. ‹˚ . .. .. ‹ ˚. . ‹
˝ .. . . An´1,n ‚˝ .. . . Xn´1,n ‚ ˝ .. . . . . . 0‚
An,1 . . . An,n´1 An,n Xn,1 . . . Xn,n´1 Xn,n 0 ... 0 1
Si on note X i,: le i-ème vecteur colonne de la matrice X et e i le i-ème de la base canonique de Rn alors
le système précédant s’écrit
¨ ˛
A1,1 A1,2 ... A1,n ¨ ˛ ¨ ˛
˚ .. ‹
˚ A2,1 . . . ..
. ‹
. ‹˝
˚ X 1 . . . X n ‚ “ ˝ e1 . . . en ‚
˚ . . . ‹
˝ .. .. .. An´1,n ‚
An,1 . . . An,n´1 An,n
X j “ e j , @j P v1, nw.
AX
Nous allons en section 3.1 étudier quelques méthodes directes pour la résolution d’un système
linéaire basées sur la recherche d’une matrice M inversible telle quel la matrice MA soit triangulaire
supérieure. Ceci conduit à la résolution du système linéaire équivalent
x “ Mbb.
MAx
56 Résolution de systèmes linéaires
x rk`1s “ Bx
xrks ` c , k ě 0, x r0s donné
Algorithme 3.1 Fonction RSLMatDiag permettant de résoudre le système linéaire à matrice diagonale
inversible
x “ b.
Ax
b : vecteur de Rn .
Résultat : x : vecteur de Rn .
1: Fonction x Ð RSLMatDiag ( A, b )
2: Pour i Ð 1 à n faire
3: xpiq Ð bpiq{Api, iq
4: Fin Pour
5: Fin Fonction
Exercice 3.1.1
On remarque que l’on peut calculer successivement x1 , x1 , . . . , xn , car il est possible de calculer xi si on
connait x1 , . . . , xi´1 : c’est la méthode de descente. En effet, on a
pAx
xqi “ bi , @i P v1, nw.
Comme A est une matrice triangulaire inférieure, on a (voir Définition B.44) Ai,j “ 0 si j ą i. Ceci donne
alors pour tout i P v1, nw
i´1
ÿ n
ÿ
bi “ Ai,j xj ` Ai,i xi ` loAi,jon xj
omo
j“1 j“i`1
“0
De plus la matrice A étant triangulaire inversible ses éléments diagonaux sont tous non nuls. On obtient
On écrit en détail les raffinements successifs permettant d’aboutir à l’Algorithme 3.2 final ne compor-
tant que des opérations élémentaires(.... à finaliser) de telle sorte que le passage entre deux raffinements
successifs soit le plus compréhensible possible.
3.1.Méthodes directes
x “ b en calculant
Résoudre Ax 1: Pour i Ð 1 ˜à n faire
1:
¸
i´1
successivement x1 , x2 , . . . , xn . 1 ÿ
2: xi Ð bi ´ Ai,j xj
Ai,i j“1
3: Fin Pour
i´1
ÿ
Dans le raffinement R1 , la seule difficulté restante est le calcul de la somme Ai,j xj . En effet,
ř j“1
l’opérateur mathématique n’est pas défini dans notre langage algorithmique : il va donc falloir détailler
un peu plus l’algorithme. Pour isoler le calcul de cette somme, on la note S. La ligne 2 peut donc s’écrire
1
xi Ð pbi ´ Sq .
Ai,i
Mais où calculer la valeur S? 4 choix possible : avant la ligne 1, entre les lignes 1 et 2, entre les lignes 2
et 3 ou après la ligne 3.
On ne peut pas calculer S après utilisation de sa valeur dans le calcul de xi ! ce qui élimine les 2 derniers
choix. Ensuite, on ne peut sortir le calcul de S de la boucle puique la somme dépend de l’indice de boucle
i : ce qui élimine le premier choix. On doit donc calculer S dans la boucle et avant le calcul de xi .
4: Fin Pour
Maintenant que l’on a isolé la difficulté, il reste à détailler le calcul de S. Celui-ci se fait intégralement
en lieu et place de la ligne 2.
6: xi Ð pbi ´ Sq{Ai,i
7: Fin Pour
3.1.1 Matrices particulières
Algorithme 3.2 Fonction RSLTriInf permettant de résoudre le système linéaire triangulaire inférieur
inversible
3. Résolution de systèmes linéaires
x “ b.
Ax
1: Fonction x Ð RSLTriInf ( A, b )
2: Pour i Ð 1 à n faire
3: SÐ0
4: Pour j Ð 1 à i ´ 1 faire
3.1. Méthodes directes
5: S Ð S ` Api, jq ˚ xpjq
6: Fin Pour
7: xpiq Ð pbpiq ´ Sq{Api, iq
8: Fin Pour
9: Fin Fonction
pAx
xqi “ bi , @i P v1, nw.
n
ÿ
Ai,j xj “ bi , @i P v1, nw.
j“1
Comme A est une matrice triangulaire supérieure, on a (voir Définition B.44) Ai,j “ 0 si j ă i. Ceci
donne alors pour tout i P v1, nw
i´1
ÿ n
ÿ
bi “ loAi,jon xj ` Ai,i xi `
omo Ai,j xj
j“1 j“i`1
“0
n
ÿ
“ Ai,i xi ` Ai,j xj
j“i`1
De plus la matrice A étant triangulaire inversible ses éléments diagonaux sont tous non nuls. On obtient
donc xi en fonction des xi`1 , . . . , xn :
˜ ¸
n
ÿ
1
(3.3)
3.1.Méthodes directes
2: Calculer xi connaissant xi`1 , . . . , xn n
ÿ
3: Fin Pour 2: SÐ Ai,j xj
j“i`1
3: xi Ð pbi ´ Sq{Ai,i
4: Fin Pour
6: xi Ð pbi ´ Sq{Ai,i
7: Fin Pour
Algorithme 3.3 Fonction RSLTriSup permettant de résoudre le système linéaire triangulaire supérieur
inversible
x “ b.
Ax
1: Fonction x Ð RSLTriSup ( A, b )
2: Pour i Ð n à 1 faire(pas de ´1)
3: SÐ0
4: Pour j Ð i ` 1 à n faire
5: S Ð S ` Api, jq ˚ xpjq
6: Fin Pour
7: xpiq Ð pbpiq ´ Sq{Api, iq
8: Fin Pour
9: Fin Fonction
¨ ˛
P “ ˝ x1 . . . xn ‚
A “ UTU˚
Ce qui donne
¨ ˚ ˛
x1 Axx1 x1 ˚ Axx2 . . . x1 ˚ Axxn
˚x˚2 Ax
x1 x˚2 Ax x2 . . . x˚2 Ax xn ‹
On a donc
Bi,j “ x ˚i Ax
xj , @pi, jq P v1, nw2
.
pPn q @A P Mn pCq, DU P Mn pCq unitaire, DT P Mn pCq triangulaire supérieure, telles que A “ UTU˚ .
3.1.Méthodes directes
Soit A2 P M2 pCq. Elle admet au moins un élément propre pλ, u q (voir Proposition B.40 par ex.)
avec }u
u} “ 1. On peut donc appliquer le résultat de la question précédente : il existe une matrice
unitaire P2 P M2 pCq telle que la matrice B2 “ P2 A2 P˚2 ait comme premier vecteur colonne pλ, 0qt .
La matrice B2 est donc triangulaire supérieure et comme P2 est unitaire on en déduit
A2 “ P˚2 B2 P2 .
On pose U2 “ P˚2 matrice unitaire et T2 “ B2 matrice triangulaire supérieure pour conclure que la
propostion pP2 q est vraie.
Hérédité : Supposons que pPn´1 q soit vérifiée. Montrons que pPn q est vraie.
Soit An P Mn pCq. Elle admet au moins un élément propre pλ, u q (voir Proposition B.40 par ex.)
avec }u
u} “ 1. On peut donc appliquer le résultat de la question précédente : il existe une matrice
unitaire Pn P Mn pCq telle que la matrice Bn “ Pn An P˚n s’écrivent
¨ ˛
λ c ˚n´1
˚ 0 ‹
˚ ‹
Bn “ ˚ . ‹
˝ .. An´1 ‚
0
où cn´1 P Mn´1,1 pCq et An´1 P Mn´1 pCq. Par hypothèse de récurrence, DUn´1 P Mn´1 pCq unitaire
et Tn´1 P Mn´1 pCq triangulaire supérieure telles que
ou encore
Tn´1 “ U˚n´1 An´1 Un´1 .
Soit Qn P Mn pCq la matrice définie par
¨ ˛
1 0 ... 0
˚ 0 ‹
˚ ‹
Qn “ ˚ .. ‹.
˝ . Un´1 ‚
0
“In´1
0 0
0
0 0 0
¨ ˛
¨ ˛¨ ˛ λ c ˚n´1 U˚n´1
λ c ˚n´1 1 0 ... 0 ˚ ‹
˚ ‹˚ 0
˚ 0 ‹˚ 0 ‹ ˚ ‹
‹ ˚ .. ‹
“˚
˚ .. ‹˚
‹˝ .. ‹“˚ . U ˚
n´1 An´1 Un´1 “
‹
˝ . U˚n´1 An´1 ‚ . Un´1 ‚ ˚
˚ loooooooomoooooooon ‹
‹
˝ “Tn´1 ‚
0 0
0
Tn “ Q˚n Pn An P˚n Qn .
3.1. Méthodes directes
On note Un “ P˚n Qn . Cette matrice est unitaire car les matrices Qn et Pn le sont. En effet, on a
˚
Un U˚n “ P˚n Qn pP˚n Qn q “ P˚n lo Qo˚nn Pn “ P˚n Pn “ In .
Qonmo
“In
Q. 4 Résoudre Ax
x “ b est équivalent à résoudre
UTU˚x “ b . (3.4)
Comme U est unitaire, on a UU˚ “ I et U˚ inversible. Donc en multipliant (B.55) par U˚ on obtient le
système équivalent
˚ ˚ ˚ ˚ ˚
loUomoUon TU x “ U b ðñ TU x “ U b .
“I
˚x
On pose y “ U x . Le système précédant se résoud en deux étapes
1. on cherche y solution de Tyy “ U˚b. Comme U est unitaire on a detpUq detpU˚ q “ detpIq “ 1 et donc
Soit A P Mn pCq. Il existe une matrice unitaire U et une matrice triangulaire supérieure T telles que
A “ UTU˚ (3.5)
1. Soit A P Mn pCq. Il existe une matrice unitaire U telle que U-1 AU soit triangulaire.
2. Soit A P Mn pCq une matrice normale. Il existe une matrice unitaire U telle que U-1 AU soit
diagonale.
3. Soit A P Mn pRq une matrice symétrique. Il existe une matrice orthogonale P telle que
Soit v P Cn avec v1 ‰ 0. On note Ervv s P Mn pCq la matrice triangulaire inférieure à diagonale unité
définie par ¨ ˛
1 0 ... ... 0
˚ ´v2 {v1 1 0 . . . 0 ‹
˚ ‹
˚ .. .. .. .. ‹
rv
vs ˚ . . . ‹ (3.6)
3.1.Méthodes directes
E “˚ . 0 ‹
˚ ‹
˚ .. .. . . . . ‹
˝ . . . . 0 ‚
´vn {v1 0 . . . 0 1
Q. 1 1. Calculer le déterminant de Ervv s .
2. Déterminer l’inverse de Ervv s .
A P Mn pCq avec A1,1 ‰ 0. On note A :,j le j-ème vecteur colonne de A et A i,: son i-ème vecteur
ligne. On pose A 1 “ A :,1 .
Q. 2 1. Calculer à “ ErA
A1 s
A en fonction des vecteurs lignes de A.
t
2. Montrer que la première colonne de à est le vecteur pA1,1 , 0, . . . , 0q i.e.
ErA
A1 s
Aee1 “ A1,1e 1 (3.7)
par ˆ ˙
Im O
Erm,vv s “ (3.8)
O Ervv s
Q. 3 1. Calculer le déterminant de Erm,vv s .
˚ ‹
Ervv s “ ˚
˝ e
‹
‚
In´1
t
avec e “ p´v2 {v1 , . . . , ´vn {v1 q P Cn´1 On note X P Mn pCq son inverse qui s’écrit avec la même
structure bloc ¨ ˛
a b˚
˚ ‹
X“˚ ˝ c
‹
‚
3. Résolution de systèmes linéaires
¨ ˛
a b˚
˚ ‹
“˚ ‹
3.1. Méthodes directes
˝ aee ` c ˚
eb ` D ‚
Pour i ě 2, on a Ei,1 “ ´ vv1i et Ei,k “ δi,k , @k P v2, nw. On obtient alors pour tout j P v1, nw
n
ÿ ÿn
vi vi
Ãi,j “ Ei,1 A1,j ` Ei,k Ak,j “ ´ A1,j ` δi,k Ak,j “ ´ A1,j ` Ai,j
k“2
v1 k“2
v 1
Q. 3 1. La matrice Erm,vv s est triangulaire inférieure. Son déterminant est donc le produit de ses
éléments diagonaux. Comme cette matrice est à diagonale unité (i.e. tous ses éléments diagonaux
valent 1 ), on obtient det Erm,vv s “ 1.
Une autre manière de le démontrer. On peut voir que la matrice Erm,vv s est bloc-diagonale. D’après
la Proposition B.54, page 209, son déterminant est le produit des déterminant des blocs diagonaux
: det Erm,vv s “ det Im ˆ det Ervv s “ 1.
2. On note X l’inverse de la matrice Erm,vv s . Cette matrice s’écrit avec la même structure bloc
3.1.Méthodes directes
ˆ ˙
X1,1 X1,2
X“ avec X1,1 P Mm pCq et X2,2 P Mn pCq
X2,1 X2,2
Plus rapidement, comme la matrice Erm,vv s est bloc-diagonale, on en déduit (voir Proposition B.54,
page 209) directement le résultat.
Q. 4 Le produit Erm,vv s C peut s’effectuer par bloc car les blocs sont de dimensions compatibles et on a
ˆ ˙ˆ ˙ ˆ ˙
Im Om,n C1,1 C1,2 Im C1,1 ` Om,n On,m Im C1,2 ` Om,n A
Erm,vv s C “ “
On,m E On,m A On,m C1,1 ` EOn,m On,m C1,2 ` EA
ˆ ˙ ˜ ¸
C1,1 C1,2 C1,1 C1,2
“ “
On,m EA On,m Ã
˛
Lemme 3.3
Soit A P Mn pCq avec A1,1 ‰ 0. Il existe une matrice E P Mn pCq triangulaire inférieure à diagonale
unité telle que
EAee1 “ A1,1e 1 (3.11)
3.1.2 Exercices et résultats préliminaires
ri,js
Soit pi, jq P v1, nw2 , on note Pn P Mn pRq la matrice identitée dont on a permuté les lignes i et j.
Q. 1 Représenter cette matrice et la définir proprement.
3. Résolution de systèmes linéaires
Soit A P Mn pCq.On note A r,: le r-ème vecteur ligne de A et A :,s le s-ème vecteur colonne de A.
ri,js
Q. 2 1. Déterminer Pn A en fonction des vecteurs lignes de A.
ri,js
2. Déterminer APn en fonction des vecteurs colonnes de A.
ri,js
Q. 3 1. Calculer le déterminant de Pn .
ri,js
2. Déterminer l’inverse de Pn .
ri,js
Correction Exercice 3.1.4 On note P “ Pn .
Q. 1 On peut définir cette matrice par ligne,
3.1. Méthodes directes
$
& @r P v1, nwzti, ju, Pr,s “ δr,s , @s P v1, nw,
Pi,s “ δj,s , @s P v1, nw,
%
Pj,s “ δi,s , @s P v1, nw.
ou par colonne $
& @s P v1, nwzti, ju, Pr,s “ δr,s , @r P v1, nw,
Pr,i “ δr,j , @r P v1, nw,
%
Pr,j “ δr,i , @r P v1, nw.
ri,js
Ne pas utiliser les indices i et j qui sont déjà fixés dans la définition de la matrice P “ Pn .
ce qui donne $
& D r,: “ A r,: , @r P v1, nwzti, ju,
D i,: “ A j,: ,
%
D j,: “ A i,: .
La notation D i,: correspond au vecteur ligne pDi,1 , . . . , Di,n q et D :,j correspond au vecteur
¨ ˛
D1,j
colonne ˝ ... ‚
˚ ‹
Dn,j
ri,js
Ne pas utiliser les indices i et j qui sont déjà fixés dans la définition de la matrice P “ Pn .
ce qui donne $
& E :,s “ A :,s , @s P v1, nwzti, ju,
3.1.Méthodes directes
E :,i “ A :,j ,
%
E :,j “ A :,i .
Lemme 3.4
ri,js
Soit pi, jq P v1, nw2 . On note Pn P Mn pRq la matrice identitée dont on a permuté les lignes i et j.
ri,js
Alors la matrice Pn est symétrique et orthogonale. Pour toute matrice A P Mn pKq,
ri,js
1. la matrice Pn A est la matrice A dont on a permuté les lignes i et j,
ri,js
2. la matrice APn est la matrice A dont on a permuté les colonnes i et j,
Cette méthode doit son nom aux mathématiciens Carl Friedrich Gauss (1777-1855, mathémati-
cien, astronome et physicien allemand) et Wilhelm Jordan (1842-1899, mathématicien et géodésien
allemand) mais elle est connue des Chinois depuis au moins le Ier siècle de notre ère. Elle est
référencée dans l’important livre chinois Jiuzhang suanshu ou Les Neuf Chapitres sur l’art mathé-
matique, dont elle constitue le huitième chapitre, sous le titre « Fang cheng » (la disposition rect-
angulaire). La méthode est présentée au moyen de dix-huit exercices. Dans son commentaire daté
3.1.3 Méthode de Gauss-Jordan, écriture matricielle
de 263, Liu Hui en attribue la paternité à Chang Ts’ang, chancelier de l’empereur de Chine au IIe
siècle avant notre ère.
A l’aide de ces opérations élémentaires cet algorithme permet donc de transformer le système linéaire
Axx “ b en le système équivalent Ux x “ f où U est triangulaire supérieure. En fait, l’algorithme va
transformer la matrice A et le second membre b pour aboutir à un système dont la matrice est triangulaire
supérieure.
3.1. Méthodes directes
1: Pour j Ð 1 à n ´ 1 faire
2: Rechercher l’indice k de la ligne du pivot (sur la colonne j, k P vj, nw)
3: Permuter les lignes j (Lj ) et k (Lk ) du système si besoin.
4: Pour i Ð j ` 1 à n faire
Ai,j
5: Eliminer en effectuant Li Ð Li ´ Aj,j Lj
6: Fin Pour
7: Fin Pour
8: Résoudre le système triangulaire supérieur par la méthode de la remontée.
On va maintenant voir comment écrire cet algorithme de manière plus détaillée. Pour conserver sa
lisibilité, on choisi pour chaque ligne un peu délicate de créer et d’utiliser une fonction dédiée à cette
tâche.
1: Fonction x Ð RSLGauss ( A, b )
2: Pour j Ð 1 à n ´ 1 faire
3: k Ð ChercheIndPivot pA, jq Ź ChercheIndPivot à écrire
4: rA, b s Ð PermLignesSys pA, b , j, kq Ź PermLignesSys à écrire
5: Pour i Ð j ` 1 à n faire
6: rA, b s Ð CombLignesSys pA, b , j, i, ´Api, jq{Apj, jqq Ź CombLignesSys à écrire
7: Fin Pour
8: Fin Pour
9: x Ð RSLTriSuppA, b q Ź RSLTriSup déjà écrite
10: Fin Fonction
Bien évidemment, il reste à décrire et écrire les différentes fonctions utilisées dans cette fonction :
Fonction rA, b s Ð PermLignesSyspA, b , i, kq : permute les lignes i et k de la matrice A ainsi que celles
du vecteur b .
Ces trois fonctions sont simples à écrire et sont données en Algorithmes 3.6, 3.7 et 3.8.
Algorithme 3.8 Combinaison linéaire Li Ð Li `
Algorithme 3.6 Recherche d’un pivot pour
Ecriture algébrique
Sous forme d’exercice :
Exercice 3.1.5
3.1.Méthodes directes
Soit A P Mn pCq inversible.
Q. 1 Montrer qu’il existe une matrice G P Mn pCq telle que | detpGq| “ 1 et GAee1 “ αee1 avec α ‰ 0
et e 1 premier vecteur de la base canonique de C n .
Q. 2 1. Montrer par récurrence sur l’ordre des matrices que pour toute matrice An P Mn pCq
inversible, il existe une matrice Sn P Mn pCq telle que | det Sn | “ 1 et Sn An “ Un avec Un
matrice triangulaire supérieure inversible.
Q. 1 D’après le Lemme 3.3, si A1,1 ‰ 0 le résultat est immédiat. Dans l’énoncé rien ne vient corroborer
cette hypothèse. Toutefois, comme la matrice A est inversible, il existe au moins un p P v1, nw tel que
Ap,1 ‰ 0. On peut même choisir le premier indice p tel que |Ap,1 | “ maxiPv1,nw |Ai,1 | ą 0 (pivot de
r1,ps
l’algorithme de Gauss-Jordan). On note P “ Pn la matrice de permutation des lignes 1 et p (voir
exercice 3.1.4, page 66). De plus on a
| det P| “ 1 et P-1 “ P.
Par construction pPAq1,1 “ Ap,1 ‰ 0, et on peut alors appliquer le Lemme 3.3 à la matrice pPAq pour
obtenir l’existence d’une matrice E P Mn pCq vérifiant det E “ 1 et telle que
EpPAqee1 “ Ap,1e 1 .
x “ b ðñ GAx
Ax x “ Gbb
existe G2 P M2 pCq telle que | det G2 | “ 1 et G2 A2e 1 “ αee1 avec α ‰ 0 et e 1 premier vecteur de
la base canonique de C2 . On note U2 “ G2 A2 . Cette matrice s’écrit donc sous la forme
ˆ ˙
α ‚
U2 “
0 ‚
et elle est triangulaire supérieure. Les matrices G2 et A2 étant inversible, leur produit U2 l’est
aussi. La proposition pP2 q est donc vérifiée avec S2 “ G2 .
Hérédité : Soit n ě 3. On suppose que pPn´1 q est vraie. Montrons que pPn q est vérifiée.
Soit An P Mn pCq inversible. En utilisant la question précédente il existe Gn P Mn pCq telle
que | det Gn | “ 1 et Gn Ane 1 “ αne 1 avec αn ‰ 0 et e 1 premier vecteur de la base canonique
de Cn . On note Vn “ Gn An . Cette matrice s’écrit donc sous la forme
¨ ˛ ¨ ˛
αn ‚ ... ‚ αn c ˚n´1
˚ 0 ‚ ... ‚ ‹ ˚ 0 ‹
3.1. Méthodes directes
˚ ‹ def ˚ ‹
Vn “ ˚ .. .. .. ‹“˚ .. ‹
˝ . . . ‚ ˝ . Bn´1 ‚
0 ‚ ... ‚ 0
où c n´1 P Cn´1 et Bn´1 P Mn´1 pCq. Comme Gn et An sont inversibles, Vn l’est aussi. On en
déduit donc que Bn´1 est inversible car 0 ‰ det Vn “ αn ˆ det Bn´1 et αn ‰ 0.
On peut donc utiliser la propriété pPn´1 q (hyp. de récurrence) sur la matrice Bn´1 : il existe
donc Sn´1 P Mn´1 pCq, avec | det Sn´1 | “ 1, tel que la matrice Un´1 “ Sn´1 Bn´1 soit une
triangulaire supérieure inversible.
Soit Qn P Mn pCq la matrice définie par
¨ ˛
1 0 ... 0
˚ 0 ‹
˚ ‹
Qn “ ˚ .. ‹
˝ . Sn´1 ‚
0
On a alors
¨ ˛¨ ˛
1 0 ... 0 αn c ˚n´1
˚ 0 ‹˚ 0 ‹
˚ ‹˚ ‹
Qn Gn An “ Qn Vn “ ˚ .. ‹˚ .. ‹
˝ . Sn´1 ‚˝ . Bn´1 ‚
0 0
¨ ˛ ¨ ˛
αn c˚n´1 αn c˚n´1
˚ 0 ‹ ˚ 0 ‹
˚ ‹ ˚ ‹ def
“˚ .. ‹“˚ . ‹ “ Un
˝ . Sn´1 Bn´1 ‚ ˝ .. Un´1 ‚
0 0
Pour déterminer le vecteur x , on peut alors résoudre le dernier système par l’algorithme de remontée.
Q. 3 (rapide) Si A est non inversible, alors dans la première question nous ne sommes pas assurés d’avoir
α ‰ 0. Cependant l’existence de la matrice G reste avérée.
3.1.4 Factorisation LU
Pour la deuxième question, le seule changement vient du fait que la matrice Un n’est plus inversible.
˛
On a donc démontré le théorème suivant
Soit A une matrice carrée, inversible ou non. Il existe (au moins) une matrice inversible G telle que
GA soit triangulaire supérieure.
3.1.Méthodes directes
3.1.4 Factorisation LU
Avant de citer le théorème principal, on va faire un "petit" exercice...
Exercice 3.1.6:
Soit A P Mn pCq une matrice dont les sous-matrices principales d’ordre i, notées ∆i , i P v1, nw (voir
Definition B.48, page 207) sont inversibles.
Montrer qu’il existe des matrices Erks P Mn pCq, k P v1, n ´ 1w, triangulaires inférieures à diagonale
unité telles que la matrice U définie par
U “ Ern´1s ¨ ¨ ¨ Er1s A
soit triangulaire supérieure avec Ui,i “ det ∆i {pU1,1 ˆ ¨ ¨ ¨ ˆ Ui´1,i´1 q, @i P v1, nw.
‹
˚ ‹
˚
˚ 0 ... ... 0 αk`1 ‚ ¨¨¨ ‚ ‹
‹
˚
˚ 0 ¨¨¨ ¨¨¨ 0 ‚ ‚ ¨¨¨ ‚ ‹
‹
˚ .. .. .. .. ‹
˝ . . ‚ . . ‚
0 ... ... 0 ‚ ‚ ¨¨¨ ‚
def
La matrice Grks “ Erks ¨ ¨ ¨ Er1s est triangulaire inférieure à diagonale unité car produit de
matrices triangulaires inférieures à diagonale unité (voir Exercice B.3.2, page 214). Le produit
de Grks A s’écrit alors sous forme bloc
k`1
¨
1 0 ¨¨¨ 0 0 ¨¨¨ ¨¨¨ 0
˛ k`1
. .. .. .. ..
‚ ..
˚ ‹¨
˚
˚ . . . .
‹
‹ ‚ ¨¨¨ ‚
˛
˚ .. . . .. .. ..
‹˚ .. .. ‹
˚
˚ . . . 0 . .
‹˚
‹˚ ∆k`1 . . ‹
‹
‚ ... 1 0 ¨¨¨ 0
˚ ‹˚
‚ ¨¨¨ ‚ ¨¨¨ ‚
Grks A “ ˚
˚ ‹˚ ‹
‹
‚ ... ... 1 0 0
‹˚
˚ ‚ ¨¨¨ ‹˚ ‚ ¨¨¨ ‚ ‚ ¨¨¨ ‚ ‹
‹
.. . . .. .. . .. .. .. .. .. ..
˚ ‹˚
‚ ..
‹
. . .
˚ ‹˝
˚
˚ . . .‹
‹ . . . . ‚
˚ .. . . .. .. .. . . .. ‹ ‚ ¨¨¨ ‚ ‚ ¨¨¨ ‚
˝ . . . . . . . 0 ‚
‚ ... ... ‚ ‚ ¨¨¨ ‚ 1
Comme Arks “ Grks A, en utilisant les règles de multiplication par blocs des matrices on obtient
¨ ˛
α1 ‚ ¨ ¨ ¨ ‚ ‚ ¨ ˛
˚ . ‹ 1 0 ¨¨¨ 0 ¨
˚0 . .
. . . . .. .‹
˛
˚ ‚ ‹ ˚
‹ ˚‚ . . . . . . .. ‹
˚ . . ‹“˚ ‹ ˝ ∆k`1 ‚
˚ .. .. ... ‚ ‚ ‹‹ ˝ ... . . . . . . 0‚
˚ ‹
˚
˝ 0 . . . 0 αk ‚ ‚
‚ ... ‚ 1
0 . . . . . . 0 αk`1
En prenant le déterminant de cette dernière équation, et en utilisant le fait que le determinant
d’une matrice triangulaire est le produit de ses coefficients diagonaux, on obtient
k`1
ź
αi “ det ∆k`1 .
i“1
Par hypothèse ∆k`1 inversible , ce qui entraine det ∆k`1 ‰ 0 et donc αi ‰ 0, @i P v1, k ` 1w.
On a donc
det ∆k`1
αk`1 “ k
‰ 0.
ź
αi
i“1
• Montrons l’existence d’une matrice triangulaire inférieure à diagonale unité permettant d’éliminer
les termes sous diagonaux de la colonne k ` 1 de Arks .
Revenons à l’écriture bloc de premier bloc diagonal de dimension k. On a
¨ ˛
α1 ‚ ¨ ¨ ¨ ‚ ‚ ¨¨¨ ¨¨¨ ‚
3.1.4 Factorisation LU
˚ 0 . . . . . . ... .. .. ‹
˚
˚ . . ‹ ‹
˚ . . .. .. .. ‹
˚ . . . . ‚ ‹
˚ . . . ‹ ˜ ¸
˚ ‹
˚ 0 . . . 0 αk ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‹ def Urks Frks
3.1.Méthodes directes
rks
(en bleu dans l’expression de Arks précédente) on a alors v1 “ Ak`1,k`1 “ αk`1 ‰ 0 et l’on
peut définir la matrice Erk`1s P Mn pCq, triangulaire inférieure à diagonale unité, par
ˆ ˙
def Ik O
Erk`1s “ Erk,vv s “
O Ervv s
avec Ervv s P Mn´k pCq triangulaire inférieure à diagonale unité (définie dans l’exercice 3.1.3)
telle que ¨ ˛
αk`1 ‚ ¨ ¨ ¨ ‚
˚ .. .. ‹
˚ 0 . .‹
Ervv s Vrks “ ˚
˚ . .
‹
.. ‹
˝ .. .. .‚
0 ‚ ¨¨¨ ‚
On a alors
ˆ ˙˜ ¸
rk`1s def rk`1s rks Ik O Urks Frks
A “E A “
O Ervv s O Vrks
˜ ¸
Urks Frks
“
O Ervv s Vrks
où pour tout k P v1, n ´ 1w les matrices Erks sont triangulaires inférieures à diagonale unité.
Comme le déterminant d’un produit de matrices est égale au produit des déterminants des matrices on a
3.1.4 Factorisation LU
´ ¯
det Ern´1s ˆ ¨ ¨ ¨ ˆ Er1s ˆ A “ det Ern´1s ˆ ¨ ¨ ¨ ˆ det Er1s ˆ det A
“ det A
3. Résolution de systèmes linéaires
car les matrices Erks sont triangulaires inférieures à diagonale unité et donc det Erks “ 1, @k P v1, n ´ 1w.
De plus, le déterminant d’une matrice traingulaire supérieure est égale au produit de ses coefficients
diagonaux et donc
¨ ˛
U1,1 ‚ ¨ ¨ ¨ ¨¨¨ ‚
˚ .. .. .. ‹
˚ 0 . . . ‹
˚ ‹ n´1
ź
˚ . .. ‹
det ˚ . .. .. .. ‹ “ Un,n U k, k.
˚ . . . . . ‹
˚ ‹ k“1
˝ 0 ¨ ¨ ¨ 0 Un´1,n´1 ‚ ‚
3.1. Méthodes directes
On a alors
n´1
ź
det A “ det ∆n “ Un,n U k, k ‰ 0.
k“1
˛
Soit A P Mn pCq une matrice dont les sous-matrices principales sont inversibles alors il existe une
unique matrice L P Mn pCq triangulaire inférieure (lower triangular en anglais) à diagonale unité
et une unique matrice U P Mn pCq triangulaire supérieure (upper triangular en anglais) inversible
telles ques
A “ LU.
U “ Ern´1s ¨ ¨ ¨ Er1s A
soit triangulaire supérieure avec Ui,i ‰ 0, @i P v1, nw. On pose G “ Ern´1s ¨ ¨ ¨ Er1s . La matrice G
est donc aussi triangulaire inférieure à diagonale unité. Elle est donc inversible est son inverse est
triangulaire inférieure à diagonale unité (voir Proposition B.46, page 207). En notant L “ G-1 on
a A “ LU.
méthode 2 Nous allons effectuer une démonstration par récurrence sur l’ordre n de la matrice A.
Propriété: Pour tout n P N˚ , si une matrice A P Mn pCq a toutes ses sous-
matrices principales inversibles alors il existe une unique matrice L P Mn pCq
triangulaire inférieure à diagonale unité et une unique matrice U P Mn pCq
triangulaire supérieure inversible telles ques A “ LU.
Initialisation: Pour n “ 1, c’est trivial L “ 1 et U “ A.
Hérédité: Supposons la propriété vraie au rang n, montrons qu’alors, la propriété est vraie au
rang n ` 1.
Soit A P Mn`1 pCq telle que toutes les sous-matrices principales soient inversibles. On peut la
décomposer sous la forme bloc suivante
¨ ˛
˚ A f ‹
A“˚
˝
‹
‚
e˚ d
où
• A est la matrice de Mn pCq telle que Ai,j “ Ai,j , @pi, jq P v1, nw2 ,
• f est le vecteur de Cn tel que fi “ Ai,n`1 , @i P v1, nw,
3.1.4 Factorisation LU
• e est le vecteur de Cn tel que ei “ An`1,i , @i P v1, nw
• d P C est le scalaire d “ An`1,n`1 .
Comme les sous-matrices principales de A sont les n premières sous-matrices principales de A,
On va construire des matrices L et U vérifiant la propriété. Soient L P Mn`1 pCq et U P Mn`1 pCq
décomposées sous la forme bloc
¨ ˛ ¨ ˛
3.1.Méthodes directes
˚ L 0 ‹ ˚ U h ‹
L“˚
˝
‹ et U “ ˚
‚ ˝
‹
‚
g˚ 1 0˚ α
où g P Cn , h P Cn and α P C. Les deux matrices sont blocs compatibles pour la multiplication et
on a alors ¨ ˛¨ ˛ ¨ ˛
˚ L 0 ‹˚ U h ‹ ˚ LU h
Lh ‹
LU “ ˚
˝
‹˚
‚˝
‹“˚
‚ ˝
‹
‚
g˚ 1 0˚ α g ˚U g ˚h ` α
Comme A “ L U, on va idenfier bloc par bloc les matrices LU et A, puis vérifier que le système est
resolvable. On obtient donc par identification le système:
$
& Lh h “ f
g ˚U “ e˚
% ˚
g h`α “ d
Par hypothèse de récurrence L est triangulaire inférieure à diagonale unité et U triangulaire su-
perieure inversible: le système précédant admet donc comme solution
$ -1
& h “ L f
-1
g “ U˚ e
%
α “ d ´ g ˚h
On a donc construit une matrice L triangulaire inférieure à diagonale unité et une matrice U
triangulaire superieure telles que A “ LU. Comme la matrice A est inversible, on en déduit que
A “ L1 U 1 “ L2 U 2 .
U1 U-1 -1
2 “ L1 L 2 . (3.14)
La matrice L-11 L2 est triangulaire inférieure à diagonale unité car produit de deux matrices triangulaires
inférieures à diagonale unité. Elle est égale à la matrice U1 U-12 qui elle est triangulaire supérieure (car
prduit de deux matrices triangulaires supérieures). Donc L-1 1 L2 est à la fois une matrice triangulaire
supérieure et inférieure : elle est donc diagonale. Comme elle est à diagonale unité on en déduit que
1 L2 “ I et donc L1 “ L2 . De l’équation (3.14), on tire alors U1 “ U2 .
L-1
Exercice 3.1.7
Montrer que si A inversible admet une factorisation LU alors toutes ses sous-matrices principales
3.1.4 Factorisation LU
sont inversibles.
Remarque 3.8 Si la matrice A P Mn pCq est inversible et si ses sous-matrices principales ne sont pas
toutes inversibles, il est possible par des permutations préalables de lignes de la matrice de se ramener à
3. Résolution de systèmes linéaires
Soit A P Mn pCq une matrice inversible. Il existe une matrice P, produit de matrices de permuta-
tion, une matrice L P Mn pCq triangulaire inférieure à diagonale unité et une matrice U P Mn pCq
triangulaire supérieure telles ques
PA “ LU. (3.15)
3.1. Méthodes directes
Corollaire 3.10:
Si A P Mn pCq est une matrice hermitienne définie positive alors elle admet une unique factorisation
LU.
Preuve. (indication) Si la matrice A est hermitienne définie positive alors toutes ses sous-matrices prin-
cipales sont définies positives et donc inversibles.
x “ b.
Ax (3.16)
est équivalent à
Trouver x P Kn solution de
x“y
Ux (3.17)
avec y P K solution de
n
Lyy “ b . (3.18)
Ceci permet donc de découper le problème initial en trois sous-problèmes plus simples. De plus,
ceux-ci peuvent se traiter de manière indépendante. On obtient alors l’algorithme suivant
Algorithme 3.9 Fonction RSLFactLU permettant de résoudre, par une factorisation LU, le système
linéaire Ax
x “ b où A une matrice de Mn pRq définie positive et b P Rn .
Données : A : matrice de Mn pRq dont les sous-matrices
principales sont inversibles définie positive,
b : vecteur de Rn .
Résultat : x : vecteur de Rn .
1: Fonction x Ð RSLFactLU ( A, b )
2: rL, Us Ð FactLUpAq Ź Factorisation LU
3: y Ð RSLTriInfpL, b q Ź Résolution du système Lyy “ b
4: x Ð RSLTriSuppU, y q Ź Résolution du système Ux x“y
5: Fin Fonction
Il nous faut donc écrire la fonction FactLU (les deux fonctions RSLTriInf et RSLTriSup ayant
3.1.4 Factorisation LU
déjà été écrites).
A “ LU (3.19)
c’est à dire
¨ ˛¨ ˛
¨ ˛ 1 0 ... 0 U1,1 ... ... Un,1
A1,1 ... A1,n ˚ .. .. .. ‹ ˚ .. .. ‹
˚ .. .. ‹ ˚˚ L2,1 . . .‹ ˚
‹˚ 0 . . ‹
3.1.Méthodes directes
‹ (3.20)
˝ . . . . . ‚“ ˚ . .. ‹˚ . .. .. .. ‹ .
˝ .. . 0‚˝ .. . . . ‚
An,1 ... An,n
Ln,1 ... Ln,n´1 1 0 ... 0 Un,n
Pour déterminer les matrices L et U, on remarque que la 1ère ligne de L est déjà déterminée. On peut
alors l’utiliser pour calculer la première ligne de U : @j P v1, nw
n
ÿ
A1,j “ L1,k Uk,j
k“1
“ L1,1 U1,j car L triangulaire inférieure
“ U1,j
On a donc
On peut démontrer, de part les hypothèses sur la matrice A, que U1,1 ‰ 0 et alors
La première ligne de U et la première colonne de L sont donc déterminées par les formules (3.21) et
(3.22).
Par récurrence, on suppose connues les i ´ 1 premières lignes de U et les i ´ 1 premières colonnes de
L. On va montrer que l’on peux expliciter la i-ème ligne de U et la i-ème colonne de L.
En effet, @j P vi, nw, on a
n
ÿ
Ai,j “ Li,k Uk,j
k“1
i´1
ÿ n
ÿ
“ Li,k Uk,j ` Li,i Ui,j ` Li,k Uk,j
k“1 k“i`1
i´1
ÿ
“ Li,k Uk,j ` Li,i Ui,j car L triangulaire inférieure
k“1
ři´1
Dans l’expression k“1 Li,k Uk,j tous les termes sont connus (hypothèse de récurrence) et Li,i “ 1. On
en déduit,
" ři´1
Ai,j ´ Li,k Uk,j , @j P vi, nw.
Pour i allant de 1 à n : Ui,j “ (3.23)
3.1.4 Factorisation LU
k“1
0, @j P v1, i ´ 1w.
n
ÿ
Aj,i “ Lj,k Uk,i
k“1
i´1
ÿ n
ÿ
“ Lj,k Uk,i ` Lj,i Ui,i ` Lj,k Uk,i
k“1 k“i`1
i´1
ÿ
“ Lj,k Uk,i ` Lj,i Ui,i car U triangulaire supérieure
k“1
3.1. Méthodes directes
i´1
ÿ
Dans l’expression Lj,k Uk,i tous les termes sont connus (hypothèse de récurrence). De plus Ui,i est
k“1
donné par (3.23) et on peut démontrer, de part les hypothèses sur la matrice A, que Ui,i ‰ 0. On a alors
$
’
’ 0, @j P v1, i ´ 1w.
’
& 1,
˜ ¸ j“i
Pour i allant de 1 à n : Lj,i “ i´1
ÿ (3.24)
’
’ 1
% Ui,i Aj,i ´
’ Lj,k Uk,i , @j P vi ` 1, nw,
k“1
On écrit en détail les raffinements successifs permettant d’aboutir à l’algorithme final de telle sorte
que le passage entre deux raffinements successifs soit le plus compréhensible possible.
8: Pour j Ð 1 à i ´ 1 faire
9: Lj,i Ð 0
10: Fin Pour
11: Li,i Ð 1
12: Pour j Ð i `˜1 à n faire ¸
i´1
ÿ
1
13: Lj,i Ð Ui,i Aj,i ´ Lj,k Uk,i
k“1
14: Fin Pour
3.1.4 Factorisation LU
3. Résolution de systèmes linéaires
Algorithme 3.10 R2 Algorithme 3.10 R3
3.1.Méthodes directes
1: Pour i Ð 1 à n faire 1: Pour i Ð 1 à n faire
2: Pour j Ð 1 à i ´ 1 faire 2: Pour j Ð 1 à i ´ 1 faire
3: U pi, jq Ð 0 3: U pi, jq Ð 0
4: Fin Pour 4: Fin Pour
5: Pour j Ð i à n faire 5: Pour j Ð i à n faire
i´1
i´1
ÿ
6: Ui,j Ð Ai,j ´ Li,k Uk,j ÿ
6: S1 Ð Li,k Uk,j
k“1
k“1
7: Fin Pour 7: Ui,j Ð Ai,j ´ S1
8: Pour j Ð 1 à i ´ 1 faire
9: Lj,i Ð 0 8: Fin Pour
10: Fin Pour 9: Pour j Ð 1 à i ´ 1 faire
11: Li,i Ð 1 10: Lj,i Ð 0
12: Pour j Ð i ` 1 à n faire 11: Fin Pour
Li,i Ð 1
˜ ¸
i´1
ÿ 12:
1
13: Lj,i Ð Ui,i Aj,i ´ Lj,k Uk,i 13: Pour j Ð i ` 1 à n faire
k“1
i´1
14: Fin Pour ÿ
15: Fin Pour 14: S2 Ð Lj,k Uk,i
k“1
1
15: Lj,i Ð pAj,i ´ S2 q .
Ui,i
16: Fin Pour
17: Fin Pour
L’algorithme peut être amélioré, pour gagner en lisibilité... En effet, il est possible d’initialiser la
matrice U par la matrice nulle et la matrice L par la matrice identitée, ce qui permet alors de supprimer
les boucles U pi, jq Ð 0 et Lpj, iq Ð 0 ainsi que la commande Lpi, iq Ð 1. On obtient alors l’algorithme
final
Algorithme 3.10 Fonction FactLU permet de calculer les matrices L et U dites matrice de factorisation
LU associée à la matrice A, telle que
A “ LU
Données : A : matrice de Mn pKq dont les sous-matrices principales
sont inversibles.
Résultat : L : matrice de Mn pKq triangulaire inférieure
avec Li,i “ 1, @i P v1, nw
U : matrice de Mn pKq triangulaire supérieure.
3.1.4 Factorisation LU
17: Lpj, iq Ð pAj,i ´ S2 q {U pi, iq.
18: Fin Pour
19: Fin Pour
20: Fin Fonction
3.1.Méthodes directes
Algorithme 3.11 Fonction FactLUligU permet de calculer la ligne Algorithme 3.12 Fonction FactLUcolL permet de calculer la
i de U à partir de (3.23) colonne i de L à partir de (3.24)
Données : A : matrice de Mn pKq dont les Données : A : matrice de Mn pKq dont les
sous-matrices principales sont inversibles. sous-matrices principales sont inversibles.
L : matrice de Mn pKq dont les i ´ 1 L : matrice de Mn pKq dont les i ´ 1
premières colonnes ont été calculées premières colonnes ont été calculées
U : matrice de Mn pKq dont les i ´ 1 U : matrice de Mn pKq dont les i
premières lignes ont été calculées premières lignes ont été calculées
Résultat : U : matrice de Mn pKq dont les i Résultat : L : matrice de Mn pKq dont les i
premières lignes ont été calculées premières colonnes ont été calculées
On a alors
On a alors
A “ LU “ LDD-1 U “ LDR.
3.1.5 Factorisation LDL˚
A˚ “ A ðñ R˚ D˚ L˚ “ LDR
Ce qui donne
3. Résolution de systèmes linéaires
A “ R˚ pD˚ L˚ q “ LpDRq
et donc par unicité de la factorisation LU on a R˚ “ L et D˚ L˚ “ DR. On obtient alors
R˚ “ L et D˚ “ D
et on a le théorème suivant
Soit A P Mn pCq une matrice hermitienne inversible admettant une factorisation LU. Alors A s’écrit
sous la forme
A “ LDL˚ (3.25)
où D “ diag U est une matrice à coefficients réels.
Corollaire 3.13:
Une matrice A P Mn pCq admet une factorisation LDL˚ avec L P Mn pCq matrice triangulaire
inférieure à diagonale unité et D P Mn pRq matrice diagonale à coefficients diagonaux strictement
positifs si et seulement si la matrice A est hermitienne définie positive.
Preuve. ùñ Soit A P Mn pCq admettant une factorisation LDL˚ avec L P Mn pCq matrice triangulaire
inférieure à diagonale unité et D P Mn pRq matrice diagonale à coeffcients diagonaux strictement
positifs.
La matrice A est alors hermitienne car
˚ ˚
A˚ “ pLDL˚ q “ L˚ D˚ L˚ “ LDL˚ .
De plus @x
x P Cn zt0u on a
x, x y “ xLDL˚x , x y “ xDL˚x , L˚x y
xAx
On note tee1 , ¨ ¨ ¨ , e n u, la base canonique de Cn et on rappelle que @i P v1, nw, xDeei , e i y “ Di,i . Soit
-1
i P v1, nw. En choisissant x “ pL˚ q e i ‰ 0, on obtient alors
Definition 3.14
Une factorisation régulière de Cholesky d’une matrice A P Mn pCq est une factorisation A “
3.1.Méthodes directes
Preuve. ùñ Soit A P Mn pCq admettant une factorisation régulière de Cholesky A “ BB˚ avec B est
une matrice triangulaire inférieure inversible.
La matrice A est hermitienne car
˚ ˚
A˚ “ pBB˚ q “ pB˚ q B˚ “ BB˚ “ A.
Soit x P Cn zt0u, on a
2
x, x y “ xBB˚x , x y “ xB˚x , B˚x y “ }B˚x } ą 0
xAx
car B˚x ‰ 0 (B˚ inversible et x ‰ 0). Donc la matrice A est bien hermitienne définie positive.
A “ LDL˚ .
a
On note H P Mn pRq une matrice diagonale inversible vérifiant H2 “ D (i.e. Hi,i “ ˘ Di,i ‰ 0,
@i P v1, nw). On a alors
˚
A “ LHHL˚ “ pLHqpLHq
En posant B “ LH, la matrice B est bien triangulaire inférieure inversible car produit d’une matrice
triangulaire inférieure inversible par une matrice diagonale inversible et on a A “ BB˚ .
Montrons qu’une factorisation positive de Cholesky est unique.
Soient B1 et B2 deux factorisations positives de la matrice A, on a donc
A “ B1 B˚1 “ B2 B˚2 .
˚ -1
En multipliant à gauche par B-1
2 et à droite par pB1 q cette équation on obtient
˚ ˚ -1 ˚ ˚
B-1
2 B1 “ B2 pB1 q “ B˚2 pB-1 -1
1 q “ pB1 B2 q
En notant G “ B-1
2 B1 , on tire de l’équation précédente
˚
G “ pG-1 q . (3.26)
On déduit de la (voir Proposition B.46, page 207), que l’inverse d’une matrice triangulaire inférieure à
coefficients diagonaux réels strictement positifs est aussi une matrice triangulaire inférieure à coefficients
diagonaux réels strictement positifs. De la (voir Proposition B.45, page 207), on obtient que le produit
de matrices triangulaires inférieures à coefficients diagonaux réels strictement positifs reste triangulaire
inférieure à coefficients diagonaux réels strictement positifs, on en déduit que les matrices G “ B-1 2 B1 et
G-1 “ B-1 B
1 2 sont triangulaires inférieures à coefficients diagonaux réels strictement positifs. Or l’équation
˚
(3.26) identifie la matrice triangulaire inférieure G à la matrice triangulaire supérieure pG-1 q : ce sont
3.1.6 Factorisation de Cholesky
˚
donc des matrices diagonales à coefficients diagonaux réels strictement positifs et on a alors pG-1 q “ G-1 .
De l’équation (3.26), on obtient alors G “ G , c’est à dire G “ I “ B2 B1 et donc B1 “ B2 .
-1 -1
Pour commencer, avec la factorisation de Cholesky point de salut sans matrice hermitienne définie posi-
tive!
N’utiliser la factorisation de Cholesky pour la résolution d’un système linéaire que si la matrice
du système est hermitienne définie positive.
Soit A P Mn pCq une matrice hermitienne définie positive et b P Cn . Grâce au théorème 3.15, on
obtient :
3.1. Méthodes directes
x “ b.
Ax (3.27)
est équivalent à
Trouver x P Cn solution de
B˚x “ y (3.28)
avec B la matrice de factorisation positive de Cholesky de la ma-
trice A avec y P Cn solution de
Byy “ b . (3.29)
Algorithme 3.14 Algorithme de base permettant de résoudre, par une factorisation de Cholesky positive,
le système linéaire
x“b
Ax
où A une matrice de Mn pCq hermitienne définie positive et b P Cn .
Données : A : matrice de Mn pCq hermitienne définie positive,
b : vecteur de Cn .
Résultat : x : vecteur de Cn .
1: Trouver la factorisation positive de Cholesky B de la matrice A,
2: résoudre le système triangulaire inférieur Byy “ b ,
3: résoudre le système triangulaire supérieur B˚x “ y .
Ceci permet donc de découper le problème initial en trois sous-problèmes plus simples. De plus,
ceux-ci peuvent se traiter de manière indépendante.
Algorithme 3.15 Fonction RSLCholesky permettant de résoudre, par une factorisation de Cholesky
positive, le système linéaire
x“b
Ax
où A une matrice hermitienne de Mn pCq définie positive et b P Cn .
Données : A : matrice de Mn pCq hermitienne définie positive,
b : vecteur de Cn .
1: Fonction x Ð RSLCholesky ( A, b )
2: B Ð CholeskypAq Ź Factorisation positive de Cholesky
3: y Ð RSLTriInfpB, b q Ź Résolution du système Byy “ b
4: U Ð MatAdjointepBq Ź Calcul de la matrice adjointe de B
Il nous faut donc écrire la fonction Cholesky (les deux fonctions RSLTriInf et RSLTriSup ayant
déjà été écrites et la fonction MatAdjointe étant simple à écrire).
3.1.Méthodes directes
Soit A P Mn pCq une matrice hermitienne définie positive. D’après le Théorème 3.15, il existe une unique
matrice B P Mn pCq triangulaire inférieure avec bi,i P R`˚ , @i P v1, nw, telle que
A “ BB˚ (3.30)
c’est à dire
¨ ˛¨ ˛
¨ ˛ b1,1 0 ... 0 b1,1 ... ... bn,1
a1,1 ... a1,n ˚ .. .. .. .. ‹ ˚ .. .. ‹
˚ .. .. ‹ ˚˚ . . . . ‹ ˚
‹˚ 0 . . ‹‹
˝ . . . . . ‚“ ˚ . ‹˚ . .. ‹ . (3.31)
˝ .. .. .. ..
an,1 ... an,n . 0 ‚˝ .. . . . ‚
bn,1 ... ... bn,n 0 ... 0 bn,n
Pour déterminer la matrice B, on commence par calculer b1,1 (la 1ère ligne de B est donc déterminée)
ce qui nous permet de calculer la 1ère colonne de B.
Ensuite, on calcule b2,2 (la 2ème ligne de B est donc déterminée) ce qui nous permet de calculer la 2ème
colonne de B. Etc ...
On écrit en détail les raffinements successifs permettant d’aboutir à l’algorithme final de telle manière
que le passage entre deux raffinements successifs soit le plus simple possible.
On a donc ˜ ¸1{2
i´1
ÿ
bi,i “ ai,i ´ |bi,j |2 , @i P v1, nw, (3.32)
j“1
Comme les i ´ 1 premières colonnes de B ont déjà été calculées, bi,i est parfaitement déterminée par la
3.1.6 Factorisation de Cholesky
formule précédente.
ři´1
Remarque 3.16 Les hypothèses sur la matrice A permettent d’affirmer que, @i P v1, nw, ai,i ´ j“1 |bi,j |2 ą
0 et donc bi,i ą 0.
Pour calculer la ième colonne de B, il suffit de déterminer bj,i , @j P vi ` 1, nw. Pour celà on utilise
(3.30)
3. Résolution de systèmes linéaires
n
ÿ n
ÿ
aj,i “ bj,k pB˚ qk,i “ bj,k bi,k , @j P vi ` 1, nw
k“1 k“1
Comme L est triangulaire inférieure on obtient
i
ÿ i´1
ÿ
aj,i “ bj,k bi,k “ bj,k bi,k ` bj,i bi,i , @j P vi ` 1, nw
k“1 k“1
Or bi,i ą 0 vient d’être calculé et les i ´ 1 premières colonnes de B ont déjà été calculées, ce qui donne
˜ ¸
i´1
ÿ
1
bj,i “ aj,i ´ bj,k bi,k , @j P vi ` 1, nw (3.33)
bi,i
3.1. Méthodes directes
k“1
bj,i “ 0, @j P v1, i ´ 1w. (3.34)
Avec (3.32) et (3.33), on a
9: Fin Pour
3.1.Méthodes directes
k“1 10: Pour j Ð i ` 1 à n faire
1
9: bj,i Ð paj,i ´ S2 q . 11: S2 Ð 0
bi,i
10: Fin Pour 12: Pour k Ð 1 à i ´ 1 faire
11: Fin Pour 13: S2 Ð S2 ` bj,k bi,k
14: Fin Pour
1
15: bj,i Ð paj,i ´ S2 q .
bi,i
16: Fin Pour
17: Fin Pour
Algorithme 3.16 Fonction Cholesky permettant de calculer la matrice B, dites matrice de factorisation
positive de Cholesky associée à la matrice A, telle que A “ BB˚ .
Données : A : matrice de Mn pCq hermitienne définie positive.
Résultat : B : matrice de Mn pCq triangulaire inférieure
avec Bpi, iq ą 0, @i P v1, nw
1: Fonction B Ð Cholesky ( A )
2: Pour i Ð 1 à n faire
3: S1 Ð 0
4: Pour j Ð 1 à i ´ 1 faire
5: S1 Ð S1 ` |Bpi, jq|2
6: Fin Pour
7: Bpi, iq Ð sqrtpApi, iq ´ S1 q
8: Pour j Ð 1 à i ´ 1 faire
9: Bpj, iq Ð 0
10: Fin Pour
11: Pour j Ð i ` 1 à n faire
12: S2 Ð 0
13: Pour k Ð 1 à i ´ 1 faire
14: S2 Ð S2 ` Bpj, kq ˚ Bpi, kq
15: Fin Pour
16: Bpj, iq Ð pApj, iq ´ S2 q{Bpi, iq.
17: Fin Pour
18: Fin Pour
19: Fin Fonction
3.1.7 Factorisation QR
3.1.7 Factorisation QR
3. Résolution de systèmes linéaires
La tranformation de Householder
Propriété 3.18
H˚ H “ HH “ pI ´ 2u
uu ˚ qpI ´ 2u
uu ˚ q
˚
“ I ´ 4u
uu ` 4u uu uu ˚ .
˚
Or on a u ˚u “ }u
u}2 “ 1 par hypothèse et donc
H˚ H “ I ´ 4u
uu ˚ ` 4u u˚u qu
upu u˚ “ I.
Propriété 3.19
def
Soient x P Kn et u P Kn , }u
u}2 “ 1. On note x ∥ “ proju px u, x y u et x K “ x ´ x ∥ . On a alors
xq “ xu
uqpx
Hpu xK ` x ∥ q “ x K ´ x ∥ . (3.36)
et
x “ x , si xx
uqx
Hpu x, u y “ 0. (3.37)
Théorème 3.20
Soient a , b deux vecteurs non colinéaires de Cn avec }bb}2 “ 1. Soit α P C tel que |α| “ }a
a}2 et
3.1.7 Factorisation QR
arg α “ ´ arg xaa, b y rπs. On a alors
ˆ ˙
a ´ αbb
H a “ αbb. (3.38)
}a
a ´ αbb}2
Exercice 3.1.8
3.1.Méthodes directes
Q. 1 1. Montrer que si α vérifie (3.39) alors |α| “ }a
a}2 .
3. En déduire que
ˆ ˙1{2
1 xa
a, a y ´ α xa
a, b y
u“ pa
a ´ αbbq, avec λ “ ˘ (3.41)
2λ 2
Q. 2 1. On a
uqa
Hpu uu ˚ qa
a “ αbb ðñ pI ´ 2u a “ αbb
ðñ a ´ 2u u˚a q “ αbb
upu
et donc
a ´ 2 xu
u, a y u “ αbb (3.43)
En effectuant le produit scalaire avec a de cette dernière équation, on obtient
xa
a, ay ´ 2 xu
u, ay xa
a, uy “ α xa
a, by
ce qui prouve (3.40).
2. On a montré en Q.1 que α xa
a, b y P R et donc xa a, b y P R. Il reste donc à montrer que
a, a y ´ α xa
xa
a, a y ´ α xa
a, b y ą 0.
‚ Si arg α “ ´ argpxaa, b yq`π r2πs, alors de (3.42) on obtient α xa a, b y ď 0 et donc xa
a, a y´α xa
a, b y ě
}aa}2 ą 0 car a ‰ 0.
‚ Si arg α “ ´ argpxaa, b yq r2πs, alors de (3.42) on obtient α xa a, b y ě 0.
Comme les vecteurs a et b ne sont pas colinéaires, on a inégalité stricte dans Cauchy-Schwarz
:
| xa
a, b y | ă }a
a}2 }bb}2 “ }a
a}2 .
3.1.7 Factorisation QR
On obtient donc
2
0 ď α xa
a, b y ď |α|| xa
a, b y | ă |α| }a
a}2 “ }a
a}2
Attention, dans ce cas xa a, b y peut-être très petit.
a, a y ´ α xa
3. Résolution de systèmes linéaires
2
“ 2 }a a, b y car α xa
a}2 ´ 2α xa a, b y “ pα xa
a, b yq “ α xbb, a y P R
De plus
4|λ|2 “ 2pxa
a, a y ´ α xbb, a yq P R
2
a}2 ´ 2α xbb, a y
“ 2 }a
˛
Exercice 3.1.9
Correction Exercice 3.1.9 Soient a et b deux vecteurs non nuls et non colinéaires de Cn .
3.1.7 Factorisation QR
Q. 2 1: n Ð 100
2: a Ð vecrandpnq
3: b Ð vecrandpnq
Q. 3 1: n Ð 100
2: a Ð vecrandpnq
3: b Ð a ` 1e ´ 6 ˚ vecrandpnq
4: b Ð b {normpb b, 2q
5: rH1 , α1 s Ð Householderpa
a, b , 1q
3.1.Méthodes directes
6: rH0 , α0 s Ð Householderpa
a, b , 0q
7: error0 Ð normpH0 ˚ a ´ α0 ˚ b , 2q{p1 ` abspα0 qq
8: error1 Ð normpH1 ˚ a ´ α1 ˚ b , 2q{p1 ` abspα1 qq
Si l’on souhaite calculer le produit matrice-vecteur Hpu x, il n’est pas nécessaire de calculer
uqx
explicitement la matrice Hpuuq. En effet, on pose v “ 2λuu “ a ´ αbb et β “ 2λ2 “ }a}22 ´ α xa a, b y ą 0.
On choisi α de manière à maximiser β pour éviter une division par un nombre trop petit. On prend
donc
α “ }a}2 eıpπ´argpxaa,bbyqq
On obtient alors
1 ˚ xvv , xy
uqx
Hpu x“x´ vv x “ x ´ v. (3.44)
β β
Corollaire 3.21
10 -9
10 -10
δ=1
10 -11 δ=0
||Ha- α b|| 2 /| α|
10 -12
10 -13
10 -14
10 -15
10 -16
10 2 10 3 10 4
n
a}2 eıθe 1
a ˘ }a
u˘ “
}a a}2 eıθe 1 }
a ˘ }a
3. Résolution de systèmes linéaires
Alors
u˘ qa
Hpu a}2 eıθe 1
a “ ¯ }a (3.45)
où e 1 désigne le premier vecteur de la base canonique de Cn .
Sur le même principe que l’écriture algébrique de la méthode de Gauss, nous allons transformer la
matrice A P Mn pKq en une matrice triangulaire supérieure à l’aide de matrices de Householder. On a le
théorème
Théorème 3.22
Soit A P Mn pCq une matrice. Il existe une matrice unitaire Q P Mn pCq produit d’au plus n ´ 1
matrices de Householder et une matrice triangulaire supérieure R P Mn pCq telles que
A “ QR. (3.46)
Si A est réelle alors Q et R sont aussi réelles et l’on peut choisir Q de telle sorte que les coefficients
diagonaux de R soient positifs. De plus, si A est inversible alors la factorisation est unique.
Exercice 3.1.10
2. On note u P Km`n , le vecteur défini par ui “ 0, @i P v1, mw et um`i “ ui , @i P v1, nw. Montrer
que ˆ ˙
B1,1 B1,2
uqB “
Hpu .
O HS
Soient k P v0, n ´ 1w et Arks P Mn pKq la matrice bloc définie par
˜ ¸
Rrks Frks
3.1.7 Factorisation QR
rks
A “
O Arks
où Rrks est une matrice triangulaire supérieure d’ordre k et Arks une matrice d’ordre n ´ k.
3.1.Méthodes directes
strictement positifs, est unique.
Q. 1 1. D’après le (voir Corollaire 3.21, page 91) avec a “ s , en posant α “ ˘ }ss}2 eı arg s1 et
s ´ αeen1
u“
}ss ´ αeen1 }
on obtient Hpu
uq “ αeen1 .
On pose H “ Hpu uq. On a alors sous forme bloc
¨ ˛
¨ ˛ ˘α ‚ ¨¨¨ ‚
‚ ¨¨¨ ‚ ˚ 0
˚ ‚ ¨¨¨ ‚ ‹
HS “ H˝ s .. .. ‹ ˚ ‹
. . ‚“ ˚
˝ ... .. .. ‹
. . ‚
‚ ¨¨¨ ‚
0 ‚ ¨¨¨ ‚
ˆ ˙
0m
2. On a u “ et
u
ˆ ˙ ˆ ˙
Im Om,n 0m ` ˚ ˘
Hpu uu ˚ “
uq “ I ´ 2u ´2 0m u˚
On,m In u
ˆ ˙ ˆ ˙
Im Om,n Om Om,n
“ ´2
On,m In On,m uu ˚
ˆ ˙ ˆ ˙
Im Om,n Im Om,n
“ “
On,m In ´ 2uuu ˚ On,m H
Ce qui donne ˆ ˙ˆ ˙ ˆ ˙
Im Om,n B1,1 B1,2 B1,1 B1,2
uqB “
Hpu “ .
On,m H O S O HS
˙ ˆ
0k
rks
Q. 2 1. On note s P K le premier vecteur colonne de A . et u “
n´k
. D’après la question
s
précédente si s ‰ 0 et s non colinéaire à e n´k
1 premier vecteur de la base canonique de Kn´k alors
rk`1s uq et α P K˚ tels que
il existe une matrice de Householder H “ Hpu
¨ ˛
Rrks Frks
˚ ¨ ˛ ‹
˚ ‹
˚ ˚ ‹ ‹
˚ ˚ ‹ ‹
˚ ˚ ‹ ‹ ˜ ¸
˚ ˚ ‹ ‹
˚ ˚ ‹ ‹ R rk`1s
F rk`1s
A “˚
rk`1s def rk`1s rks
“H ‹ ‹“
3.1.7 Factorisation QR
A ˚ O ˚
˚ ˚ ˘α ‚ ¨ ¨ ¨ ‚ ‹ ‹ O Ark`1s
˚ ˚ ‹ ‹
‹
˚ ˚ 0 ‚ ¨¨¨ ‚ ‹ ‹
˚ ˚ ‹
˚ ˚ . .. .. ‹ ‹
‹
˝ ˝ .. . . ‚‚
0 ‚ ¨¨¨ ‚
3. Résolution de systèmes linéaires
On peut remarquer que si s “ 0 ou s colinéaire à e 1n´k alors Arks est déjà sous la forme Ark`1s et
donc Hrk`1s “ I.
2. il suffit d’appliquer itérativement le résultat précédent n ´ 1 fois en posant Ar0s “ A et Ark`1s “
Hrk`1s Arks où Hrk`1s est soit une matrice de Householder soit la matrice identité. Par construction
la matrice Arn´1s est triangulaire supérieure et l’on a
On pose H “ Hrn´1s ˆ ¨ ¨ ¨ ˆ Hr1s et R “ Arn´1s . La matrice H est unitaire car produit de matrices
unitaires. On note Q “ H˚ On a
Q “ Hr1s ˆ ¨ ¨ ¨ ˆ Hrn´1s
car les matrices de Householder et matrice identité sont unitaires et hermitiennes.
3. Si A est réelle alors par construction Q et R sont réelles. Les coefficients diagonaux peuvent alors
être choisi positif lors de la construction de chaque matrice de Householder.
4. Pour montrer l’unicité d’une telle factorisation, on note Q1 , Q2 , deux matrices orthogonales et R1 ,
R2 , deux matrices triangulaires à coefficients diagonaux positifs telles que
A “ Q1 R1 “ Q2 R2 .
Comme A est inversible les coefficients diagonaux de R1 et R2 sont strictement positifs. On a alors
I “ AA-1 “ Q1 R1 R-1 -1
2 Q2
et donc
def
Q-1 -1
1 Q2 “ R1 R2 “ T.
La matrice T est donc orthogonal. De plus T “ R1 R-12 est une matrice triangulaire supérieure à coef-
ficients diagonaux strictement positifs puisque produit de triangulaire supérieure à coefficients diag-
onaux strictement positifs. La matrice I étant symétrique définie positive, d’après le Théorème 3.15
(factorisation positive de Cholesky) il existe une unique matrice L triangulaire inférieure à coeffi-
cients diagonaux strictement positifs telle que LLt “ I. Cette matrice L est évidemment la matrice
identité. On en déduit que T “ Lt “ I et donc Q1 “ Q2 et R1 “ R2 .
˛
3.1.7 Factorisation QR
Résultat : Q : matrice unitaire de Mn pKq.
R : matrice triangulaire supérieure de Mn pKq.
On rappelle la technique utilisée dans la correction de l’exercice 3.1.10 pour déterminer l’ensemble des
où Hrk`1s est soit une matrice de Householder soit la matrice identité. Plus précisement, on note
ˆ s P˙ Kn´k
0 k
le vecteur composé des n ´ k dernières composantes de la k ` 1-ème colonne de Arks et a “ .
s
3.1.Méthodes directes
Hrk`1s “ I.
En notant e nk`1 le k ` 1-ème vecteur de la base canonique de Kn , cette matrice peut-être calculée
avec la fonction Householder par
rHrk`1s , αs Ð Householderpa
a, e nk`1 , 1q
‚ sinon Hrk`1s “ I.
On a vu que dans ce cas Arn´1s est triangulaire supérieure. On pose H “ Hrn´1s ˆ ¨ ¨ ¨ ˆ Hr1s qui est une
matrice unitaire. On a alors R “ Arn´1s “ HA et Q “ H˚ .
8: RÐH˚A Ź ou R Ð Arn´1s
9: Q Ð H˚
1: HÐI 1: HÐI
2: Pour k Ð 0 à n ´ 2 faire 2: Pour k Ð 0 à n ´ 2 faire
3: Calculer Hrk`1s à partir de Arks
3: a Ð r00k ; Arks pk ` 1 : n, k ` 1qs
4: Ark`1s Ð Hrk`1s ˚ Arks
4: rHrk`1s , αs Ð Householderpa a, e nk`1 , 1q
5: H Ð Hrk`1s ˚ H
6: Fin Pour
Ark`1s Ð Hrk`1s ˚ Arks
3.2.1 Normes vectorielles
5:
7: R Ð Arn´1s
6: H Ð Hrk`1s H
8: Q Ð H˚
7: Fin Pour
8: R Ð Arn´1s
9: Q Ð H˚
3: RÐA
4: Pour k Ð 0 à n ´ 2 faire
5: a Ð r00k ; Rpk ` 1 : n, k ` 1qs
6: rS, αs Ð Householderpa a, e nk`1 , 1q
7: RÐS˚R
8: HÐS˚H
9: Fin Pour
10: Q Ð H˚
11: Fin Fonction
Q. 2
˛
Definition 3.23
Une norme sur un espace vectoriel V est une application }‚} : V Ñ R` qui vérifie les propriétés
suivantes
˛ }vv } “ 0 ðñ v “ 0,
˛ }αvv } “ |α| }vv } , @α P K, @vv P V,
u ` vv} ď }u
˛ }u u, vvq P V 2 (inégalité triangulaire).
u} ` }vv } , @ pu,
Une norme sur V est également appelée norme vectorielle . On appelle espace vectoriel
normé un espace vectoriel muni d’une norme.
1 1
Pour p ą 1 et p ` q “ 1, on a @x
x , y P Kn
˜ ¸1{p ˜ ¸1{q
n
ÿ n
ÿ n
ÿ
p q
|xi yi | ď |xi | |yi | x}p }yy }q .
“ }x (3.48)
i“1 i“1 i“1
Definition 3.27
1
Deux normes }‚} et }‚} , définies sur un même espace vectoriel V, sont équivalentes s’il exite
x}1 ď C }x
}x x} et }x x}1 pour tout x P V.
x} ď C 1 }x (3.49)
Proposition 3.28
Sur un espace vectoriel de dimension finie toutes les normes sont équivalentes.
Definition 3.29
Une norme matricielle sur Mn pKq est une application }‚} : Mn pKq Ñ R` vérifiant
1. }A} “ 0 ðñ A “ 0,
2. }αA} “ |α| }A}, @α P K, @A P Mn pKq,
3.2.2 Normes matricielles
Proposition 3.30
Etant donné une norme vectorielle }‚} sur Kn , l’application }‚}s : Mn pKq Ñ R` définie par
def }Avv }
(3.50)
3. Résolution de systèmes linéaires
}A}s “ sup
v PKn }vv }
v ‰0
est une norme matricielle, appelée norme matricielle subordonnée (à la norme vectorielle don-
née).
Elle vérifie
3.2. Normes vectorielles et normes matricielles
}A}s “ sup }Avv } “ sup }Avv } “ inf tα P R : }Avv } ď α }vv } , @vv P Kn u . (3.51)
v PKn v PKn
}v
v }ď1 }v
v }“1
}Au
u} “ }A}s }u
u} . (3.53)
def }Avv }
}A}s “ sup “ sup }Avv } “ sup }Avv }
v PKn }vv } v PB v PS
v ‰0
On a › ›
}Avv } › v ›
}A}s “ sup “ sup ››A › “ sup }Avv }
v PKn }vv } v PKn }vv } › v PS
v ‰0 v ‰0
Comme S Ă B on a aussi
sup }Avv } ě sup }Avv } . (3.55)
v PB v PS
On peut aussi remarquer que
sup }Avv } “ sup }Avv } (3.56)
v PB v PB
v ‰0
w
De plus, @w
w P Bzt0u, en posant u “ }w
w} P S. on a w “ }w
w } u et
}Aw
w } “ }w
w } }Au u} car }w
u} ď }Au w } ď 1.
Or on a
}Au
u} ď sup }Avv } .
v PS
et on obtient alors
sup }Aw
w } ď sup }Avv } .
w PB v PS
w ‰0
En utilisant (3.55) et (3.56), on en déduit
sup }Aw
w } “ sup }Au
u} .
w PB u PS
‚ Vérifions que l’application }‚}s est bien définie sur Mn pKq i.e. @A P Mn pKq, }A}s ă `8.
et donc
}Avv } ď }A}s }vv } , @vv P Kn zt0u.
‚ On a immédiatement
}Ivv } }vv }
}I}s “ sup “ sup “ 1.
v PK n }vv } v PK }v
n v}
v ‰0 v ‰0
1. }A}s “ 0 ðñ As “ O ?
ðù trivial.
ùñ Soit A P Mn pKq.
}Avv }
}A}s “ 0 “ sup ùñ }Avv } “ 0, @vv P Kn zt0u
v PK n }vv }
v ‰0
}A}s }Bvv }
ď sup car }Au
u} ď }A}s }u u P Kn
u} @u
v PKn }vv }
v ‰0
}Bvv }
ď }A}s sup “ }A}s }B}s .
v PKn }vv }
3.2. Normes vectorielles et normes matricielles
v ‰0
Théorème 3.31
Soit A P Mn pKq. On a
ÿn
def }Avv }1
}A}1 “ sup “ max |aij | (3.57)
v PKn }vv }1 jPv1,nw
i“1
v ‰0
def }Avv }2 a a
}A}2 “ sup “ ρ pA˚ Aq “ ρ pAA˚ q “ }A˚ }2 (3.58)
v PKn }vv }2
v ‰0
ÿn
def }Avv }8
}A}8 “ sup “ max |aij | (3.59)
v PKn }vv }8 iPv1,nw
j“1
v ‰0
Corollaire 3.32
Preuve. 1. Soit A P Mn pCq une matrice hermitienne. Elle est donc normale. D’après le théorème 3.2
(réduction des matrice) page 63, il existe une matrice unitaire U et une matrice diagonale D telles
que
A “ UDU˚ .
Les matrices A et D sont semblables: elles ont les mêmes valeurs propres et donc
ρpAq “ ρpDq.
De plus, comme A est hermitienne, ses valeurs propres sont réelles et donc D P Mn pRq. Comme la
norme 2 est invariante par transformation unitaire, on a
On obtient donc
1. Soit A une matrice carrée quelconque et }‚} une norme matricielle subordonnée ou non, quel-
conque. Alors
ρpAq ď }A} . (3.61)
2. Etant donné une matrice A et un nombre ε ą 0, il existe au moins une norme matricielle
subordonnée telle que
}A} ď ρpAq ` ε. (3.62)
u P Cn zt00u, et u “ λu
Au u.
}λu
u} “ |λ| }u
u} “ }Au
u} ď }A} }u
u}
‚ Si la norme est quelconque (non forcément subordonnée), l’inégalité suivante n’est plus vérifiée
}Au
u} ď }A} }u
u} .
et donc
uu ˚ q} “ }λpu
}Apu uu ˚ q} “ |λ| }u
uu ˚ } .
De plus on a
uu ˚ q} ď }A} }pu
}Apu uu ˚ q}
ce qui donne
uu˚ } ď }A} }pu
|λ| }u uu˚ q}
Comme la matrice B “ uu ˚ est non nulle car u non nul et
uu ˚ qu
pu u˚ qu
u “ u pu uq “ u xu
u, u y ‰ 0.
3.2.2 Normes matricielles
on obtient
|λ| ď }A}
et on en déduit alors
@λ P ρpAq, |λ| ď }A} .
2. voir [1], théorème 1.4-3 page 18-19.
3. Résolution de systèmes linéaires
Théorème 3.34
ÿ 2‚
a
}A}E “ ˝ |aij | “ tr pA˚ Aq, (3.63)
pi,jq“Pv1,nw2
pour toute matrice A “ paij q d’ordre n, est une norme matricielle non subordonnée (pour n ě 2),
invariante par transformation unitaire et qui vérifie
?
}A}2 ď }A}E ď n }A}2 , @A P Mn . (3.64)
?
De plus }I}E “ n.
Théorème 3.35
}B} ă 1.
}B} ě 1
Preuve. 1. Par l’absurde, on suppose la matrice I ` B singulière (non inversible). Alors 0 est une de
ses valeurs propres. On note p0, u q un élément propre de I ` B. On a donc
pI ` Bqu
u “ 0 ô Bu
u “ ´u u
ô p´1, u q élément propre de B
Ce qui donne › › › ›
› -1 › › -1 ›
›pI ` Bq › ´ }B} ›pI ` Bq › ď 1
}B} ě 1.
Definition 3.36
Soit V un espace vectoriel muni d’une norme }‚}, on dit qu’une suite pvv k q d’éléments de V converge
vers un élément v P V , si
lim }vv k ´ v } “ 0
kÑ8
et on écrit
v “ lim v k .
kÑ8
3. ρpBq ă 1,
Soit B une matrice carrée, et }‚} une norme matricielle quelconque. Alors
› ›1{k
lim ›Bk › “ ρpBq.
kÑ8
x“b
Ax ðñ x t “ p1, 1, 1, 1q
3. Résolution de systèmes linéaires
ˆ ˙
t 91 9 27 79
u “ pbb ` ∆b
Au ∆bq ðñ u “ ,´ , ,
50 25 20 100
« p1.8, ´0.36, 1.3, 0.79q
t
pA ` ∆Aqvv “ b ðñ v “ p´81, 137, ´34, 22q
ˆ ˙
18283543 31504261 3741501 5235241
pA ` ∆Aqyy “ pbb ` ∆b
∆bq ðñ yt “ ´ , ,´ ,
461600 461600 230800 461600
3.3. Conditionnement d’un système linéaire
Il est clair sur cet exemple que de petites perturbations sur les données peuvent entrainer des erreurs
importantes sur la solution exacte.
On dit que le système linéaire prédédent est mal conditionné ou qu’il a un mauvais condition-
nement car il est sujet à de fortes variations de la solution pour de petites perturbations des données.
A contrario, on dit qu’il est bien conditionné ou qu’il a un bon conditionnement si de petites
perturbations des données n’entrainent qu’une variation raisonnable de la solution.
Une nouvelle question : est-il possible de "mesurer" le conditionnement d’une matrice?
Définitions et résultats
Definition 3.39
Soit }.} une norme matricielle subordonnée, le conditionnement d’une matrice régulière A, associé
à cette norme, est le nombre › ›
condpAq “ }A} ›A-1 › .
Nous noterons condp pAq “ }A}p }A-1 }p .
Proposition 3.40
α
1 ›› -1 ›› › -1 ›
“ |α| }A} A “ }A} ›A ›
|α|
2. On a I “ AA-1 . Or pour toute norme subordonnée, on a }I} “ 1 et donc 1 “ }AA-1 } ď }A} }A-1 } “
condpAq.
3. Admis. Voir par exemple [7] Théorème 2 page 142-143.
Théorème 3.41
Théorème 3.42
x “ b et pA ` ∆Aq px
Ax x ` ∆x
∆xq “ b .
Supposons b ‰ 0 , alors on a
∆x
}∆x
∆x} }∆A}
ď condpAq .
}x
x ` ∆x
∆x} }A}
Preuve. On a
x “ b “ pA ` ∆Aq px
Ax x ` ∆x
∆xq “ Ax ∆x ` ∆A px
x ` A∆x x ` ∆x
∆xq
et donc
∆x ` ∆A px
A∆x ∆xq “ 0 ðñ ∆x “ ´A-1 ∆A px
x ` ∆x x ` ∆x
∆xq
On en déduit alors
› › › › › ›
∆x} “ ›A-1 ∆A px
∆x
}∆x ∆xq› ď ›A-1 › }∆A px
x ` ∆x ∆xq} ď ›A-1 › }∆A} }x
x ` ∆x x ` ∆x
∆x}
def condpAq
De plus, on a condpAq “ }A} }A-1 } et donc }A-1 } “ }A} ce qui donne
3.4.2 Présentation des méthodes usuelles
}∆A}
∆x
}∆x
∆x} ď condpAq }x
x ` ∆x
∆x} .
}A}
-1
Comme b ‰ 0, on a x ` ∆x “ pA ` ∆Aq b ‰ 0 et de l’inégalité précédente, on déduit alors
∆x
}∆x
∆x} }∆A}
ď condpAq .
}x
x ` ∆x
∆x} }A}
3. Résolution de systèmes linéaires
Remarque 3.43 1. Plus le conditionnement d’une matrice est proche de 1, meilleur il est.
2. Si une matrice A est mal conditionnée, il est possible de trouver une matrice P inversible tel que la
matrice P-1 A soit mieux conditionné... Résoudre Ax x “ b est alors équivalent à résoudre P-1 Axx“
P b . La matrice P est appelé préconditionneur. Le choix P “ A est idéal mais n’est pas réellement
-1
utilisable. Si A est une matrice dominante alors on peut utiliser le préconditionneur de Jacobi:
P “ diagpAq.
3.4.1 Principe
On souhaite résoudre le système linéaire Ax
x “ b par des méthodes itératives. Ces dernières consitent
en la détermination d’une matrice d’itération B et d’un vecteur c tels que la suite de vecteurs x rks
définie par
x rk`1s “ Bxxrks ` c , k ě 0, x r0s arbitraire
soit telle que limkÑ8 x rks “ x et x solution de Ax
x “ b . Bien évidemment les matrices B et les vecteurs c
dépendront de A et b .
Nous allons étudier plusieurs méthodes itératives et pour chacune d’entre elles nous expliciterons la
matrice d’itération B et le vecteur c associé.
On a alors
¨ ˛ ¨ ˛ ¨ ˛
¨¨¨
a1,10 0 0 ¨¨¨ ¨¨¨ 0 0 a1,2 ¨¨¨ a1,n
˚ .. .. .. ‹ ˚ .. .. ‹ ˚ .. .. .. .. ‹
˚ . . ‹ ˚ a . . ‹ ˚ . . ‹
˚ 0 . ‹ ˚ 2,1 ‹ ˚ . . ‹
A “ ˚ ‹`˚ ‹`˚ ‹
˚ .. .. .. ‹ ˚ .. .. .. .. ‹ ˚ .. .. ‹
˝ . . 0 . ‚ ˝ . . . . ‚ ˝ . . an´1,n ‚
0 0 an,n ¨¨¨ an,1 ¨ ¨ ¨ an,n´1 0 0 ¨¨¨ ¨¨¨ 0
¨ ˛
..
˚ . ´F‹
“ D´E´F“˚
˝ D ‹
‚ (3.67)
..
´E .
Méthode de Jacobi
Pour obtenir la méthode itérative de Jacobi, il suffit de mettre, dans la formule (3.4.2), l’itéré k ` 1 sur
le terme diagonale et l’itéré k sur les autres termes pour avoir
ce qui donne ˜ ¸
n
ÿ
rk`1s 1 rks
xi “ bi ´ aij xj @i P v1, nw (3.69)
aii j“1,j‰i
Méthode de Gauss-Seidel
Pour obtenir la méthode itérative de Jacobi, il suffit de mettre, dans la formule (3.4.2), l’itéré k ` 1 sur
la partie triangulaire inférieure et l’itéré k sur les autres termes pour avoir
3.4.Méthodes itératives
i´1
ÿ n
ÿ
rk`1s rk`1s rks
bi “ ai,j xj ` ai,i xi ` ai,j xj .
j“1 j“i`1
ce qui donne ˜ ¸
i´1
ÿ n
ÿ
pk`1q 1 rk`1s rks
xi “ bi ´ aij xj ´ aij xj @i P v1, nw (3.70)
aii j“1 j“i`1
Méthodes de relaxation
Ces méthodes sont basées sur un paramètre de relaxation w P R˚ et sont données par
rk`1s rk`1s rks
xi “ wxi ` p1 ´ wqxi
rk`1s
où xi est obtenu à partir de l’une des deux méthodes précédentes.
Avec la méthode de Jacobi
˜ ¸
ÿn
pk`1q w rks rks
xi “ bi ´ aij xj ` p1 ´ wqxi @i P v1, nw.
aii j“1,j‰i
Cette dernière méthode de relaxation, utilisant la méthode de Gauss-Seidel, est appelée méthode S.O.R.
(successive over relaxation)
Exercice 3.4.1
En écrivant A sous la forme A “ D ´ E ´ F, montrer que les méthodes itératives de Jacobi, Gauss-
Seidel et S.O.R. s’écrivent sous la forme x rk`1s “ Bx
xrks ` c , où l’on exprimera les matrices B et les
vecteurs c en fonction de D, E, F et b .
b “ Dx
x ´ Ex
x ´ Fx
x
i´1
ÿ n
ÿ
rk`1s rk`1s rks
bi “ ai,i xi ` ai,j xj ` ai,j xj .
j“1 j“i`1
-1 -1
La matrice d’itération de Gauss-Seidel est B “ pD ´ Eq F et le vecteur c “ pD ´ Eq b .
et matriciellement on obtient
ˆ ˙ ˆ ˙
D 1´w
´ E x rk`1s “ D ` F x rks ` b .
w w
`D ˘
Comme la matrice w ´ E est inversible (car triangulaire inférieure à éléments diagonaux non
nuls), on a
ˆ ˙-1 ˆ ˙ ˆ ˙-1
D 1´w D
x rk`1s “ ´E D ` F x rks ` ´E b
w w w
`D ˘-1 ` 1´w ˘ `D ˘-1
La matrice d’itération de S.O.R. est B “ w ´E w D ` F et le vecteur c “ w ´ E b.
Soit A une matrice régulière telle que tous ses éléments diagonaux soient non nuls. On note D “
diagpAq et E, F, les matrices à diagonales nulles respectivement triangulaire inférieure et supérieure
telles que A “ D ´ E ´ F. On pose L “ D-1 E et U “ D-1 F.
La matrice d’itération de la méthode de Jacobi, notée J, est donnée par
J “ D-1 pE ` Fq “ L ` U, (3.71)
et elle vérifie
ρpLw q ě |w ´ 1|. (3.73)
La matrice d’itération de Gauss-Seidel est L1 et elle correspond à
-1 -1
L1 “ pD ´ Eq F “ pI ´ Lq U. (3.74)
3.4.Méthodes itératives
Preuve. Les résultats découlent de l’Exercice 3.4.1 pour l’écriture en fonction des matrices D, E et F.
Pour l’écriture en fonction des matrices L et U seule l’équation (3.72) n’est pas forcément immédiate. On
a vu que
ˆ ˙-1 ˆ ˙
D 1´w
Lw “ ´E D`F
w w
et comme E “ DL et F “ DU on obtient
ˆ ˙-1 ˆ ˙
D 1´w
Lw “ ´ DL D ` DU
w w
ˆ ˙-1 ˆ ˙
1 1
“ DrI ´ wLs Drp1 ´ wqI ` wUs
w w
ˆ ˙-1 ˆ ˙
-1 1 1
“ pI ´ wLq D D pp1 ´ wqI ` wUq
w w
-1
“ pI ´ wLq pp1 ´ wqI ` wUq
Il reste à démontrer l’inégalité (3.73). La matrice L est triangulaire inférieure à diagonale nulle car elle
est le produit d’une matrice diagonale (et donc triangulaire inférieure) D-1 et d’une matrice triangulaire
inférieure E à diagonale nulle. De même la matrice U est triangulaire supérieure à diagonale nulle.
On sait que le déterminant d’une matrice est égale aux produits de ses valeurs propres comptées avec
leurs multiplicités. En notant n la dimension de la matrice Lw , et en notant λi pLw q ses n valeurs propres,
on a donc
źn
detpLw q “ λi pLw q.
i“1
Le rayon spectrale de Lw , noté ρpLw q, correspond au plus grand des modules des valeurs propres. On a
alors
ρpLw q “ max |λi pLw q| ě | detpLw q|1{n
iPv1,nw
De plus on a
´ ¯ ´ ¯
-1 -1
detpLw q “ det pI ´ wLq pp1 ´ wqI ` wUq “ det pI ´ wLq det ppp1 ´ wqI ` wUqq
La ´matrice I ´¯wL est triangulaire inférieure à diagonale unité donc son inverse aussi. On en déduit
-1
det pI ´ wLq “ 1. La matrice p1´wqI`wU est triangulaire supérieure avec tous ses éléments diagonaux
valant 1 ´ w et donc det ppp1 ´ wqI ` wUqq “ p1 ´ wqn . On a alors | detpLw q| “ |1 ´ w|n et
Théorème 3.45
Soit A une matrice régulière décomposée sous la forme A “ M ´ N avec M régulière. On pose
3. Résolution de systèmes linéaires
B “ M-1 N et c “ M-1b .
Preuve. Comme x̄
x “ A-1b (sans présupposer la convergence) on a Mx̄ x ` b et alors
x “ Nx̄
x “ M-1 Nx̄
x̄ x ` M-1b “ Bx̄
x `c
3.4. Méthodes itératives
On obtient donc
x ´ x rk`1s “ Bpx̄
x̄ x ´ x rks q
def
Or la suite x rks converge vers x̄ x ´ x rks converge vers 0 . On a
x si et seulement si la suite e rks “ x̄
D’après le Théoréme 3.37, page 103, on a limkÑ`8 Bke r0s “ 0, @eer0s P Kn si et seulement si ρpBq ă 1.
Corollaire 3.46
Soit A une matrice vérifiant ai,i ‰ 0 @i. Une condition nécessaire de convergence pour la méthode
S.O.R. est que 0 ă w ă 2.
Preuve. On a vu en (voir Proposition 3.44, page 109) que ρpLw q ě |w ´ 1|. Donc si ρpLw q ě 1, la
non-convergence est certaine d’après le Théoréme 3.37, page 103. Une condition nécessaire (mais non
suffisante) de convergence est que |w ´ 1| ă 1 i.e. w Ps0, 2r.
Théorème 3.47
Soit A une matrice à diagonale strictement dominante ou une matrice inversible à diagonale forte-
ment dominante alors
• la méthode de Jacobi est convergente,
• si w Ps0, 1s la méthode de Relaxation est convergente.
Théorème 3.48
Exercice 3.4.2
1. Montrer que
@ D @ D @ D
xx xy ´ xyy , Ayy y “ x , AM-1 Ax
x, Ax x ` M-1 Ax x ´ M-1 Ax
x, Ax x, AM-1 Ax
x (3.75)
et
x ´ y “ M-1 Ax
x. (3.76)
2. En déduire que
xx x ´ y q, pM˚ ` Nqpx
xy ´ xyy , Ayy y “ xpx
x, Ax x ´ y qy . (3.77)
3.4.Méthodes itératives
Q. 3 Montrer que si A est définie positive alors ρpBq ă 1.
Q. 2 1. On a y “ Bx
x avec B “ I ´ M-1 A ce qui donne
` ˘
x ´ y “ x ´ Bx x “ I ´ B x “ M-1 Ax
x.
L’équation (3.76) est donc démontrée. Pour prouver (3.75), on note que
y “ x ´ M-1 Ax
x
et donc
@ ` ˘D
xyy , Ayy y “ x ´ M-1 Axx, A x ´ M-1 Ax
x
@ D @ D @ D
“ xx xy ´ M-1 Ax
x, Ax x ´ x , AM-1 Ax
x, Ax x ` M-1 Ax
x, AM-1 Ax
x .
On abouti alors à
@ ` ˘ D @ D @ D @ D
x ´ y , M˚ ` N px
x ´ y q “ M-1 Ax x ` x , AM-1 Ax
x, Ax x ´ M-1 Ax
x, AM-1 Ax
x .
Q. 3 On veut démontrer que sous les hypothèses A hermitienne définie positive et M˚ ` N (hermitienne)
définie positive on a ρpBq ă 1, c’est à dire que pour tout élément propre pλ, u q de B alors |λ| ă 1.
Soit pλ, u q P C ˆ Cn zt0u un élément propre de B. On a Bu u “ λuu. En prenant x “ u dans Q.2, on a
y “ Buu “ λu u et donc x ´ y “ p1 ´ λquu. De (3.77) on obtient
xu uy ´ xλu
u, Au u, pM˚ ` Nqpp1 ´ λqu
uy “ xp1 ´ λqu
u, λAu uqy
c’est à dire
p1 ´ |λ|2 q xu
u, Au u, pM˚ ` Nqu
uy “ |1 ´ λ|2 xu uy . (3.78)
u, pM˚ ` Nqu
xu uy ą 0
Comme A hermitienne définie positive et u ‰ 0, on déduit de (3.78) que 1 ´ |λ|2 ě 0 et donc |λ| ď 1.
On va démontrer par l’absurde que |λ| ‰ 1. On suppose |λ| “ 1, de (3.78) on déduit
u, pM˚ ` Nqu
|1 ´ λ|2 xu uy “ 0.
Comme par hypothèse, la matrice M˚ `N (hermitienne) est définie positive et u ‰ 0, on obtient |1´λ|2 “ 0,
c’est à dire λ “ 1. Or dans ce cas on a
y “ Bx
x “ Bu
u “ λu
u “ u.
Comme u ‰ 0, et que M-1 A est inversible, l’équation ci-dessus est impossible, donc |λ| ‰ 1.
Q. 4 On veut démontrer par l’absurde que, sous les hypothèses M˚ ` N (hermitienne) définie positive, A
hermitienne inversible et ρpBq ă 1, on a A définie positive.
On suppose que A n’est pas définie positive. Alors il existe x P Cn zt0u tel que xx xy R R`˚ .
x, Ax
Pour une matrice quelconque que xx , Ax y P C, or comme A est hermitienne on a xx , Ax
x x x xy P R. En effet,
par propriété du produit scalaire on a
xx
x, Axxy “ xA˚x , x y “ xAx
x, x y “ xx xy.
x, Ax
@ r0s D
On note x r0s “ x et α0 “ x , Ax xr0s le nombre réel négatif ou nul (α0 ď 0). On défini alors pour
les suites A E
x rks “ Bxxrk´1s et αk “ x rks , Ax xrks .
On a alors
x rks “ Bkx r0s , @k P N.
D’après le théorème du cours (Théorème B.72 page 195),
On a donc
lim x rks “ 0 et lim αk “ 0
kÑ`8 kÑ`8
La suite pαk qkPN est donc strictement décroissante de premier terme α0 ď 0: elle ne peut converger vers
0.
Montrons par récurrence forte que x rks ‰ 0, x rks ´ x rk´1s ‰ 0, et 0 ě αk´1 ą αk , k P N˚ .
‚ Initialisation : On a x r0s ‰ 0 et x r1s “ Bxxr0s .
On montre par l’absurde que x ‰ 0. Supposons x r1s “ 0, alors α1 “ 0 et x r0s ´ x r1s “ x r0s ‰ 0.
r1s
3.4.Méthodes itératives
α0 ´ α1 “ px xr0s ´ x r1s q, pM˚ ` Nqpx
xr0s ´ x r1s q ą 0
et contradiction avec α0 ď 0.
On montre ensuite par l’absurde que x r0s ‰ x r1s . Supposons x r1s “ x r0s . Par construction x r1s “
xr0s , et dans ce cas, comme x r0s ‰ 0, p1, x r0s q serait un élément propre de B: contradiction avec
Bx
ρpBq ă 1.
Comme x r0s ´ x r1s ‰ 0, on a
A E
α0 ´ α1 “ px xr0s ´ x r1s q, pM˚ ` Nqpxxr0s ´ x r1s q ą 0
et donc 0 ě α0 ą α1 .
‚ Hérédité : On suppose la propriété vraie jusqu’au rang k. On a alors x rks ‰ 0, x rk`1s “ Bx xrks et
αk ď 0.
On montre par l’absurde que x rk`1s ‰ 0. Supposons x rk`1s “ 0, alors αk`1 “ 0 et x rks ´ x rk`1s “
x rks ‰ 0. Comme M˚ ` N est hermitienne définie positive on obtient
A E
αk ´ αk`1 “ px xrks ´ x rk`1s q, pM˚ ` Nqpx
xrks ´ x rk`1s q ą 0
et contradiction avec αk ď 0.
On montre ensuite par l’absurde que x rks ‰ x rk`1s . Supposons x rk`1s “ x rks . Par construction
xrk`1s “ Bx
xrks , et dans ce cas, comme xrks ‰ 0, p1, xrks q serait un élément propre de B: contradiction
avec pBq ă 1.
ρ
Comme xrks ´ xrk`1s ‰ 0, on a
A E
αk ´ αk`1 “ px xrks ´ x rk`1s q, pM˚ ` Nqpxxrks ´ x rk`1s q ą 0
et donc 0 ě αk ą αk`1 .
Théorème 3.49
Soit A une matrice hermitienne définie positive, alors la méthode de relaxation converge si et seule-
ment si w Ps0, 2r.
3.4.4 Algorithmes
Nous allons écrire des algorithmes pour chacune des méthodes itératives proposées. L’objectif n’est pas
d’écrire des algorithmes "optimisés" mais de voir la méthodologie permettant la construction d’algorithmes
simples et fonctionnels.
3.4.4 Algorithmes
Principe de base
Les méthodes itératives pour la résolution d’un système linéaire Ax
x “ b s’écrivent sous la forme
x r0s P Kn et x rk`1s “ Bx
xrks ` c
3. Résolution de systèmes linéaires
La matrice d’itération B et le vecteur c sont construits de telle sorte que si la suite px xrks qkPN converge
vers x̄
x alors x̄
x est aussi solution du système linéaire Ax
x “ b.
Comme pour les méthodes de point fixe, La convergence de ces méthodes n’est pas assurée et si il y a
convergence le nombre d’itération nécessaire n’est (à priori) pas connu. C’est pourquoi algorithmiquement
on utilise une boucle Tantque. On défini alors un nombre maximum d’itérations au delà du quel
les calculs itératifs sont stoppés et une valeur ε ą 0 permettant d’arrêter les calculs lorsque x rks est
x. Pour être plus précis, on note r rks “ b ´ Ax
xrks le résidu. On a alors
3.4. Méthodes itératives
suffisament proche de x̄
et donc › rks ›
›e ›
ď ε condpAq
}x̄
x}
Pour éviter des soucis lorsque }bb} est proche de zéro, on peut utiliser comme critère d’arrêt de con-
vergence › rks ›
›r ›
ď ε.
}bb} ` 1
Comme vu avec les méthodes itératives de type point fixe (voir section 2.2.3, page 30), il n’est pas
forcément utile de stocker l’intégralité des termes de la suite x rks puisque seul le "dernier" nous intéresse.
On a alors L’Algorithme 3.19 correspondant à un algorithme itératif générique sans stockage des valeurs
intermédiaires.
Données :
A : matrice de Mn pKq ,
b : vecteur de Kn ,
x0 : vecteur initial de Kn ,
ε : la tolérence, ε P R` ,
kmax : nombre maximum d’itérations, kmax P N˚
Résultat :
x tol : un vecteur de Kn si convergence, sinon H
1: k Ð 0, x tol Ð H
2: x Ð x0 , r Ð b ´ Ax x,
3: tol Ð εp}bb} ` 1q
4: Tantque }rr } ą tol et k ď kmax faire
5: k Ðk`1
6: p Ðx Ź p contient le vecteur précédent
7: x Ð calcul de l’itérée suivante en fonction de p , A, b , ...
8: r Ð b ´ Ax x,
9: Fin Tantque
10: Si }rr } ď tol alors Ź Convergence
11: x tol Ð x
12: Fin Si
3.4.4 Algorithmes
Méthode de Jacobi
˜ ¸
n
ÿ
rk`1s 1 rks
xi “ bi ´ aij xj , @i P v1, nw.
aii j“1,j‰i
Cette formule donne explicitement les composantes du vecteur x rk`1s en fonction de la matrice A, et des
3.4.Méthodes itératives
vecteurs b et x rks . A partir de l’Algorithme 3.19, on va construire par raffinements successifs la RSLJacobi
donnée dans l’Algorithme 3.20.
1: k Ð 0, x tol Ð H 1: k Ð 0, x tol Ð H
2: x Ð x0 , r Ð b ´ Ax
x, 2: x Ð x0 , r Ð b ´ Ax
x,
3: tol Ð εp}bb} ` 1q 3: tol Ð εp}bb} ` 1q
4: Tantque }rr } ą tol et k ď kmax faire 4: Tantque }rr } ą tol et k ď kmax faire
5: k Ðk`1 5: k Ðk`1
6: p Ðx 6: p Ðx
7:
8: x Ð calcul par Jacobi 7: Pour i Ð 1˜à n faire ¸
n
9: r Ð b ´ Ax x, 1 ÿ
8: xi Ð bi ´ aij p j
10: Fin Tantque aii j“1,j‰i
11: Si }rr } ď tol alors Ź Convergence 9: Fin Pour
12: x tol Ð x
13: Fin Si 10: r Ð b ´ Ax x,
11: Fin Tantque
12: Si }rr } ď tol alors Ź Convergence
13: x tol Ð x
14: Fin Si
1: k Ð 0, x tol Ð H 1: k Ð 0, x tol Ð H
2: x Ð x 0 , r Ð b ´ Ax
x, 2: x Ð x 0 , r Ð b ´ Ax
x,
3: tol Ð εp}bb} ` 1q 3: tol Ð εp}bb} ` 1q
4: Tantque }rr } ą tol et k ď kmax faire 4: Tantque }rr } ą tol et k ď kmax faire
5: k Ðk`1 5: k Ðk`1
6: p Ðx 6: p Ðx
7: Pour i Ð 1 à n faire 7: Pour i Ð 1 à n faire
8:
SÐ0
˜ ¸
n 8:
1 ÿ
9: xi Ð bi ´ aij p j 9: Pour j Ð 1 à n pj ‰ iq faire
aii j“1,j‰i 10: S Ð S ` ai,j pj
10: Fin Pour 11: Fin Pour
11: r Ð b ´ Ax x, 1
12: xi Ð pbi ´ Sq
12: Fin Tantque aii
13: Si }rr } ď tol alors 13: Fin Pour
14: x tol Ð x 14: r Ð b ´ Ax x,
15: Fin Si 15: Fin Tantque
16: Si }r
r } ď tol alors
17: x tol Ð x
18: Fin Si
Résultat :
X : un vecteur de Kn
Méthode de Gauss-Seidel
˜ ¸
i´1
ÿ n
ÿ
pk`1q 1 rk`1s rks
xi “ bi ´ aij xj ´ aij xj @i P v1, nw
aii j“1 j“i`1
Cette formule donne explicitement la composante i du vecteur x rk`1s en fonction de la matrice A, et des
vecteurs b et xrks , mais aussi des i ´ 1 premières composantes de xrk`1s . Contrairement à la méthode de
rk`1s rk`1s
Jacobi, il est impératif de calculer sussessivement x1 , x2 , ... A partir de l’Algorithme 3.19, on va
construire par raffinements successifs la RSLGaussSeidel donnée dans l’Algorithme 3.21.
1: k Ð 0, x tol Ð H 1: k Ð 0, x tol Ð H
2: x Ð x 0 , r Ð b ´ Ax
x, 2: x Ð x 0 , r Ð b ´ Ax
x,
3: tol Ð εp}bb} ` 1q 3: tol Ð εp}bb} ` 1q
4: Tantque }rr } ą tol et k ď kmax faire 4: Tantque }rr } ą tol et k ď kmax faire
5: k Ðk`1 5: k Ðk`1
6: p Ðx 6: p Ðx
7:
3.4.4 Algorithmes
8: x Ð calcul par Gauss-Seidel 7: Pour i Ð 1˜à n faire ¸
i´1 n
9: r Ð b ´ Ax x, 1 ÿ ÿ
8: xi Ð bi ´ aij xj ´ aij pj
10: Fin Tantque aii j“1 j“i`1
11: Si }rr } ď tol alors 9: Fin Pour
3.4.Méthodes itératives
Algorithme 3.21 R0 Algorithme 3.21 R1
1: k Ð 0, x tol Ð H 1: k Ð 0, x tol Ð H
2: x Ð x 0 , r Ð b ´ Ax
x, 2: x Ð x 0 , r Ð b ´ Ax
x,
3: tol Ð εp}bb} ` 1q 3: tol Ð εp}bb} ` 1q
4: Tantque }rr } ą tol et k ď kmax faire 4: Tantque }rr } ą tol et k ď kmax faire
5: k Ðk`1 5: k Ðk`1
6: p Ðx 6: p Ðx
7:
8: x Ð calcul par Gauss-Seidel 7: Pour i Ð 1˜à n faire ¸
i´1 n
9: r Ð b ´ Ax x, 1 ÿ ÿ
8: xi Ð bi ´ aij xj ´ aij pj
10: Fin Tantque aii j“1 j“i`1
11: Si }rr } ď tol alors 9: Fin Pour
12: x tol Ð x
13: Fin Si 10: r Ð b ´ Ax x,
11: Fin Tantque
12: Si }rr } ď tol alors
13: x tol Ð x
14: Fin Si
18: r Ð b ´ A ˚ x,
19: Fin Tantque
20: Si }rr } ď tol alors
21: X Ðx
22: Fin Si
23: Fin Fonction
3.4. Méthodes itératives
Jeux algorithmiques
On a bien sûr noté que les fonctions RSLJacobi et RSLGaussSeidel ont la même ossature puisque
toutes deux basées sur l’Algorithme 3.19 générique. En effet seule la transcription de la ligne 7 de
l’Algorithme 3.19 différe :
Algorithme 3.22 Itération de Jacobi : calcul de x tel Algorithme 3.23 Itération de Gauss-Seidel : calcul de x
3.4.4 Algorithmes
que ˜ ¸ tel que ˜ ¸
ÿn i´1
ÿ ÿn
1 1
xi “ bi ´ aij yj , @i P v1, nw. xi “ bi ´ ai,j xj ´ ai,j yj , @i P v1, nw.
aii j“1,j‰i
aii j“1 j“i`1
Données : Données :
3.4.Méthodes itératives
4: 4:
5: S Ð S ` Api, jq ˚ ypjq 5: S Ð S ` Api, jq ˚ xpjq
6: Fin Pour 6: Fin Pour
7: xpiq Ð pbpiq ´ Sq{Api, iq 7: Pour j Ð i ` 1 à n faire
8: Fin Pour 8: S Ð S ` Api, jq ˚ ypjq
9: Fin Fonction 9: Fin Pour
10: xpiq Ð pbpiq ´ Sq{Api, iq
11: Fin Pour
12: Fin Fonction
En utilisant ces deux fonctions, les algorithmes de résolutions de systèmes linéaires par les méthodes
de Jacobi et Gauss-Seidel peuvent se réécrire sous la forme suivante :
En programmation, dès que l’on commence à faire des copier/coller1 il faut se poser la question : est-il
possible de faire sans?
La plupart du temps la réponse est oui, et celà permet souvent de simplifier, clarifier et racourcir le
code ce qui simplifie grandement sa maitenance. Dans notre cas, on écrit l’Algorithme générique 3.19
sous forme d’une fonction à laquelle on ajoute aux paramètres d’entrées une fonction formelle IterFonc
permettant le calcul d’une itérée :
x Ð IterFoncpA, b , y q.
Données :
A : matrice de Mn pKq ,
b : vecteur de Kn ,
IterFonc : fonction de paramètres une matrice d’ordre n,
: et deux vecteurs de Kn . retourne un vecteur de Kn .
x0 : vecteur initial de Kn ,
ε : la tolérence, ε P R` ,
kmax : nombre maximum d’itérations, kmax P N˚
Résultat :
x tol : un vecteur de Kn si convergence, sinon H
3.4.4 Algorithmes
4: tol Ð εp}bb} ` 1q
5: Tantque }rr } ą tol et k ď kmax faire
6: k Ðk`1
7: p Ðx
8: x Ð IterFoncpA, b , p q
9: r Ð b ´ Ax x,
10: Fin Tantque
11: Si }rr } ď tol alors
3.4. Méthodes itératives
12: x tol Ð x
13: Fin Si
14: Fin Fonction
En utilisant cette fonction, les algorithmes de résolutions de systèmes linéaires par les méthodes de
Jacobi et Gauss-Seidel peuvent se réécrire sous la forme suivante :
Méthode S.O.R.
Pour la méthode de relaxation utilisant Gauss-Seidel,avec w P R˚ , la suite des itérées est définie par
˜ ¸
i´1
ÿ n
ÿ
rk`1s w rk`1s rks rks
xi “ bi ´ aij xj ´ aij xj ` p1 ´ wqxi @i P v1, nw
aii j“1 j“i`1
1 Opération qui pour un bon programmeur est une chose très fatiguante!
1: Fonction x Ð IterSOR ( A, b, y, w )
2: Pour i Ð 1 à n faire
3: SÐ0
4: Pour j Ð 1 à i ´ 1 faire
5: S Ð S ` Api, jq ˚ xpjq
6: Fin Pour
7: Pour j Ð i ` 1 à n faire
8: S Ð S ` Api, jq ˚ ypjq
9: Fin Pour
10: xpiq Ð w ˚ pbpiq ´ Sq{Api, iq ` p1 ´ wq ˚ ypiq
11: Fin Pour
12: Fin Fonction
3.4.5 Exercices
x rk`1s “ Bx
xrks ` c
Si l’on pose
Φ : x ÞÑ Bx
x `c
3.4.5 Exercices
3.4.Méthodes itératives
Exercice 3.4.3
Exercice 3.4.4
Soit A P Mn pCq une matrice hermitienne définie positive décomposée (par points) sous la forme
A “ D ´ E ´ F où D “ diagpAq, E est triangulaire inférieure et d’éléments nuls sur la diagonale et F
est triangulaire supérieure et d’éléments nuls sur la diagonale.
On étudie une méthode itérative de résolution su système linéaire Ax x “ b . Soit x 0 P Cn , on
définit la suite px
xk qkPN par
pD ´ Eqx
xk`1{2 “ Fx
xk ` b (3.79)
pD ´ Fqxxk`1 “ Ex
xk`1{2 ` b (3.80)
x k`1 “ Bx
xk ` c (3.81)
Q. 2 1. Montrer que
D-1 “ pD ´ Eq´1 ´ D-1 EpD ´ Eq´1 . (3.82)
x “ b.
Q. 3 En déduire la convergence de cette méthode vers la solution x de Ax
Correction Exercice
Q. 1 La matrice D est inversible. En effet, pour tout i P v1, nw, di,i “ ai,i “ xAeei , e i y ą 0 car A définie
positive et e i , i-ème vecteur de la base canonique est non nul.
3.4.5 Exercices
-1
x k`1{2 “ pD ´ Eq Fxxk ` pD ´ Eq-1b .
En remplaçant cette expression de x k`1{2 dans (3.80), on a
´ ¯
pD ´ Fqxxk`1 “ E pD ´ Eq-1 Fx xk ` pD ´ Eq-1b ` b
´ ¯
-1
“ EpD ´ Eq Fx xk ` EpD ´ Eq-1 ` I b
3.4. Méthodes itératives
-1
En multipliant à gauche cette équation par pD ´ Fq , on abouti a
´ ¯
-1 -1
x k`1 “ pD ´ Fq EpD ´ Eq Fx xk pD ´ Fq-1 EpD ´ Eq-1 ` I b
En posant
-1 -1
B “ pD ´ Fq EpD ´ Eq F
´ ¯
-1 -1
c “ pD ´ Fq EpD ´ Eq ` I b
on obtient (3.81).
De (3.82), on a
-1 -1
D-1 EpD ´ Eq “ pD ´ Eq ´ D-1
et donc
´ ¯
-1
Bpp “ λpp ô pD ´ Eq ´ D-1 Fpp “ λD-1 pD ´ Fqpp
´ ¯
-1
ô pD ´ Eq pD ´ Eq ´ D-1 Fpp “ λpD ´ EqD-1 pD ´ Fqpp
` ˘
ô I ´ I ` ED-1 Fpp “ λpI ´ ED-1 qpD ´ Fqpp
ô ED-1 Fpp “ λpD ´ E ´ F ` ED-1 Fqpp
ô ED-1 Fpp “ λpA ` ED-1 Fqpp
On en déduit alors
λApp ` pλ ´ 1qED-1 Fpp “ 0.
Q. 3 La matrice A est inversible car elle est définie positive et donc x est bien définie. De l’équation
(3.79), on déduit
pD ´ Eqx xk`1{2 “ Fx xk ` Axx “ Fxxk ` pD ´ E ´ Fqx
x
et donc
pD ´ Eqpx
xk`1{2 ´ x q “ Fpx
xk ´ x q (3.84)
De la même manière à partir de l’équation (3.80), on déduit
xk`1 ´ x q “ Epx
pD ´ Fqpx xk`1{2 ´ x q (3.85)
En utilisant (3.84), l’équation (3.86) devient
xk`1 ´ x q “ EpD ´ Eq-1 Fpx
pD ´ Fqpx xk ´ x q
3.4.5 Exercices
c’est à dire
x k`1 ´ x “ Bpx
xk ´ x q.
En posant e k “ x k ´ x on a alors
3.4.Méthodes itératives
“ λ xpp, Appy ` pλ ´ 1q p , ED-1 Fpp (3.86)
Comme la matrice A est définie positive on a xApp, p y ą 0 car p ‰ 0 (vecteur propre) et donc
xpp, Appy “ xApp, p y “ xApp, p y ą 0.
De plus on a @ D @ D
p , ED-1 Fpp “ E˚p , D-1 Fpp .
La matrice A étant hermitienne, on a E˚ “ F. La matrice A étant définie positive, la matrice diagonale D
est définie positive car di,i ą 0, @i P v1, nw, et donc D-1 aussi. Comme Fpp n’est pas nécessairement non
nul, on a @ -1 D
D Fpp, Fpp P R` .
On en déduit @ D @ D
Fpp, D-1 Fpp “ xD-1 Fpp, Fppy “ D-1 Fpp, Fpp ě 0.
De l’équation (3.86), on obtient
@ D @ D
λpxpp, Appy ` Fpp, D-1 Fpp q “ Fpp, D-1 Fpp
or @ D
xpp, Appy ` Fpp, D-1 Fpp ‰ 0
ce qui donne
xFpp, D-1 Fppy
λ“ .
xpp, Appy ` xFpp, D-1 Fppy
On a alors λ P r0, 1r.
Q. 4 Comme la matrice A est hermitienne définie positive, chaque bloc diadonal l’est aussi. Donc la
matrice diagonale bloc D est aussi hermitienne définie positive ainsi que son inverse . Les résultats
précédents sont donc toujours valable.
˛
3.4.5 Exercices
3. Résolution de systèmes linéaires
3.4. Méthodes itératives
L’interpolation est un outil mathématique permettant de construire des fonctions à partir de la donnée
d’un nombre fini de valeurs.
A developper...
Les protagonistes de cette histoire
Exercice 4.1.1
Soient n P N˚ et n ` 1 couples de R2 , pxi , yi qiPv0,nw , tels que les xi sont distincts deux à deux. On
note
Q. 1 1. Soit i P v0, nw. Montrer qu’il existe un unique polynôme Li de degré n vérifiant
2. Montrer que les pLi qiPv0,nw forment une base de Rn rXs (espace vectoriel des polynômes à
coefficients réels de degré inférieur ou égal à n).
On défini le polynôme Pn par
n
ÿ
Pn pxq “ yi Li pxq. (4.2)
i“0
Q. 2 Montrer que polynôme Pn est l’unique polynôme de degré au plus n vérifiant Pn pxi q “ yi ,
@i P v1, nw.
Correction Exercice
Q. 1 1. De (4.1), on déduit que les n points distincts xj pour j P v0, nwztiu sont les n zéros du
polynôme Li de degré n : il s’écrit donc sous la forme
4.1.0 Exercices
n
ź
Li pxq “ C px ´ xj q avec C P R
j“0
j‰i
śn
Les points xi sont distincts deux à deux, on a j“0 pxi ´ xj q ‰ 0 et donc
j‰i
1
C “ śn
j“0 pxi ´ xj q
j‰i
d’où
źn
x ´ xj
Li pxq “ , @i P v0, nw. (4.3)
x
j“0 i
´ xj
j‰i
Il reste à démontrer l’unicité. On suppose qu’il existe Li et Ui deux polynômes de Rn rXs vérifiant
(4.1). Alors Qi “ Li ´ Ui est polynôme de degré n (au plus) admettant n ` 1 zéros distincts, c’est
donc le polynôme nul et on a nécessairement Li “ Ui .
2. On sait que dim Rn rXs “ n ` 1. Pour que les tLi uiPv0,nw forment une base de Rn rXs il suffit de
démontrer qu’ils sont linéairement indépendants.
Soit λ0 , ¨ ¨ ¨ , λn n ` 1 scalaires. Montrons pour celà que
n
ÿ
λi Li “ 0 ùñ λi “ 0, @i P v0, nw
i“1
Noter que la première égalité est dans l’espace vectoriel Rn rXs et donc le 0 est pris au sens polynôme
nul.
On a
ÿn ÿn
λi Li “ 0 ðñ λi Li pxq “ 0, @x P R
i“1 i“1
řn
Soit k P v0, nw. En choisissant x “ xk , on a par (4.1) i“1 λi Li pxk q “ λk et donc
n
ÿ n
ÿ
λi Li “ 0 ùñ λi Li pxk q “ 0, @k P v0, nw ðñ λk “ 0, @k P v0, nw.
i“1 i“1
4.1.0 Exercices
Les n ` 1 points xi étant distincts, ce sont donc n ` 1 racines distinctes du polynôme Q. Or tout
polynôme de degré n admet au plus n racines disctinctes2 . On en déduit que le seul polynôme de
degré au plus n admettant n ` 1 racines distinctes est le polynôme nulle et donc Pa “ Pb .
‚ c’est l’unique polynôme de degré au plus n vérifiant (4.2) car la décomposition dans la base
tLi uiPv0,nw est unique.
˛
Definition 4.1
4. Interpolation
4.1.Polynôme d’interpolation de Lagrange
Soient n P N˚ et pxi , yi qiPv0,nw avec pxi , yi q P R2 et les xi distincts deux à deux. Le polynôme
d’interpolation de Lagrange associé aux n ` 1 points pxi , yi qiPv0,nw , noté Pn , est donné par
n
ÿ
Pn pxq “ yi Li pxq, @x P R (4.4)
i“0
avec
źn
x ´ xj
Li pxq “ , @i P v0, nw, @x P R. (4.5)
x ´ xj
j“0 i
j‰i
Théorème 4.2
Remarque 4.3 Il est aussi possible d’obtenir l’existence et l’unicité du polynôme d’interpolation de
Lagrange sans passer par sa construction. Pour celà on défini Φ : Rn rXs ÝÑ Rn`1 par
Exercice 4.1.2
Correction Exercice
But : Calculer le polynôme Pn ptq définit par (4.4)
Données : X : vecteur/tableau de Rn`1 , Xpiq “ xi´1 @i P v1, n ` 1w et
Xpiq ‰ Xpjq pour i ‰ j,
Y : vecteur/tableau de Rn`1 , Y piq “ yi´1 @i P v1, n ` 1w,
t : un réel.
Résultat : y : le réel y “ Pn ptq.
n`1
ÿ 1: yÐ0
1: Calcul de y “ Pn ptq “ Y piqLi´1 ptq 2: Pour i Ð 1 à n ` 1 faire
i“1
3: y Ð y ` Y piq ˚ Li´1 ptq
4: Fin Pour
5: Fin Pour
4. Interpolation
1: Fonction y Ð Lagrange ( t, X, Y )
2: yÐ0
Figure 4.3: Polynômes d’interpolation de lagrange avec n “ 6 (7 points) uniformément répartis. A gauche
pour la fonction f : t ÝÑ sinptq avec x0 “ 0, x6 “ 2π et à droite pour la fonction f : t ÝÑ 1{p1 ` t2 q
avec x0 “ ´5, x6 “ 5.
4.1.1 Erreur de l’interpolation
4. Interpolation
4.1. Polynôme d’interpolation de Lagrange
Figure 4.4: Polynômes d’interpolation de lagrange avec n “ 10 (11 points) uniformément répartis. A
gauche pour la fonction f : t ÝÑ sinptq avec x0 “ 0, x10 “ 2π et à droite pour la fonction f : tx ÝÑ
1{p1 ` t2 q avec x0 “ ´5, x10 “ 5.
Figure 4.5: Polynômes d’interpolation de lagrange avec n “ 18 (19 points) uniformément répartis. A
gauche pour la fonction f : t ÝÑ sinptq avec x0 “ 0, x18 “ 2π et à droite pour la fonction f : t ÝÑ
1{p1 ` t2 q avec x0 “ ´5, x18 “ 5.
Exercice 4.1.3
Soit f P C n`1 pra; bs; Rq. Soient n P N˚ et n ` 1 couples de R2 , pxi , yi qiPv0,nw , tels que les xi sont
distincts deux à deux et yi “ f pxi q.
On note par Pn le polynôme d’interpolation de Lagrange associé aux points pxi , yi qiPv0,nw et πn le
polynôme de degré n ` 1 défini par
n
ź
πn pxq “ px ´ xi q. (4.8)
i“0
Q. 1 Montrer que, @x P ra; bs, il existe ξx appartenant au plus petit intervalle fermé contenant
x, x0 , . . . , xn tel que
πn pxq pn`1q
f pxq ´ Pn pxq “ f pξx q. (4.9)
pn ` 1q!
f pxq ´ Pn pxq
Indication : Etudier les zéros de la fonction F ptq “ f ptq ´ Pn ptq ´ πn ptq.
πn pxq
4. Interpolation
Montrons par récurrence finie que pPk q est vraie pour tout k P v1, n ` 1w
rks r0s rks rks r0s rks
pPk q : Dξx,i , i P v1, n ` 2 ´ kw, ξx,1 ă ξx,1 ă ¨ ¨ ¨ ă ξx,n`2´k ă ξx,n`2 tels que F pkq pξx,i q “ 0
Hérédité : Soit 1 ă k ´ 1 ă n ` 1, on suppose pPk´1 q vérifiée. La fonction F pk´1q étant continue sur
ra, bs et dérivable sur sa, br, le théorème de Rolle dit qu’entre deux zéros consécutifs de F pk´1q , il
existe au moins un zéro de F pkq . Par hypothèse F pk´1q admet n ` 2 ´ pk ´ 1q zéros vérifiant
r0s rk´1s rk´1s r0s
ξx,1 ă ξx,1 ă ¨ ¨ ¨ ă ξx,n`2´pk´1q ă ξx,n`2
La fonction F pk´1q est continue sur ra, bs et dérivable sur sa, br puisque F P C n`1 pra; bs; Rq. Par
application du théorème de Rolle, entre deux zéros de F pk´1q , il existe au moins un zéro de F pkq .
Plus précisemment pour tout i P v1, n ` 2 ´ kw on a
rks rk´1s rk´1s rks
Dξx,i Psξx,i , ξx,i`1 r, F pkq pξx,i q “ 0
Avec k “ n ` 1 on obtient
rn`1s r0s r0s rn`1s
pPn`1 q : Dξx,1 Psξx,1 , ξx,n`2 r tel que F pn`1q pξx,1 q“0
et donc
pn`1q
Comme Pn P Rn rXs, on a Pn “ 0. De plus πn P Rn`1 rXs, et comme πn pxq “ xn`1 ` Qpxq avec
pn`1q
Q P Rn rXs (i.e. son monône de puissance n ` 1 à pour coefficient 1) on obtient πn pxq “ pn ` 1q! On
a alors
rn`1s f pxq ´ Pn pxq
f pn`1q pξx,1 q “ pn ` 1q!
πn pxq
˛
Théorème 4.4
Soient n P N˚ et x0 , ¨ ¨ ¨ , xn n ` 1 points distincts de l’intervalle ra, bs. Soient f P C n`1 pra; bs; Rq et
Pn le polynôme d’interpolation de Lagrange de degré n passant par pxi , f pxi qq, @i P v0, nw. Alors,
@x P ra, bs, Dξx P pminpxi , xq, maxpxi , xqq,
n
f pn`1q pξx q ź
f pxq ´ Pn pxq “ px ´ xi q (4.10)
pn ` 1q! i“0
Pour minimiser l’erreur commise lors de l’interpolation d’une fonction f par un polynôme d’interpolation
de Lagrange, on peut, pour un n donné, "jouer" sur le choix des points xi :
Trouver px̄i qni“0 , x̄i P ra, bs, distincts deux à deux, tels que
n
ź n
ź
max |t ´ x̄i | ď max |t ´ xi |, @pxi qni“0 , xi P ra, bs, distincts 2 à 2 (4.11)
tPra,bs tPra,bs
i“0 i“0
Théorème 4.5
Les points réalisant (4.11) sont les points de Chebyshev donnés par
4.1.3 Stabilité
4. Interpolation
4.1.Polynôme d’interpolation de Lagrange
4.1.3 Stabilité
Inspiré du polycopié de G. Barles : ici
On suppose que l’on commet des erreurs lors du calcul des f pxi q et l’on note fi « f pxi q les valeurs
numériques obtenues. Dans ce cadre, on a deux polynômes d’interpolation de Lagrange l’un "exact" avec
les couples de points pxi , yi q “ pxi , f pxi qq noté Pn , et l’autre "approché" avec les couples de points pxi , fi q
noté Pp n . On a donc
ÿn n
ÿ
Pn pxq “ f pxi qLi pxq et P p n pxq “ fi Li pxq
i“0 i“0
n
ÿ
On note Λn “ max |Li pxq|, dites Constante de Lebesgue. Cette constante est bien définie car
xPra,bs
4.1.3 Stabilité
řn i“0
l’application x ÞÑ i“0 |Li pxq| est continue sur ra, bs intervalle fermé borné de R et donc le maximum est
bien atteint : il est donc fini.
On obtient alors › ›
›p ›
›Pn ´ Pn › ď Λn max |fi ´ f pxi q|. (4.13)
8 iPv0,nw
Proposition 4.6
Soient n P N ˚ et x0 , ¨ ¨ ¨ , xn des points distincts de ra, bs. L’application Ln : C 0 pra, bs; Rq ÝÑ Rn rXs
qui a toute fonction f P C 0 pra, bs; Rq donne le polynôme d’interpolation de Lagrange Pn associés
4.1. Polynôme d’interpolation de Lagrange
4. Interpolation
aux couples de pxi , f pxi qqiPv0,nw est bien définie et linéaire. De plus on a
On obtient alors
}Ln pf q}8 ď Λn }f }8 .
et donc
}Ln pf q}8
sup ď Λn .
f PC 0
pra,bs;Rq }f }8
f ‰0
Pour obtenir l’égalité (4.14), il suffit donc, en reprenant les calculs précédents, de regarder si l’on peut
trouver x̄ P ra, bs et f¯ P C 0 pra, bs; Rq vérifiant
› ›
|Ln pf¯qpx̄q| “ Λn ›f¯›8 .
řn
On détermine x̄ pour que ř la dernière majoration, correspondant à i“0 |Li pxq| ď Λn , devienne une
n
égalité. L’application x ÞÑ i“0 |Li pxq| étant continue sur le fermé borné ra, bs, il existe alors x̄ P ra, bs
tel que
ÿn n
ÿ
Λn “ max |Li pxq| “ |Li px̄q|.
xPra,bs
i“0 i“0
On va maintenant regarder s’il est possible de construire une fonction f¯ P C 0 pra, bs; Rq telle que
n
ÿ n
ÿ › › ÿ n
| f¯pxi qLi px̄q| “ |f¯pxi qLi px̄q| “ ›f¯›8 |Li px̄q|.
i“0 i“0 i“0
4.1.3 Stabilité
@x P rxn , bs. Cette fonction est par construction continue sur ra, bs et vérifie
n
ÿ
|Ln pf¯qpx̄q| “ | f¯pxi qLi px̄q|
i“0
n
ÿ n
› › ÿ
“ |f¯pxi qLi px̄q| “ ›f¯›8 |Li px̄q|
i“0 i“0
› ›
“ Λn ›f¯›8 .
Or on a › › › ›
4. Interpolation
›Ln pf¯q› “ sup |Ln pf¯qpxq| ě |Ln pf¯qpx̄q| “ Λn ›f¯› .
ce qui donne
}Ln pf q}8
sup ě Λn .
f PC 0
pra,bs;Rq }f }8
f ‰0
Théorème 4.7
d’où le résultat.
et le comportement asymptotique
2n`1
Λn « quand n Ñ `8 (4.17)
e.n lnpnq
Λn ď C lnpnq (4.18)
et le comportement asymptotique
2
Λn « lnpnq quand n Ñ `8 (4.19)
π
Pour toute famille de points d’interpolation, il existe une fonction f P C 0 pra, bs; Rq telle que la suite
des polynômes d’interpolation associés ne converge pas uniformément.
4.2.0 Stabilité
Soit f une fonction lipschitzienne sur ra, bs à valeurs réelles, i.e. il existe une constante K ě 0 telle
que @px, yq P ra, bs2 , on ait |f pxq ´ f pyq| ď K|x ´ y|. Soient n P N ˚ et x0 , ¨ ¨ ¨ , xn les points de
Tchebychev ra, bs. On note Ln pf q le polynôme d’interpolation de Lagrange associés aux couples de
pxi , f pxi qqiPv0,nw .
Alors la suite pLn pf qqně1 des polynômes d’interpolation converge uniformémént vers f sur ra, bs.
Pour conclure, l’interpolation de Lagrange en des points équidistants n’est à utiliser qu’avec un nombre
de points assez faible : des phénomènes d’instabilités pouvant apparaître.
4.2. Polynôme d’interpolation de Lagrange-Hermite
4. Interpolation
Exercice 4.2.1
Soient pxi , yi , zi qiPv0,nw n ` 1 triplets de R3 , où les xi sont des points distincts deux à deux de
l’intervalle ra, bs. Le polynôme d’interpolation de Lagrange-Hermite, noté Hn , associé aux n ` 1
triplets pxi , yi , zi qiPv0,nw , est défini par
avec, pour i P v0, nw, Ai et Bi polynômes de degré au plus 2n ` 1 indépendants des valeurs yi et zi .
Q. 2 1. Déterminer des conditions suffisantes sur Ai et Bi pour que Pn vérifie (4.20).
źn
x ´ xj
Li pxq “ .
x ´ xj
j“0 i
j‰i
Correction Exercice
Q. 1 On a 2n ` 2 équations, donc à priori Hn est de degré 2n ` 1.
4.2.0 Stabilité
2. Soit i P v0, nw. On commence par déterminer le polynôme Ai P R2n`1 rXs vérifiant
Ai pxj q “ δi,j et A1i pxj q “ 0, @j P v0, nw.
Les points pxj qjPv0,nwztiu sont racines doubles de Ai . Le polynôme Li P Rn rXs admet les mêmes
racines (simples) que Ai et donc L2i P R2n rXs admet les mêmes racines doubles que Ai . On peut
alors écrire
Ai pxq “ αi pxqL2i pxq avec αi pxq P R1 rXs.
Il reste à déterminer le polynôme αi . Or on a
Ai pxi q “ 1 et A1i pxi q “ 0.
4. Interpolation
Ai pxi q “ αi pxi qL2i pxi q “ αi pxi q “ 1
et
A1i pxi q “ αi1 pxi qL2i pxi q ` 2αi pxi qL1i pxi qLi pxi q “ αi1 pxi q ` 2αi pxi qL1i pxi q “ 0
c’est à dire
αi pxi q “ 1 et αi1 pxi q “ ´2L1i pxi q.
Comme αi est un polynôme de degré 1 on en déduit
αi pxq “ 1 ´ 2L1i pxi qpx ´ xi q
et donc
Ai pxq “ p1 ´ 2L1i pxi qpx ´ xi qqL2i pxq. (4.24)
On détermine ensuite le polynôme Bi P R2n`1 rXs vérifiant
Bi pxj q “ 0 et Bi1 pxj q “ δi,j , @j P v0, nw.
Les points pxj qjPv0,nwztiu sont racines doubles de Bi et le point xi est racine simple. Le polynôme
L2i P R2n rXs admet les mêmes racines doubles. On peut alors écrire
Bi pxq “ Cpx ´ xi qL2i pxq avec C P R.
Il reste à déterminer la constante C. Or Li pxi q “ 1 et comme Bi1 pxi q “ 1 on obtient
Bi1 pxi q “ CL2i pxi q ` 2Cpxi ´ xi qL1i pxi qLi pxi q “ C “ 1
ce qui donne
Bi pxq “ px ´ xi qL2i pxq. (4.25)
On vient de démontrer l’existence en construisant un polynôme de degré 2n ` 1 vérifiant (4.20).
Q. 3 Deux démonstrations pour l’unicité sont proposées (la deuxième donne aussi l’existence).
dém. 1: Soient P et Q deux polynômes de R2n`1 rXs vérifiant (4.20). Le polynôme R “ P´Q P R2n`1 rXs
admet alors n ` 1 racines doubles distinctes :px0 , ¨ ¨ ¨ , xn q. Or le seul polynôme de R2n`1 rXs ayant
n ` 1 racines doubles est le polynôme nul et donc R “ 0, i.e. P “ Q.
dém. 2: Soit Φ : R2n`1 rXs ÝÑ R2n`2 définie par
Definition 4.10
4.2.0 Stabilité
Soient n P N˚ et pxi , yi , zi qiPv0,nw n ` 1 triplets de R3 , où les xi sont des points distincts deux à deux
de l’intervalle ra, bs. Le polynôme d’interpolation de Lagrange-Hermite, noté Hn , associé aux
n ` 1 triplets pxi , yi , zi qiPv0,nw , est défini par
n
ÿ n
ÿ
Hn pxq “ yi Ai pxq ` zi Bi pxq (4.26)
i“0 i“0
avec
Ai pxq “ p1 ´ 2L1i pxi qpx ´ xi qqL2i pxq et Bi pxq “ px ´ xi qL2i pxq (4.27)
4.2. Polynôme d’interpolation de Lagrange-Hermite
où
źn
x ´ xj
4. Interpolation
Li pxq “ .
x ´ xj
j“0 i
j‰i
Théorème 4.11
Exercice 4.2.2
Soit f P C 2n`2 pra, bs; Rq. On suppose de plus que, @i P v0, nw, xi P ra, bs, yi “ f pxi q et zi “ f 1 pxi q.
On note
n
ź
πn2 pxq “ px ´ xi q2
i“0
et Hn le polynôme d’interpolation de Lagrange-Hermite associé aux triplets pxi , f pxi q, f 1 pxi qqiPv0,nw .
Q. 1 Montrer que › p2n`2q ›
›f ›
8 2
|f pxq ´ Hn pxq| ď π pxq. (4.29)
p2n ` 2q! n
f pxq ´ Hn pxq 2
Indications : Etudier les zéros de la fonction F pyq “ f pyq ´ Hn pyq ´ πn pyq et
πn2 pxq
appliquer le théorème de Rolle.
Correction Exercice
Q. 1 Soit i P v1, nw, on a f pxi q ´ Hn pxi q “ 0 et l’inégalité (4.29) est donc vérifiée pour x “ xi .
Soit x P ra, bs tel que x ‰ xi , @i P v1, nw. On a alors πn2 pxq ‰ 0. Comme f P C 2n`2 pra; bs; Rq, Hn P R2n`1 rXs
et πn P Rn`1 rXs, on en déduit que
F P C 2n`2 pra; bs; Rq.
On note que πn2 admet px0 , ¨ ¨ ¨ , xn q comme racines doubles distinctes. Par construction f ´ Hn admet
les mêmes racines doubles. On en déduit alors que F admet aussi px0 , ¨ ¨ ¨ , xn q comme racines doubles.
De plus, on a F pxq “ 0 (i.e. x est racine simple) et donc
F admet au moins 2n ` 3 racines (comptées avec leurs multiplicités).
Les points x, x0 , ¨ ¨ ¨ , xn étant distincts, la fonction F 1 admet par le théorème de Rolle n`1 zeros distincts
entre eux et distincts des points x, x0 , ¨ ¨ ¨ , xn . De plus les points x0 , ¨ ¨ ¨ , xn sont racines de F 1 puisque
racines doubles de F. On en déduit alors que
F 1 admet au moins 2n ` 2 racines distinctes deux à deux.
Par applications successives du théorème de Rolle, on abouti a :
4.2.0 Stabilité
F p2n`2q admet au moins une racine notée ξx Psa, br.
On a alors
f pxq ´ Hn pxq d2n`2 πn2
F p2n`2q pξx q “ 0 “ f p2n`2q pξx q ´ Hnp2n`2q pξx q ´ pξx q
πn2 pxq dx2n`2
n
ź
p2n`2q
Comme Hn P R2n`1 rXs on a Hn ” 0. De plus comme πn2 pxq “ px ´ xi q2 P R2n`2 rXs sa dérivée
i“0
d’ordre 2n ` 2 est constante et
d2n`2 πn2
“ p2n ` 2q!
4. Interpolation
f pxq ´ Hn pxq
f p2n`2q pξx q “ p2n ` 2q!
πn2 pxq
On a donc montrer que @x P ra, bs Dξx Psa, br tels que
Théorème 4.12
Soient n P N˚ et x0 , ¨ ¨ ¨ , xn , n ` 1 points distincts de l’intervalle ra, bs. Soient f P C 2n`2 pra; bs; Rq et
Hn le polynôme d’interpolation de Lagrange-Hermite associé aux n`1 triplets pxi , f pxi q, f 1 pxi qqiPv0,nw .
On a alors @x P ra, bs, Dξx P pminpxi , xq, maxpxi , xqq, tels que
n
f p2n`2q pξx q ź
f pxq ´ Hn pxq “ px ´ xi q2 (4.30)
p2n ` 2q! i“0
Exercice 4.2.3
1
1
0.5
0.5
0 0
-0.5 -0.5
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 -2 -1 0 1 2
1
4.2.0 Stabilité
0.5
0.5
0 0
4.2. Polynôme d’interpolation de Lagrange-Hermite
4. Interpolation
-0.5 -0.5
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 -2 -1 0 1 2
Figure 4.10: Polynôme d’interpolation de lagrange-Hermite avec n “ 10 (11 points) pour la fonction
f : x ÝÑ 1{p1 ` 25x2 q. A gauche avec des points uniforméments répartis et à droite avec des points de
Tchebychev
1
1
0.5
0.5
0 0
-0.5 -0.5
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 -2 -1 0 1 2
Figure 4.11: Polynôme d’interpolation de lagrange-Hermite avec n “ 18 (19 points) pour la fonction
f : x ÝÑ 1{p1 ` 25x2 q. A gauche avec des points uniforméments répartis et à droite avec des points de
Tchebychev
Correction Exercice
But : Calculer le polynôme Hn ptq définit par (4.26)
Données : X : vecteur/tableau de Rn`1 , Xpiq “ xi´1 @i P v1, n ` 1w et
Xpiq ‰ Xpjq pour i ‰ j,
Y : vecteur/tableau de Rn`1 , Y piq “ yi´1 @i P v1, n ` 1w,
Z : vecteur/tableau de Rn`1 , Zpiq “ zi´1 @i P v1, n ` 1w,
t : un réel.
Résultat : pH : le réel pH “ Hn ptq.
D’après la Définition 4.10, on a
n
ÿ n
ÿ n
ÿ
Hn ptq “ yi Ai ptq ` zi Bi ptq “ pyi Ai ptq ` zi Bi ptqq
i“0 i“0 i“0
avec
Ai ptq “ p1 ´ 2L1i pxi qpt ´ xi qqL2i ptq et Bi ptq “ pt ´ xi qL2i ptq
où
źn
t ´ xj
Li ptq “ .
x ´ xj
j“0 i
j‰i
4.2.0 Stabilité
Pour rendre effectif le calcul de Hn ptq, il reste à déterminer L1i pxi q. On a
n
ÿ źn
1 t ´ xj
L1i pxq “
k“0
x i ´ x k x
j“0 i
´ xj
k‰i j‰i
j‰k
d’où
n
ÿ 1
L1i pxi q “ . (4.31)
k“0
x i ´ xk
La fonction que l’on va écrire use (et certains diront abuse) de fonctions.
4. Interpolation
Algorithme 4.2 Fonction Hermite permettant de calculer le polynôme d’interpolation de Lagrange-
Hermite Hn ptq définit par (4.26)
1: Fonction pH Ð Hermite ( X, Y, Z, t )
2: pH Ð 0
3: Pour i Ð 0 à n faire
4: pH Ð pH ` polyApi, X, tq ˚ Y pi ` 1q ` polyBpi, X, tq ˚ Zpi ` 1q
5: Fin Pour
6: Fin Fonction
Les différentes fonctions utilisées pour la fonction Hermite (directement ou indirectement) sont les
suivantes :
Algorithme 4.3 Fonction polyA permettant de calculer le polynôme Algorithme 4.4 Fonction polyB permettant de calculer le polynôme
Ai en t P R donné par Ai ptq “ p1 ´ 2L1i pxi qpt ´ xi qqL2i ptq Bi en t P R donné par Bi ptq “ pt ´ xi qL2i ptq
Algorithme 4.5 Fonction polyL permettant de calculer le polynôme Algorithme 4.6 Fonction polyLp permettant de calculer L1i pxi q “
źn ÿn
t ´ xj 1
Li en t P R donné par Li ptq “
x ´ xj
j“0,j‰i i
x ´ xk
k“0,k‰i i
Bien évidemment une telle écriture est loin d’être optimale mais elle a l’avantage d’être facile à
programmer et facile à lire car elle "colle" aux formules mathématiques.
On laisse le soin au lecteur d’écrire des fonctions plus performantes... ˛
4.3 Exercices
Exercice 4.3.1
Q. 1 1. Ecrire explicitement un polynôme P de degré 2 passant par les points A “ p1; 2q, B “
p2; 6q et C “ p3; 12q.
2. Démontrer que le polynôme P est l’unique polynôme de degré 2 passant par les points A, B et
C.
Q. 2 Ecrire explicitement un polynôme Q de degré 3 tel que
Qp1q “ 4, Qp2q “ 5,
4.3.0 Stabilité
1
Q p1q “ 3, Q1 p2q “ 2.
4. Interpolation
Exercice 4.3.2
On pose
Ppxq “ αh00 pxq ` βh10 pxq ` γh01 pxq ` δh11 pxq. (4.36)
Q. 2 Quelles sont les particularités de P?
Soient a et b deux réels, a ă b et Q le polynôme de degré 3 vérifiant
Exercice 4.3.3
t1 ´t0
Soit t0 ă t1 deux nombres réels et soit ε un réel tel que 0 ă ε ă 2 .
4.3.0 Stabilité
4. Interpolation
4.3.Exercices
Exercice 4.3.4:
Soient pxi qiPN une suite de points distincts de l’intervalle ra, bs et f une fonction définie sur ra, bs à valeurs réelles.
On désigne par f rs les différences divisées de la fonction f définie par
et
f rxk`1 , . . . , xk`r s ´ f rxk , . . . , xk`r´1 s
f rxk , . . . , xk`r s “ , @k P N, @r P N˚ , (ordre r) (4.40)
xk`r ´ xk
Q. 1 Montrer que
k`r
ÿ f pxi q
f rxk , . . . , xk`r s “ k`r
, @k P N, @r P N˚ . (4.41)
i“k
ź
pxi ´ xj q
j“k
j‰i
On note Qk,r le polynôme d’interpolation associé aux r ` 1 couples pxk`i , f pxk`i qqiPv0,rw .
Q. 3 1. Exprimer le polynôme Qk,1 en fonction de Qk,0 .
2. Exprimer le polynôme Qk,1 en fonction de Qk,0 et Qk`1,0 .
3. En déduire que
Qk,1 pxq “ Qk,0 pxq ` f rxk , xk`1 spx ´ xk q. (4.43)
Q. 5 1. Montrer que
r´1
ź
Qk,r pxq “ Qk,r´1 pxq ` f rxk , . . . , xk`r s px ´ xk`j q (4.45)
j“0
Indication : Effectuer une démonstration par récurrence en écrirant le polynôme Qk,r sous deux formes : l’une
4. Interpolation
2. En déduire
r
ÿ i´1
ź
Qk,r pxq “ f rxk s ` f rxk , . . . , xk`i s px ´ xk`j q (4.46)
i“1 j“0
Q. 6 On suppose que f P C r pra, bs; Rq. Montrer qu’il existe ξ Ps min xk`i ; max xk`i r tel que
4.3. Exercices
iPv0,rw iPv0,rw
f prq pξq
f rxk , . . . , xk`r s “ . (4.47)
r!
Q. 7 On suppose f P C r`1 pra; bs; Rq. Montrer que, @x P ra; bs, il existe ξx appartenant au plus petit intervalle fermé
contenant x, xk , . . . , xk`r tel que
źr
px ´ xk`j q
j“0
f pxq ´ Qk,r pxq “ f pr`1q pξx q. (4.48)
pr ` 1q!
Exercice 4.3.5
Soit X “ pxi qiPv0,nw n ` 1 points deux à deux distincts de l’intervalle ra, bs. On note s le changement
de variables s : t ÝÑ a ` pb ´ aqt de r0, 1s à valeurs dans ra, bs. Pour tout i P v0, nw, on note
i ´a
ti “ s-1 pxi q “ xb´a et T “ pti qiPv0,nw .
Les polynômes d’interpolation de Lagrange Ln pf q et Ln pgq associés respectivement aux points
Q. 1 Montrer que LX T
i ˝ s “ Li .
Correction Exercice
Q. 1
źn źn
sptq ´ xj sptq ´ sptj q
LX
i ˝ sptq “ “
j“0
xi ´ xj j“0
spti q ´ sptj q
j‰i j‰i
źn
a ` tpb ´ aq ´ pa ` tj pb ´ aqq
“
j“0
a ` ti pb ´ aq ´ pa ` tj pb ´ aqq
j‰i
źn
t ´ tj
“ “ LTi ptq
j“0
t i ´ t j
j‰i
Q. 2 On a
4.3.0 Stabilité
n
ÿ
def
Ln pf ˝ sqptq “ LTi ptqf ˝ spti q
i“0
ÿn
4. Interpolation
“ LTi ptqgpti q “ Ln pgq
i“0
et
n
ÿ
def
Ln pf q ˝ sptq “ LX
i ˝ sptqf pxi q
i“0
4.3.Exercices
ÿn
“ LTi ptqf ˝ spti q “ Ln pgq
i“0
˛
Q. 1 Montrer que si
s2 pbqpf 1 pbq ´ s1 pbqq “ s2 paqpf 1 paq ´ s1 paqq (4.50)
alors żb żb
2
ps pxqq dx ď2
pf 2 pxqq2 dx. (4.51)
a a
şb
Indications : Poser r “ f ´ s et montrer par intégrations par parties que a
s2 pxqr2 pxqdx “ 0.
Q. 4 1. Montrer qu’une condition nécessaire et suffisante pour que g soit une spline cubique et
vérifie g 2 paq “ 0, g 2 pbq “ 0, est que le vecteur M P Rn`1 “ pm0 , m1 , . . . , mn qt soit solution
d’un système linéaire de la forme
M “b
AM (4.55)
4.3.0 Stabilité
Correction Exercice
4. Interpolation
1
u pxqvpxqdx “ rupxqvpxqsba ´ upxqv 1 pxqdx.
a a
et, sur chaque intervalle rxi´1 , xi s, s est un polynôme de degré au plus 1. On a donc s2 P C 1 prxi´1 , xi s; Rq
2
et r1 P C 1 prxi´1 , xi s; Rq et il est alors possible de faire une intégration par partie avec u “ r1 et v “ s2
sur rxi´1 , xi s : ż xi ż xi
s2 pxqr2 pxqdx “ rs2 pxqh1 pxqsxxii´1 ´ s3 pxqr1 pxqdx. (4.58)
xi´1 xi´1
Or, sur rxi´1 , xi s, s P R3 rXs et donc s3 est constante, ce qui donne, en utilisant (4.56),
ż xi ż xi
s3 pxqr1 pxqdx “ s3 pxi q r1 pxqdx “ s3 pxi qprpxi q ´ rpxi´1 qq “ 0.
xi´1 xi´1
En sommant, on abouti a
żb
s2 pxqr2 pxqdx “ s2 pxn qh1 pxn q ´ s2 px0 qh1 px0 q “ s2 pbqh1 pbq ´ s2 paqh1 paq.
a
şb
Sous l’hypothèse (4.50) on a bien a s2 pxqr2 pxqdx “ 0. L’équation (4.57) devient alors
żb żb żb
2
pf pxqq dx “ ps pxqq dx ` pr2 pxqq2 dx.
2 2 2
a a a
D’où żb żb
pf 2 pxqq2 dx ě ps2 pxqq2 dx.
a a
4.3.0 Stabilité
L’existence et l’unicité du polynôme Sk est équivalente à la bijectivité de Φk . Cette dernière étant
une application entre deux espaces vectoriels de même dimension finie 4, elle est bijective si et
seulement si elle est injective. Pour établir l’injectivité de Φk il faut montrer que son noyau est
réduit au polynôme nul.
4. Interpolation
Soit P P ker Φk alors Φk pP q “ 0R4 . On en déduit que xk´1 et xk sont racines de P, et P s’écrit
alors sous la forme
P pxq “ px ´ xk´1 qpx ´ xk qQpxq
avec Qpxq “ αx ` β polynôme de degré 1.
On a
P 1 pxq “ px ´ xk´1 qQpxq ` px ´ xk qQpxq ` αpx ´ xk´1 qpx ´ xk q
4.3.Exercices
et
P 2 pxq “ 2pQpxq ` αpx ´ xk´1 q ` αpx ´ xk q.
Comme P 2 pxk´1 q “ P 2 pxk q “ 0, on obtient
" "
Qpxk´1 q ` αpxk´1 ´ xk q “ 0, αpxk´1 ´ hq ` β “ 0,
ðñ
Qpxk q ` αpxk ´ xk´1 q “ 0, αpxk ` hq ` β “ 0,
En soustrayant la première équation à la deuxième, on obtient 3αh “ 0. Comme h ‰ 0, on obtient
α “ β “ 0. D’où Q ” 0 et donc P ” 0.
2. On a Sk2 pxq “ 6ak pxk ´ xq ` 6bk px ´ xk´1 q. Pour déterminer ak et bk , on utilise les équations (4.52c)
et (4.52d) qui deviennent respectivement 6hak “ mk´1 et 6hbak “ mk . On obtient
mk´1 mk
ak “ et bk “ .
6h 6h
Pour déterminer αk et βk on utilise les équations (4.52c) et (4.52d) qui deviennent respectivement
ak h3 ` αk h “ fk´1 et bk h3 ` βk h “ fk .
En remplaçant ak et bk par leurs valeurs, on obtient
fk´1 h fk h
αk “ ´ mk´1 et βk “ ´ mk .
h 6 h 6
Or par construction des Sk , on a Sk pxk q “ Sk`1 pxk q “ fk et donc la fonction g est bien définie sur
ra, bs.
2. Par construction, sur chaque intervalle rxk´1 ; xk s, la fonction g est polynomiale de degré inférieur
ou égal à 3. Pour quelle soit un spline cubique, il reste à démontrer qu’elle est deux fois continûment
différentiable sur ra, bs. Il suffit pour celà de vérifier qu’en chaque point xk , k P v1, n ´ 1w, la fonction
g est continue et admet des dérivées premières et secondes.
La continuité est immédiate puisque gpxk q “ fk . Pour les dérivées premières et secondes, il faut que
leurs limites à gauche et à droite soient égales, c’est à dire
Par construction des Sk , la seconde équation est immédiate : Sk2 pxk q “ Sk`1
2
pxk q “ mk . On a
1
Sk pxq “ ´3ak pxk ´ xq ` 3bk px ´ xk´1 q ´ αk ` βk et donc
2 2
h 1 h
Sk1 pxk q “ 3bk h2 ´ αk ` βk “ mk ` pfk ´ f k ´ 1q ´ pmk ´ mk´1 q
2 h 6
De même, on obtient
1 h 1 h
Sk`1 pxk q “ ´3ak`1 h2 ´ αk`1 ` βk`1 “ ´ mk ` pfk`1 ´ f kq ´ pmk`1 ´ mk q
2 h 6
Donc g sera dérivable en xk si Sk1 pxk q “ Sk`1
1
pxk q, c’est à dire si
4.3.0 Stabilité
h 1 h h 1 h
mk ` pfk ´ f k ´ 1q ´ pmk ´ mk´1 q “ ´ mk ` pfk`1 ´ f kq ´ pmk`1 ´ mk q
2 h 6 2 h 6
ce qui s’écrit encore, @k P v1, n ´ 1w,
6
4. Interpolation
Q. 4 1. La condition g 2 paq “ 0 se traduit par S12 px0 q “ 0 or par (4.52c) avec k “ 1 on a S12 px0 q “ m0
d’où m0 “ 0.
La condition g 2 pbq “ 0 se traduit par Sn2 pxn q “ 0 or par (4.52d) avec k “ n on a Sn2 pxn q “ mn d’où
4.3. Exercices
mn “ 0.
Pour déterminer les mk , k P v0, nw, on a n ` 1 équations linéaires qui s’écrivent sous la forme
matricielle AM
M “ b avec
¨ ˛
1 0 0 ... 0 ¨ ˛
. 0
˚
˚1 4 . ‹
. . .. ‹ ˚ f0 ´ 2f1 ` f2 ‹
˚ 1 ‹
˚ . . . ‹ 6 ˚
˚ ..
‹
‹
A “ ˚0 . . . . . . 0‹ et b “ 2 ˚ . ‹
˚ ‹ h ˚ ‹
˚. . ‹ ˝fn´2 ´ 2fn´1 ` fn ‚
˝ .. .. 1 4 1 ‚
0
0 ... 0 0 1
Soit f une fonction définie et intégrable sur un intervalle ra, bs donné. On propose de chercher des
approximations de
żb
I“ f pxqdx
a
dans le cas où l’on ne connait pas de primitive de f.
y = f(x)
f(b)
Z b
f(a)
f(x)dx
a
a b
şb
Figure 5.1: Représentation de a
f pxqdx (aire de la surface colorée)
Definition 5.1
avec @j P v0, nw wj P R et xj P ra, bs distincts deux à deux. L’erreur associée à cette formule de
150 Intégration numérique
Definition 5.2
On dit qu’une formule d’intégration (ou formule de quadrature) est d’ordre p ou a pour degré
d’exactitude p si elle est exacte pour les polynômes de degré inférieur ou égal à p.
şb
Méthode du rectangle à gauche : En figure 5.2, on représente l’approximation de a
f pxqdx lorsque
f est approché par le polynôme constant P pxq “ f paq.
y = f(x)
f(b)
5. Intégration numérique
f(a)
5.1. Méthodes de quadrature élémentaires
a b
şb
Figure 5.2: Formule du rectangle à gauche : a
f pxqdx « pb ´ aqf paq (aire de la surface colorée)
On a alors
żb
f pxqdx « Q0 pf, a, bq “ pb ´ aqf paq, formule du rectangle (à gauche)
a
y = f(x)
f(b)
f(a)
şb
Figure 5.3: Formule du rectangle à droite : a
f pxqdx « pb ´ aqf pbq (aire de la surface colorée)
5. Intégration numérique
5.1.Méthodes de quadrature élémentaires
f(c) y = f(x)
f(b)
f(a)
a c = a +2 b b
şb
Figure 5.4: Formule du point milieu : a
f pxqdx « pb ´ aqf p a`b
2 q (aire de la surface colorée)
şb
Méthode du point milieu : En figure 5.4, on représente l’approximation de a
f pxqdx lorsque f est
approché par le polynôme constant P pxq “ f ppa ` bq{2q. On a alors
żb ˆ ˙
a`b
f pxqdx « Q0 pf, a, bq “ pb ´ aqf , formule du point milieu
a 2
a`b b´a
x “ φptq “ a ` pb ´ aqt ou x “ φptq “ ` t
2 2
Proposition 5.3
Soit Qn pf, a, bq definie en (5.1), une formule de quadrature élémentaire à n ` 1 points pxi qiPv0,nw
(distincts deux à deux dans ra, bs).
On note x “ φptq “ α ` βt, β P R˚ , le changement de variable affine, ti “ φ´1 pxi q, @i P v0, nw, et
5. Intégration numérique
n
` ˘ÿ
Qn pg, φ´1 paq, φ´1 pbqq “ φ´1 pbq ´ φ´1 paq wi gpti q. (5.3)
i“0
Alors Qn pf, a, bq est de degré d’exactitude k si et seulement si Qn pg, φ´1 paq, φ´1 pbqq est de degré
d’exactitude k.
5.1. Méthodes de quadrature élémentaires
x´α
Preuve. On a φ´1 pxq “ β .
Or φ´1 est un polynôme de degré 1 et Q ˝ φ´1 est la composé de deux polynômes: c’est donc
un polynôme de degré le produit des degrés des deux polynômes, i.e. Q ˝ φ´1 P Rk rXs. Comme
Qn pf, a, bq est de degré d’exactitude k, on en déduit que
żb n
ÿ n
ÿ
Q ˝ φ´1 pxqdx “ Qn pQ ˝ φ´1 , a, bq “ pb ´ aq wi Q ˝ φ´1 pxi q “ pb ´ aq wi Qpti q.
a i“0 i“0
On a alors
ż φ´1 pbq n
b´a ÿ
Qptqdt “ wi Qpti q
φ´1 paq β i“0
or
b´α a´α b´a
φ´1 pbq ´ φ´1 paq “ ´ “ .
β β β
On en conclu donc que Qn pg, φ´1 paq, φ´1 pbqq est de degré d’exactitude k.
ð On suppose que Qn pg, φ´1 paq, φ´1 pbqq est de degré d’exactitude k. Soit P P Rk rXs. On a
żb ż φ´1 pbq
Ppxqdx “ β P ˝ φptqdt.
a φ´1 paq
Or φ est un polynôme de degré 1 et P ˝ φ´1 est la composé de deux polynômes: c’est donc
un polynôme de degré le produit des degrés des deux polynômes, i.e. P ˝ φ P Rk rXs. Comme
Qn pg, φ´1 paq, φ´1 pbqq est de degré d’exactitude k, on en déduit que
ż φ´1 pbq
P ˝ φptqdt “ Qn pP ˝ φ, φ´1 paq, φ´1 pbqq
φ´1 paq
n
` ˘ÿ
“ φ´1 pbq ´ φ´1 paq wi P ˝ φpti q
i“0
n
` ˘ÿ
“ φ´1 pbq ´ φ´1 paq wi Ppxi q.
i“0
On a alors żb n
` ˘ÿ
Proposition 5.4
5. Intégration numérique
Preuve. On commence par démontrer la linéarité. Soient f et g dans P C 0 pra, bs; Rq, et λ et µ deux réels.
Alors λf ` µg P C 0 pra, bs; Rq, et on a
n
ÿ
Qn pλf ` µg, a, bq “ pb ´ aq wj pλf ` µgqpxj q
j“0
Proposition 5.5
La formule de quadrature élémentaire (5.1) à n ` 1 points est de degré d’exactitude k (au moins) si
et seulement si
ÿn
br`1 ´ ar`1
pb ´ aq wi xri “ , @r P v0, kw. (5.4)
i“0
r`1
Preuve. • ñ Si la formule (5.1) est de degré d’exactitude k, elle est donc exacte pour tout polynôme
de Rk rXs et plus particulièrement pour tous les monômes 1, X, X 2 , . . . , X k . Soit r P v0, kw. En
prenant f pxq “ xr , la formule (5.1) étant exacte par hypothèse, on obtient
ÿn żb
hyp br`1 ´ ar`1
Qn px ÞÑ xr , a, bq “ pb ´ aq wi xri “ xr dx “
i“0 a r`1
• ð On suppose que l’on a (5.4). Soit P P Rk rXs. On va montrer que la formule de quadrature
(5.1) est alors exacte.
Le polynôme P peut s’écrire comme combinaison linéaire des monômes de t1, X, X 2 , . . . , X k u, base
5.1.2 Quelques résultats théoriques
de Rk rXs.
1ère démonstration: On a donc
k
ÿ
Ppxq “ αj xj , @x P R.
j“0
żb k
ÿ żb k
ÿ bj`1 ´ aj`1
Ppxqdx “ αj xj dx “ αj
a j“0 a j“0
j`1
Ppxqdx “ pb ´ aq αj wi xji
a j“0 i“0
Ce qui donne
żb n
ÿ
Ppxqdx “ pb ´ aq wi Ppxi q.
a i“0
La formule de quadrature est donc de degré d’exactitude k.
2ème démonstration: On a donc
k
ÿ
P“ αj X j
j“0
Par hypothèse, on a (5.4) et, comme par définition X j est le polynôme x ÞÑ xj , on obtient
żb żb
hyp bj`1 ´ aj`1
@j P v0, kw, Qn pX j , a, bq “ X j pxqdx “ xj dx “ .
a a j`1
et donc
żb k
ÿ
Ppxqdx “ αj Qn pX j , a, bq “ Qn pP, a, bq.
a j“0
Corollaire 5.6
Soient pxi qiPv0,nw des points deux à deux distincts de l’intervalle ra, bs donnés. Il existe alors une
unique formule de quadrature élémentaire (5.1) à n ` 1 points de degré d’exactitude n au moins.
Preuve. En fixant les points pxi qiPv0,nw deux à deux distincts, pour obtenir explicitement la formule de
quadrature de type (5.1) il faut déterminer les n ` 1 poids pwi qiPv0,nw . Or, de (5.4), en prenant k “ n, on
obtient exactement n ` 1 équations linéaires en les pwi q s’écrivant matriciellement sous la forme :
¨ ˛¨ ˛ ¨ ˛
1 1 ¨¨¨ 1 w0 b´a
5. Intégration numérique
2 2
˚ x0 x1 ¨ ¨ ¨ xn ‹ ˚ w 1 ‹ ˚ b ´a ‹
˚ ‹˚ ‹ ˚ 2 ‹
pb ´ aq ˚ . . . ‹ ˚ . ‹ “˚ .
.. ‹
˝ .. .. .. ‚˝ .. ‚ ˝ ‚
xn0 xn1 ¨¨¨ xnn wn bn`1 ´an`1
n`1
La matrice intervenant dans le système précédent s’appelle la matrice de Vandermonde et elle est
inversible (car les pxi q sont deux à deux distincts, voir Exercice B.3.13). Ceci établi donc l’existence et
On a alors @P P Rn rXs,
n
ÿ
pwi ´ w̃i qPpxi q “ 0. (5.5)
i“0
On rappelle que les fonctions de base de Lagrange associées aux pn ` 1q points pxi qiPv0,nw définies en (4.5),
notées Li , sont dans Rn rXs et vérifient
Li pxj q “ δi,j , @j P v0, nw
Soit j P v0, nw. En choisissant P “ Lj dans (5.5), on obtient
n
ÿ
0“ pwi ´ w̃i qLj pxi q “ pwj ´ w̃j q
i“0
Exercice 5.1.1
Soient pxi qni“0 pn ` 1q points donnés et distincts 2 à 2 d’un intervalle ra, bs (a ă b). Ecrire une
fonction algorithmique WeightsFromPoints permettant de déterminer les poids pwi qni“0 de telle
sorte que la formule de quadrature élémentaire associée soit de degré d’exactitude n au moins en
s’inspirant de résultats obtenus dans la démonstration de la Proposition 5.7. On pourra utiliser la
fonction algorithmique x Ð SolvepA, b q permettant de résoudre le système linéaire Ax x “ b.
Correction Exercice Nous avons vu, dans la Proposition 5.7, que pour avoir une formule de quadrature
élémentaire de degré d’exactitude n, il est nécessaire et suffisant que les pn`1q poids pwi qni“0 soient solution
du système linéaire suivant:
¨ ˛¨ ˛ ¨ ˛
1 1 ¨¨¨ 1 w0 b´a
2 2
˚ x0 x1 ¨ ¨ ¨ xn ‹ ˚ ‹ ˚ b ´a ‹
˚ ‹ ˚ w1 ‹ ˚ 2 ‹
pb ´ aq ˚ . .. .. ‹ ˚ .. ‹ “ ˚ .. ‹
˝ .. . . ‚ ˝ . ‚ ˝ . ‚
n`1 n`1
xn0 xn1 ¨ ¨ ¨ xn n
wn b ´a
n`1
5.1.2 Quelques résultats théoriques
Algorithme 5.1 Fonction WeightsFromPoints retournant le tableau des poids w associé à un tableau
de points x donnés (points 2 à 2 distincts) appartenant à un intervalle ra, bs.
Données : x :tableau de Rn`1 contenant pn ` 1q points distincts deux à deux
dans un intervalle ra, bs avec la convention
x piq “ xi´1 , @i P v1, n ` 1w
a, b : deux réels, a ă b.
Résultat : w : vecteur de Rn`1 avec w piq “ wi´1 , @i P v1, n ` 1w
1: Fonction w Ð WeightsFromPoints ( x , a, b )
2: b Ð O n`1
5. Intégration numérique
3: A Ð On`1,n`1
4: Pour i Ð 1 à n ` 1 faire
5: Pour j Ð 1 à n ` 1 faire
^
6: Api, jq Ð x pjq pi ´ 1q
7: Fin Pour
8: b piq Ð pb^ i ´ a^ iq{pi ˚ pb ´ aqq
5.1. Méthodes de quadrature élémentaires
9: Fin Pour
10: w Ð SolvepA, b q
11: Fin Fonction
Soit Qn pf, a, bq definie en (5.1), une formule de quadrature élémentaire à n ` 1 points (distincts
deux à deux et ordonnés). On dit qu’elle est symétrique si
xi ` xn´i a`b
@i P v0, nw, “ et wi “ wn´i . (5.6)
2 2
Dans ce cas si cette formule est exacte pour les polynômes de degré 2m alors elle est nécessairement
exacte pour les polynômes de degré 2m ` 1.
Comme la formule de quadrature est supposée exacte pour les polynôme de degré 2m, on a
5. Intégration numérique
Des propriétés de symétrie de la formule, on déduit
ˆ ˙
a`b a`b
xi ` xn´i “ a ` b ô xi ´ “´ xn´i ´
2 2
‚ Si n “ 2k, (n paire), on a alors un nombre impair de points avec nécessairement xk “ xn´k “ a`b2
Le résultat suivant fait le lien avec les polynômes d’interpolation de Lagrange pour établir une majo-
ration de l’erreur associée à une formule de quadrature élémentaire.
Proposition 5.9
Soit Qn pf, a, bq definie en (5.1), une formule de quadrature élémentaire à n ` 1 points pxi qiPv0,nw
(distincts deux à deux).
La formule de quadrature est de degré d’exactitude n au moins si et seulement si pour tout i P v0, nw,
les poids wi sont donnés par
żbź
n ż1ź
n
def1 x ´ xj t ´ tj
wi “ dx “ dx, @i P v0, nw (5.7)
b´a a x
j“0 i
´ xj 0 t
j“0 i
´ tj
j‰i j‰i
1 › › żb ź n
› pn`1q ›
|Ea,b pf q| ď ›f › | px ´ xi q|dx (5.8)
pn ` 1q! 8 a
i“0
Li pxqdx “ pb ´ aq Li ˝ sptqdt
a 0
Li ˝ sptqdt “ dt “ dt
0 0 j“0
spti q ´ sptj q 0 j“0
pb ´ aqpti ´ tj q
j‰i j‰i
ż 1źn
t ´ tj
“ dt
0 j“0 ti ´ tj
j‰i
On a alors żb żb
n
ÿ
Ln pf qpxqdx “ f pxi q Li pxqdx.
a i“0 a
ñ On suppose que la formule de quadrature est de degré d’exactitude n. Soit i P v0, nw, Li P Rn rXs
et on a alors par hypothèse
żb
hyp
Qn pLi , a, bq “ Li pxqdx.
a
n
ÿ
Qn pLi , a, bq “ pb ´ aq wj Li pxj q “ pb ´ aqwi .
j“0
On obtient donc
żb
1
wi “ Li pxqdx.
b´a a
ð On suppose les poids pwi qni“0 donnés par (5.7). La formule de quadrature s’écrit alors
n
ÿ żb
hyp
Qn pf, a, bq “ f pxi q Li pxqdx.
i“0 a
La formule de quadrature est donc exacte pour tout les polynômes de degré n au moins.
5. Intégration numérique
Pour démontrer l’inégalité (5.8), comme f P C n`1 pra, bs; Rq, on peut appliquer le théorème 4.4 pour
obtenir
n
f pn`1q pξx q ź
@x P ra, bs, Dξx P ra, bs, f pxq ´ Ln pf qpxq “ px ´ xi q
pn ` 1q! i“0
L’application f ´ Ln pf q étant intégrable sur ra, bs, l’application |f ´ Ln pf q| l’est aussi. De même |πn pxq|
est intégrable sur ra, bs. On obtient alors
› ›
żb › pn`1q › żb
›f ›
8
|f pxq ´ Ln pf qpxq|dx ď |πn pxq|dx.
a pn ` 1q! a
De plus
ˇż ˇ ż
ˇ b ˇ b
ˇ ˇ
ˇ f pxq ´ Ln pf qpxqdxˇ ď |f pxq ´ Ln pf qpxq|dx
ˇ a ˇ a
ce qui donne
ˇż ˇ › ›
ˇ b żb ˇ › pn`1q › żb ź
ˇ ˇ ›f › n
8
ˇ f pxqdx ´ Ln pf qpxqdxˇ ď | px ´ xi q|dx.
ˇ a a ˇ pn ` 1q! a i“0
ce qui donne
ˇż ˇ
ˇ b ˇ
ˇ ˇ
|Ea,b pf q| “ ˇ f pxqdx ´ Qn pf, a, bqˇ
ˇ a ˇ
ˇż żb ˇ
ˇ b ˇ
ˇ ˇ
5.1.2 Quelques résultats théoriques
“ ˇ f pxqdx ´ Ln pf qpxqdxˇ
ˇ a a ˇ
› ›
› pn`1q › ż
›f › b ź n
8
ď | px ´ xi q|dx.
pn ` 1q! a i“0
Exercice 5.1.2
xi ` xn´i a`b
@i P v0, nw, “ .
2 2
On note Li P Rn rXs, i P v0, nw les pn ` 1q polynômes de base de Lagrange définis par
źn
x ´ xj
5.1. Méthodes de quadrature élémentaires
Li pxq “
x ´ xj
j“0 i
j‰i
Correction Exercice
Q. 1 Soit i P v0, nw. On note φpxq “ pa ` bq ´ x le polynôme de degré 1 et P “ Li ˝ φ le polynôme de
Rn rXs (la composé de 2 polynômes est de degré le produit des degrés des 2 polynômes).
On a
@j P v0, nw, xn´j “ pa ` bq ´ xj
et
# #
1, si i “ n ´ j 1, si j “ n ´ i
Ppxj q “ Li ppa ` bq ´ xj q “ Li pxn´j q “ δi,n´j “ “ “ δn´i,j .
0, sinon 0, sinon
C’est à dire
@j P v0, nw, Ppxj q “ δn´i,j .
Or Ln´i est l’unique polynôme de Rn rXs vérifiant la relation précédente dont P “ Ln´i (voir Exer-
cice 4.1.1, page 126).
˛
De l’Exercice 5.1.2 et de la Proposition 5.8, on obtient le lemme suivant
5. Intégration numérique
Lemme 5.10
xi ` xn´i a`b
@i P v0, nw, “ .
2 2
On a alors
@i P v0, nw, wi “ wn´i
et la formule de quadrature élémentaire associée est de degré d’exactitude au moins n si n est
impaire et au moins n ` 1 sinon.
Soit Qn pf, a, bq défini par (5.1) une formule de quadrature élémentaire de degré d’exactitude au
moins n. Elle est alors de degré d’exactitude n ` m, m P N˚ , au moins si et seulement si
żb
πn pxqQpxqdx “ 0, @Q P Rm´1 rXs (5.9)
a
où les n ` 1 points xj sont distincts deux à deux dans l’intervalle ra, bs.
La formule de quadrature est exacte pour les polynômes de degré n ` m si et seulement si
żb
Ppxqdx “ Qn pP, a, bq, @P P Rn`m rXs
a
5.1.2 Quelques résultats théoriques
Soit P P Rn`m rXs, on peut effectuer la division euclidienne de P par πn P Rn`1 rXs. Il existe donc
Q P Rm´1 rXs (quotient) et R P Rn rXs (reste) tels que
P “ Qπn ` R.
On a alors par linéarite de l’intégrale
żb żb żb
Ppxqdx “ Qpxqπn pxqdx ` Rpxqdx
a a a
et par linéarite de Qn
Qn pP, a, bq “ Qn pQπn , a, bq ` Qn pR, a, bq.
Par hypothèse, la formule de quadrature a pour degré d’exactitude n et comme R P Rn rXs on obtient
5. Intégration numérique
żb
Rpxqdx “ Qn pR, a, bq.
a
a a
et donc żb żb
Ppxqdx ´ Qn pP, a, bq “ Qpxqπn pxqdx. (5.12)
a a
‚ La plus grande valeur que puisse prendre m est n ` 1 (i.e. m ` n “ 2n ` 1). En effet si m “ n ` 2
alors Q P Rn`1 rXs dans (5.9). Or πn P Rn`1 rXs et en prenant Q “ πn on obtient
żb żb
πn pxqQpxqdx “ Q2 pxqdx ą 0.
a a
On a alors
żb żb m´1
ÿ
Ppxqπn pxqdx “ πn pxq αk xk dx
Cette proposition sera utilisée pour déterminer les points de quadrature de la méthode de Gauss-
Legendre. Une fois connu les points de quadrature xi , les poids wi pourront être calculés par (5.7).
Si l’on choisi comme points de quadrature les n ` 1 points de la discrétisation régulière de l’intervalle
ra, bs, on obtient la méthode de Newton-Cotes.
Bien d’autres méthodes peuvent être obtenues (avec d’autres points), certaines permettant le calcul
şb
5. Intégration numérique
d’intégrales avec poids de la forme a wpxqf pxqdx :
‚ méthode de Newton-Cotes ouvertes,
‚ méthode de Gauss-Legendre,
‚ méthode de Gauss-Jacobi,
‚ méthode de Gauss-Tchebychev,
On a alors
xi ` xn´i a`b
@i P v0, nw, “ .
2 2
Proposition 5.12
Soient f P C 0 pra, bs; Rq et pxi qiPv0,nw une discrétisation régulière de l’intervalle ra, bs: xi “ a ` ih
avec h “ pb ´ aq{n.
19 25 25 25 25 19
5 5 288 96 144 144 96 288 ?
41 9 9 34 9 9 41
6 7 840 35 280 105 280 35 840 Weddle
751 3577 49 2989 2989 49 3577 751
7 7 17280 17280 640 17280 17280 640 17280 17280 ?
989 2944 464 5248 454 5248 464 2944 989
8 9 28350 14175 ´ 14175 14175 ´ 2835 14175 ´ 14175 14175 28350 ?
Démonstration 1: En effet, il suffit de remarquer que la formule doit être exacte si f est un polynôme
de degré au plus n. Ensuite par linéarité de la formule, on est ramené à résoudre une système
linéaire à n ` 1 inconnues (les pwi qiPv0,nw ) en écrivant que pour chaque monôme
n
ÿ żb
pb ´ aq wi f pxi q “ f pxqdx, @f P t1, X, X 2 , . . . , X n u Ă Rn rXs. (5.14)
i“0 a
5.1. Méthodes de quadrature élémentaires
Par exemple, pour n “ 2, on a b “ a ` 2h. A partir de (5.14) on obtient les trois équations :
$
& w0 ` w1 ` w2
’ “ 1,
şb
pf pxq “ 1q
1
aw0 ` pa ` hqw1 ` pa ` 2hqw2 “ b´a xdx “ a ` h, pf pxq “ xq
’
% a2 w ` pa ` hq2 w ` pa ` 2hq2 w “ 1
şab 2 1 2 2
0 1 2 b´a a x dx “ 3 p3a ` 6ah ` 4h q, pf pxq “ x2 q.
On a alors
$
& w0 “ ´w1 ´ w2 ` 1,
ap´w1 ´ w2 ` 1q ` pa ` hqw1 ` pa ` 2hqw2 “ a ` h,
% 2
a p´w1 ´ w2 ` 1q ` pa ` hq2 w1 ` pa ` 2hq2 w2 “ a2 ` 2ah ` 34 h2 .
c’est à dire $
& w0 “ ´w1 ´ w2 ` 1,
w1 ` 2w2 “ 1,
%
2apw1 ` 2w2 q ` hpw1 ` 4w2 q “ 2a ` 4h{3,
Par substitution, de la deuxième équation dans la troisième, on obtient enfin
$
& w0 “ ´w1 ´ w2 ` 1,
w1 ` 2w2 “ 1,
%
w1 ` 4w2 “ 4{3,
1
ce qui donne w0 “ w2 “ 6 et w1 “ 23 .
On a donc dans le cadre des points équidistants sur r0, 1s, ti “ i{n, @i P v0, nw et
źn źn n
ź
t ´ tj t ´ j{n nt ´ j
“ “
t ´ tj
j“0 i j“0
pi ´ jq{n j“0 i ´ j
j‰i j‰i j‰i
2t ´ 1 2t ´ 2
L0 ptq “ “ p2 t ´ 1qpt ´ 1q
´1 ´2
On sait par le Lemme 5.10 que, n “ 2 étant paire, la formule de quadrature élémentaire de Simpson est
au moins de degré d’exactitude 3. Pour montrer qu’elle est de degré d’exactitude 3, il suffit de vérifier
qu’elle n’est plus exacte pour le monôme x4 sur l’intervalle r0, 1s.
En effet, on a
ˆ ˙ ż1
5. Intégration numérique
1 4 1 4 4 5 1
0 ` 4p q ` 1 “ ‰ x4 dx “
6 2 24 0 5
Exercice 5.1.3
Correction Exercice
1: Fonction I Ð QuadElemGen ( f, a, b, x , w )
2: IÐ0
3: Pour i Ð 1 à Lengthpx xq faire
4: I Ð I ` w piq ˚ f px
xpiqq
5: Fin Pour
5.1.3 Formules élémentaires de Newton-Cotes
6: I Ð pb ´ aq ˚ I
7: Fin Fonction
I Ð pb ´ aq ˚ Dotpw
w , f px
xqq.
řn
Algorithme 5.4 Fonction QuadElemGen retourne la valeur de I “ pb ´ aq j“0 wj f pxj q où les poids
wi et les points xi sont ceux définis par la formule de quadrature élémentaire de Newton-Cotes
Données : f : une fonction définie de ra, bs dans R,
a, b : deux réels avec a ă b,
n : n P N˚
5. Intégration numérique
Résultat : I : un réel
1: Fonction I Ð QuadElemNC ( f, a, b, n )
2: x, w s Ð WeightsPointsNCpa, b, nq
rx
3: I Ð QuadElemGenpf, a, b, x , w q
4: Fin Fonction
5.1. Méthodes de quadrature élémentaires
Remarque 5.13 Pour les méthode de Newton-Cotes, il ne faut pas trop "monter" en ordre car le
phénomène de Runge (forte oscillation possible du polynôme d’interpolation sur les bords de l’intervalle)
peut conduire à de très grande erreurs. Au delà de n “ 7, des poids négatifs apparaissent dans les
formules et les rendent beaucoup plus sensibles aux erreurs d’arrondis.
Sur un exemple très simple, il est possible d’illustrer ce phénomène. Soit f pxq “ 3x`2. On a démontré
şb
que toutes les formules de Newton-Cotes à n`1 points, n ě 1, sont exactes pour le calcul de a f pxqdx car
f est un polynôme de degré 1. De plus les poids pwi qiPv0,nw peuvent être calculés sous forme fractionnaire
: il est immédiat à partir de la formule (5.7) que wi P Q.
En choissant, par exemple, a “ 0 et b “ 1 les n ` 1 points xi de la formule de Newton-Cotes sont aussi
des nombres rationnels. La fonction f étant polynomiale, on obtient f pxi q P Q. On en déduit que la
formule de Newton-Cotes à n ` 1 points donne dans ce cas un résultat (exacte) sous forme fractionnaire.
Numériquement, les poids wi P Q et les points xi P Q vont être approchés en commettant de très
petites erreurs. Sous Sage, logiciel gratuit de calcul formel (entre autres), on peut programmer à la fois
le calcul des méthodes de Newton-Cotes exactes (en restant dans le corps Q) et le calcul "approché"
correspondant aux méthodes de Newton-Cotes approchées (i.e. les wi et les xi sont approchés avant le
calcul de la somme). On représente en Figure 5.5 les erreurs obtenues en fonction de n par ces deux
approches. Ces courbes en échelle logarithmique en ordonnées ont été obtenues en ajoutant aux erreurs
le nombre 1e ´ 16 (pour éviter de prendre le log de zéro).
error
Numerical Newton-Cotes
Analytical Newton-Cotes
10-5
10-7
10-9
10-11
10-13
10-15
n
0 10 20 30 40 50 60
Exercice 5.1.4
Q. 1 Déterminer les points t0 , t1 de l’intervalle r´1, 1s et les poids w0 , w1 tel que la formule de
quadrature
ż1 1
ÿ
gptqdt « 2 wi gpti q
´1
5. Intégration numérique
i“0
Correction Exercice
Q. 1 D’après la Proposition 5.9, si t0 et t1 sont distincts et dans l’intervalle r´1, 1s alors avec
c’est à dire ż1 ż1
π1 ptqdt “ 0 et π1 ptqtdt “ 0.
´1 ´1
Or on a ż1 ż1
2
π1 ptqdt “ t2 ´ pt0 ` t1 qt ` t0 t1 dt “ ` 2t0 t1
´1 ´1 3
et ż1 ż1
2
π1 ptqtdt “ t3 ´ pt0 ` t1 qt2 ` t0 t1 tdt “ ´ pt0 ` t1 q.
´1 ´1 3
On est amené à résoudre le système non linéaire
1 2
t0 t1 “ ´ et ´ pt0 ` t1 q “ 0
3 3
a a
ce qui donne t0 “ ´ p3q{3 et t1 “ p3q{3.
Il reste à calculer w0 et w1 . On a
ż a ż a
1 1 t ´ p3q{3 1 1 ´ p3q{3
w0 “ a dt “ a dt “ 1{2
2 ´1 ´2 p3q{3 2 ´1 ´2 p3q{3
et ż1 a ż a
1 t ` p3q{3 1 1 p3q{3
w1 “ a dt “ a dt “ 1{2.
2 ´1 2 p3q{3 2 ´1 2 p3q{3
5.1.4 Formules élémentaires de Gauss-Legendre
La formule de quadrature ? ?
ż1
3 3
gptqdt « gp´ q ` gp q
´1 3 3
est donc d’ordre 3.
Avant d’établir des résultats plus généraux, on donne quelques résultats classiques sur les polynômes
de Legendre [].
Les polynômes de Legendre peuvent être définis par la formule de récurrence de Bonnet
prop.4 Pour n ě 1, Pn est scindé sur R et ses n racines sont simples dans s ´ 1, 1r, c’est à dire
n´1
ź
Pn ptq “ C pt ´ ti q, C P R˚
i“0
où les ti sont 2 à 2 distincts (et ordonnés). Les pn ` 1q racines simples de Pn`1 sont alors chacunes
dans l’un des pn ` 1q intervalles s ´ 1, t0 r, st0 , t1 r, . . . , stn´2 , tn´1 r, stn´1 , 1r.
Proposition 5.14
Soit pti qni“0 les n ` 1 racines distinctes du polynôme de Legendre de degré pn ` 1q. On note xi “
a`b b´a
2 ` 2 ti , @i P v0, nw et wi les poids donnés par (5.7). La formule de quadrature élémentaire
żb n
ÿ
f pxqdx « pb ´ aq wi f pxi q
a i“0
Preuve. D’après la Proposition 5.3, il suffit de démontrer ce résultat sur l’intervalle r´1, 1s à l’aide du
changement de variable affine x “ φptq “ a`b b´a
2 ` 2 t.
Montrons donc que la formule de quadrature élémentaire
ż1 n
ÿ
gptqdt « 2 wi gpti q
´1 i“0
5. Intégration numérique
ż1
πn ptqQptqdt “ 0, @Q P Rn rXs
´1
śn
avec πn ptq “ i“0 pt ´ ti q. D’après les propriétés des polynômes de Legendre Pn , on a Pn`1 ptq “ Cπn ptq
avec C P R˚ . On doit donc avoir de manière équivalente
ż1
Pn`1 ptqQptqdt “ 0, @Q P Rn rXs.
Or, la famille des les polynômes de Legendre tP0 , . . . , Pn u est une base de Rn rXs et comme les polynômes
de Legendre sont orthogonaux, la relation précedente est vérifiée.
Pour démontrer l’unicité de la formule, il suffit d’établir l’unicité des points de quadrature, les poids
étant calculés à partir de ces points.
L’unicité du pn ` 1q-uplet px0 , . . . , xn q revient à établirśl’unicité du pn ` 1q-uplet śnpt0 , . . . , tn q. Supposons
n
qu’il existe pt0 , . . . , tn q et pt̃0 , . . . , t̃n q. Notons πn ptq “ i“0 pt ´ ti q et π̃n ptq “ i“0 pt ´ t̃i q. On a donc
ż1 ż1
πn ptqQptqdt “ π̃n ptqQptqdt “ 0, @Q P Rn rXs
´1 ´1
Le polynôme R “ πn ´ π̃ est dans Rn rXs car les polynômes πn et π̃n de Rn`1 rXs sont unitaires. On a
alors ż1
RptqQptqdt “ 0, @Q P Rn rXs
´1
En choisissant Q “ R, on obtient ż1
R2 ptqdt “ 0
´1
ce qui entraine R “ 0.
Théorème 5.15
Soient f P C 2n`2 pra, bs; Rq et Qn pf, a, bq la formule de quadrature de Gauss-Legendre définie dans
la Proposition 5.14. Alors on a
żb › p2n`2q › ż
›f › b
8
| f pxqdx ´ Qn pf, a, bq| ď πn pxq2 dx (5.17)
a p2n ` 2q! a
śn
où πn pxq “ i“0 px ´ xi q, les xi étant les points de la formule de quadrature.
La fonction f étant dans C 2n`2 pra, bs; Rq, on peut appliquer le Théorème 4.12 et pour tout x P ra, bs,
5.1.4 Formules élémentaires de Gauss-Legendre
i“0
ÿn
“ pb ´ aq wi f pxi q
i“0
“ Qn pf, a, bq.
On a donc żb żb
f p2n`2q pξx q
f pxqdx ´ Qn pf, a, bq “ pπn pxqq2 dx.
p2n ` 2q!
5.1. Méthodes de quadrature élémentaires
a a
Ce qui donne › p2n`2q › ż
żb ›f › b
8
| f pxqdx ´ Qn pf, a, bq| ď πn pxq2 dx.
a p2n ` 2q! a
Exercice 5.1.5
L’objectif de cet exercice est de calculer les points et les poids de la formule de quadrature de
Gauss-Legendre à pn ` 1q points. La formule de quadrature de Gauss-Legendre à pn ` 1q points sur
r´1, 1s est donnée par
ż1 ÿn
gptqdt « 2 wi gpti q
´1 i“0
où les pti qni“0 sont les n ` 1 racines du polynôme de Legendre Pn`1 ptq. Cette formule à pour degré
d’exactitude 2n ` 1.ş
1 1{2
Soient xP, Qy “ ´1 PptqQptqdt le produit scalaire sur RrXs et }P} “ xP, Py la norme associée.
Pn
Soit Mn le polynôme de Legendre normalisé de degré pn ` 1q, Mn “ }P n}
. On utilisera les résultats
sur les polynômes de Legendre rappelés en cours.
Q. 1 Montrer que
cn`1 Mn`1 ptq “ tMn ptq ´ cn Mn´1 ptq, n ą 1 (5.18)
avec c c c
1 3 n2
M0 ptq “ , M1 ptq “ t et cn “
2 2 4n2´1
On définit le vecteur M ptq de Rn`1 par
Q. 3 En déduire que les pn ` 1q racines distinctes de Mn`1 P Rn`1 rXs sont les pn ` 1q valeurs
Q. 4 Montrer que ÿ
wk Mi ptk qMj ptk q “ δi,j , @pi, jq P v0, nw2 (5.20)
k“0
où δi,j “ 0, si i ‰ j et δi,i “ 1.
On note W P Mn`1 pRq la matrice diagonale, de diagonale pw0 , . . . , wn q et P P Mn`1 pRq la
matrice définie par Pi`1,j`1 “ Mj pti q, @pi, jq P v0, nw2 .
Q. 5 1. Montrer que 2Pt WP “ I.
2. En déduire que W-1 “ 2PPt .
řn 2
3. En déduire que w1i “ 2 k“0 pMk pti qq , @i P v0, nw.
On suppose que l’on dispose de la fonction algorithmique eigpAq retournant l’ensemble des
valeurs propres d’une matrice symétrique A P Mn`1 pRq dans l’ordre croissant sous la forme d’un
5. Intégration numérique
vecteur de Rn`1 .
Q. 6 1. Ecrire la fonction rtt, w s Ð GaussLegendrepnq retournant le tableau des points t et le
tableau des poids w en utilisant les résultats obtenus dans cet exercice.
2. Ecrire la fonction I Ð QuadElemGaussLegendrepf, a, b, nq retournant une approximation
şb
de a f pxqdx en utilisant la formule de quadrature de Gauss-Legendre à pn ` 1q points sur
l’intervalle ra, bs.
4. Pour n ě 1, Pn est scindé sur R et ses n racines sont simples dans s ´ 1, 1r, c’est à dire
n´1
ź
Pn ptq “ C pt ´ ti q, C P R˚
i“0
où les ti sont 2 à 2 distincts (et ordonnés). Les n ` 1 racines simples de Pn`1 sont alors chacunes
dans l’un des n ` 1 intervalles sa, t0r, st0 , t1 r, . . . , stn´2 , tn´1 r, stn´1 , br.
Pn
Q. 1 Par définition, on a Mn “ }Pn } et
ż1
2 2
}Pn } “ xPn , Pn y “ Pn ptqPn ptqdx “ .
´1 2n ` 1
On en déduit que c
2n ` 1
Pn . Mn “
2
De plus, par la formule de récurrence de Bonnet, on obtient
5.1.4 Formules élémentaires de Gauss-Legendre
c c
1 3
M0 ptq “ et M1 ptq “ t
2 2
ainsi que, @n ě 1,
c c c
2 2 2
pn ` 1q Mn`1 ptq “ p2n ` 1q tMn ptq ´ n Mn´1
2n ` 3 2n ` 1 2n ´ 1
c
a 2
“ 2p2n ` 1qtMn ptq ´ n Mn´1
2n ´ 1
b
1
En multipliant cette équation par 2p2n`1q , on a
c d c d
2 1 2 1
5. Intégration numérique
Or on a c d d
2 1 n2
n “ “ cn
2n ´ 1 2p2n ` 1q p2n ´ 1qp2n ` 1q
et c d d
2 1 pn ` 1q2
5.1. Méthodes de quadrature élémentaires
pn ` 1q “ “ cn`1
2n ` 3 2p2n ` 1q p2pn ` 1q ´ 1qp2pn ` 1q ` 1q
ce qui démontre le résultat voulu.
Q. 3 Le polynôme de Legendre Pn`1 P Rn`1 rXs admet pn ` 1q racines simples distinctes dans s ´ 1, 1r
notées pti qni“0 . (voir rappels) Donc le polynôme de Legendre normalisé Mn`1 P Rn`1 rXs a les mêmes
racines et on déduit de la question précédente que
Comme les pn`1q racines de Pn`1 séparent strictement les n racines de Pn (voir rappels), alors Pn pti q ‰ 0
et donc Mn pti q ‰ 0. On en déduit que le vecteur M pti q est non nul et,
On peut noter que A est symétrique et donc ses valeurs propres sont réelles.
Les pn ` 1q valeurs propres de la matrice A sont les pn ` 1q racines de Pn`1 , et donc les pn ` 1q points de
la formule de quadrature de Gauss-Legendre.
Q. 4 Par construction, on a
ż1
5. Intégration numérique
n`1
ÿ
“ Pk,i pWPqk,j
k“1
W-1 “ 2PPt .
` ˘ 1 1
W-1 i,i
“ “ , @i P v1, n ` 1w.
Wi,i wi´1
On a donc
1 ` ˘
“ 2 PPt i,i
wi´1
n`1
ÿ ` ˘
“2 Pi,j Pt j,i
5.1.4 Formules élémentaires de Gauss-Legendre
j“1
n`1
ÿ
“2 P2i,j
j“1
ÿn
2
“2 pMk pti´1 qq , @i P v1, n ` 1w.
k“0
Q. 6 1. Les pn ` 1q points pti qni“0 de la méthode de quadrature de Gauss-Legendre sur r´1, 1s, sont
les racines du polynôme de Legendre Pn`1 de degré n ` 1. Pour les calculer, on va utiliser le fait
que ce sont les valeurs propres de la matrice symétrique A P Mn`1 pRq
5. Intégration numérique
¨ ˛
0 c1 0 ... ... 0
˚c1 0 c2 0 ... 0‹
˚ ‹
˚ .. .. .. .. .. ‹
˚0 . . . . .‹
˚ ‹
˚. .. .. .. .. ‹
˚ .. . . . . 0‹
˚ ‹
˝0 cn ‚
5.1. Méthodes de quadrature élémentaires
... 0 cn´1 0
0 ... ... 0 cn 0
b
2
avec ck “ 4kk2 ´1 , @k ě 1.
Pour calculer les poids pwi qni“0 , on va utiliser la formule
ÿn
1 2
“2 pMk pti qq , @i P v0, nw
wi k“0
c c
1` ˘ 1 3
Mk ptq “ tMk´1 ptq ´ ck´1 Mk´2 ptq , k ě 2, avec M0 ptq “ , M1 ptq “ t.
ck 2 2
Algorithme 5.5 Fonction GaussLegendre retournant le tableau des points t et le tableau des poids w
Données : n : n P N
Résultat : t : vecteur de Rn`1 avec t piq “ ti´1 , @i P v1, n ` 1w
w : vecteur de Rn`1 avec w piq “ wi´1 , @i P v1, n ` 1w
5. Intégration numérique
2. On va utiliser la formule
n
ÿ
I “ pb ´ aq “ wi f pxi q
i“0
1: Fonction I Ð QuadElemGaussLegendre ( f, a, b, n )
2: rtt, w s Ð GaussLegendrepnq
3: IÐ0
4: Pour i Ð 1 à n ` 1 faire
5: I Ð I ` w piq ˚ f ppa ` bq{2 ` pb ´ aq{2 ˚ tpiqq
6: Fin Pour
7: I Ð pb ´ aq ˚ I
8: Fin Fonction
k
ÿ żβ
Qcomp
k,n pf, α, βq “ Qn pf, αi´1 , αi q « f pxqdx (5.21)
i“1 α
Definition 5.16
α “ α0 ă α1 ă ¨ ¨ ¨ ă αk “ β.
On a alors
żβ k ż αi
5.2.1 Exemples
ÿ
f pxqdx “ f pxqdx. (5.22)
α i“1 αi´1
k
ÿ żβ
5.2. Méthodes de quadrature composées
Qcomp
k,n pf, α, βq “ Qn pf, αi´1 , αi q « f pxqdx (5.23)
i“1 α
Proposition 5.17
Soit Qn une formule de quadrature élémentaire à n ` 1 points. Si Qn est d’ordre p alors la méthode
de quadrature composée associée est aussi d’ordre p : elle est exacte pour tout polynôme de degré
p.
5.2.1 Exemples
Pour les trois formules composites qui suivent on choisit une discrétisation régulière. Soit pαi qiPv0,kw une
discrétisation régulière de l’intervalle rα; βs : αi “ α ` ih avec h “ pβ ´ αq{k le pas de la discrétisation.
On illustre graphiquement l’approximation d’une intégrale par cette formule en Figure 5.6.
y = f(x)
f(m )6
f(m )5
f(m )7
ff((m
m ))
4
1
ff((m
m ))
2
3 αm m m m m m m m m β
1 2 3 4 5 6 7 8 9
f(m )
8
f(m )9
5.2.1 Exemples
k
ÿ
şβ
Figure 5.6: Formule composite des points milieux : α
f pxqdx « h f pmj q (aire de la surface colorée)
j“1
5. Intégration numérique
5.2.Méthodes de quadrature composées
Formule composite des trapèzes
def b´a
Q1 pg, a, bq “ pgpaq ` gpbqq
2
On obtient alors
żb k ż αj
ÿ k
ÿ k
h ÿ
f pxqdx “ f pxqdx « Q0 pf, αj´1 , αj q “ pf pαj´1 q ` f pαj qq
a j“1 αj´1 j“1
2 j“1
˜ ¸
k´1
ÿ
h
« f pα0 q ` 2 f pαj q ` f pαk q (5.25)
2 j“1
On illustre graphiquement l’approximation d’une intégrale par cette formule en Figure 5.7.
y = f(x)
f(α5 )
f(α6 )
f(α4 )
f(α0 )
f(α7 )
f(α1 )
f(α3 )
f(α2 ) α 0 α 1 α2 α 3 α 4 α 5 α 6 α7 α 8
f(α8 )
f(α9 )
˜ ¸
k´1
ÿ
şβ
h
Figure 5.7: Formule composite des trapèzes : α f pxqdx « f pα0 q ` 2 f pαj q ` f pαk q (aire de la
2
5.2.1 Exemples
j“1
surface colorée)
5. Intégration numérique
5.2. Méthodes de quadrature composées
Exercice 5.2.1
Ecrire une fonction algorithmique QuadSimpson retournant une approximation de l’intégrale d’une
fonction f sur l’intervalle rα, βs utilisant la méthode de quadrature composée de Simpson en min-
imisant le nombre d’appels à la fonction f. On rappelle que la formule élémentaire de Simpson est
donnée par
def b ´ a a`b
Q2 pg, a, bq “ pgpaq ` 4gp q ` gpbqq.
6 2
αj´1 `αj
Correction Exercice En notant mj “ 2 le point milieu de l’intervalle rαj´1 , αj s, on obtient
żb k ż αj
ÿ k
ÿ k
h ÿ
f pxqdx f pxqdx « Q2 pf, αj´1 , αj q “ pf pαj´1 q ` 4f pmj q ` f pαj qq
a j“1 αj´1 j“1
6 j“1
˜ ¸
ÿk k´1
ÿ
h
« 4 f pmj q ` f pα0 q ` 2 f pαj q ` f pαk q (5.26)
6 j“1 j“1
Algorithme 5.7 Fonction QuadSimpson retourne une approximation de l’intégrale d’une fonction f sur
l’intervalle rα, βs utilisant la méthode de quadrature composée de Simpson en minimisant le nombre
d’appels à la fonction f.
Données : f : une fonction définie de ralpha, betas dans R,
alpha, beta : deux réels avec alpha ă beta,
k : n P N˚
Résultat : I : un réel
5. Intégration numérique
˛
f(α )
2
f(α )
3
f(α )
f(m )
0
1
f(m )
0
f(α )
1 α m α m α m α m α
0 0 1 1 2 2 3 3 4
f(m )
3
˜ ¸
k
ÿ k´1
ÿ
şβ h
Figure 5.8: Formule composite de Simpson : α f pxqdx « 4 f pmj q ` f pα0 q ` 2 f pαj q ` f pαk q
6 j“1 j“1
(aire de la surface colorée)
Soit Qcomp
k,n une méthode de quadrature composée associée à une méthode de quadrature élémentaire Qn .
comp
On note Eα,β pf q l’erreur de cette méthode de quadrature composée :
żβ
comp
Eα,β pf q “ f pxqdx ´ Qcomp
k,n pf, α, βq. (5.27)
α
On a alors
˜ż ¸
k
ÿ αj k
ÿ
comp
Eα,β pf q “ f pxqdx ´ Qn pf, αj´1 , αj q “ Eαj´1 ,αj pf q
j“1 αj´1 j“1
5.2.2 Erreurs des méthodes de quadrature composées
Dans le cadre des méthodes composées de Newton-Cotes, on peut démontrer (voir [2]), la majoration
suivante
n
ź e´n
max | px ´ xi q| ď C ? pb ´ aqn`1 . (5.28)
xPra,bs
i“0
n logpnq
où pxi qiPv0,nw est la discrétisation régulière de ra, bs et C ą 0. On suppose que f P C n`1 pra, bs; Rq. En
notant hj “ αj ´ αj´1 et en utilisant les majorations (5.8) et (5.28) on obtient
k
ÿ
comp
|Eα,β pf q| ď |Eαj´1 ,αj pf q|
j“1
k
ÿ Kn e´n
ď max | f pn`1q pxq|hjn`2 avec Kn “ C ?
j“1
pn ` 1q! xPrαj´1 ,αj s n logpnq
5. Intégration numérique
ÿk
hn`1
ď Kn max | f pn`1q pxq| hj avec h “ max hj
pn ` 1q! xPrα,βs j“1
jPv1,kw
hn`1 ›› pn`1q ››
ď Kn pβ ´ αq ›f ›
pn ` 1q! 8
Cette majoration n’est pas optimale et n’est valable que pour les formules composées de Newton-Cotes.
A l’aide des noyaux de Peano, on peut démontrer le théorème suivant :
5.2. Méthodes de quadrature composées
Soient Qcomp
k,n une méthode de quadrature composée associée à une méthode de quadrature élémen-
taire Qn de degré d’exactitude p ě n et f P C p`1 prα, βs; Rq. On a alors
żβ › ›
p`1 › pp`1q ›
| f pxqdx ´ Qcomp
k,n pf, α, βq| ď C p pβ ´ αqh ›f › (5.29)
α 8
żβ
| f pxqdx ´ Qcomp
k,n pf, α, βq| “ O ph
p`1
q (5.30)
α
10 0
NC(1)
NC(2)
NC(3)
NC(4)
NC(5)
NC(6)
10 -5 NC(7)
NC(8)
2
O(h )
relative error
O(h 4 )
6
O(h )
O(h 8 )
10 -10 10
O(h )
10 -15
ż 5π{2
Figure 5.9: Erreur des méthodes de Newton-Cotes composées pour le calcul de cospxqdx, NC(n)
0
correspondant à Qcomp
k,n et h “ 5π
2k .
5. Intégration numérique
10 0
NC(1)
NC(2)
NC(3)
4
O(h )
O(h 6 )
O(h 8 )
10 -10
O(h 10 )
10 -15
10 -1 10 0 10 1
h
ż5
1
Figure 5.10: Erreur des méthodes de Newton-Cotes composées pour le calcul de dx, NC(n)
´5 1 ` x2
correspondant à Qcomp
k,n et h “ 10
k .
10 0
GL(1)
GL(2)
GL(3)
GL(4)
GL(5)
4
O(h )
10 -5 O(h )
6
8
O(h )
10
relative error
O(h )
12
O(h )
10 -10
10 -15
5.2.2 Erreurs des méthodes de quadrature composées
10 -1 10 0 10 1
h
ż 5π{2
Figure 5.11: Erreur des méthodes de Gauss-Legendre composées pour le calcul de cospxqdx, GL(n)
0
correspondant à Qcomp
k,n et h “ 5π
2k .
10 0
GL(1)
GL(2)
GL(3)
GL(4)
GL(5)
O(h 4 )
10 -5 O(h )
6
5. Intégration numérique
O(h 8 )
10
relative error
O(h )
O(h 12 )
10 -10
10 -15
5.2. Méthodes de quadrature composées
10 -1 10 0 10 1
h
ż5
1
Figure 5.12: Erreur des méthodes de Gauss-Legendre composées pour le calcul de dx, GL(n)
´5 1 ` x2
correspondant à Qcomp
k,n et h “ 10
k .
De manière générale, l’ordre de convergence de l’approximation d’une formule, d’un schéma, d’une méth-
ode est donné par une majoration de la norme de la différence entre la solution exacte uex d’un problème
et son approximation uh où usuellement h est un paramètre correspondant à la finesse de l’approximation
numérique (plus la méthode numérique est précise, plus h est proche de 0). On dit alors qu’une méthode
numérique est convergente d’ordre p si
}uex ´ uh } “ Ophp q.
On retouve cette notion d’ordre dans la résolution numérique d’E.D.O.1 , dans la résolution numérique
d’E.D.P.2 par différences finies, éléments finis, volumes finis. Ceci permettra de vérifier/valider les
méthodes numériques implémentées.
Dans le cadre de l’intégration numérique, le Théorème 5.18 et plus particulièrement la formule (5.2.2),
affirme que si une méthode de quadrature élémentaire Qn est de degré d’exactitude p ě n et que f P
C p`1 prα, βs; Rq alors
żβ
| f pxqdx ´ Qcomp
k,n pf, α, βq| “ O ph
p`1
q.
α
Ephq “ Ch4 .
On en déduit que si l’on multiplie N par 10 alors l’erreur sera divisée par 104 . En effet, on a
`h˘ ` h ˘4 Ephq
E “C “ .
10 10 104
şπ{2
Pour illustrer ceci, on propose le Listing 5.1 où est calculé une approximation de 0 cospxqdx par la
méthode composée des trapèzes (degré d’exactitude 1) et par la méthode composée de Simpson (degré
d’exactitude 3): on remarque que l’erreur pour la méthode des trapèzes entre N “ 10 et N “ 100 est
bien divisée par 102 et, pour la méthode de Simpson, elle est bien divisée par 104 .
5. Intégration numérique
Listing 5.1: : script Matlab pour illustrer l’ordre des méthodes des Trapèzes et de Simpson
f = @ ( x ) cos ( x ) ;
F = @ ( x ) sin ( x ) ;
a =0; b = pi /2;
Iex = F ( b ) -F ( a ) ;
I1 = QuadTrapeze (f ,a ,b ,10) ;
I2 = QuadTrapeze (f ,a ,b ,100) ;
fprintf ( ’ Erreurs ␣ Trapeze : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =100) ␣ %.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) )
I1 = QuadSimpson (f ,a ,b ,10) ;
I2 = QuadSimpson (f ,a ,b ,100) ;
fprintf ( ’ Erreurs ␣ Simpson : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =100) ␣ %.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) )
Output
Erreurs Trapeze: (N=10) 2.05701e-03 - (N=100) 2.05618e-05
Nous allons maintenant représenter graphiquement ce phénomène. On note tout d’abord que
et donc, en échelle logarithmique, on va représenter logphq Ñ logpEphqq qui est une droite de pente 4. En
Figure 5.13, on représente en échelle logarithmique les différentes erreurs ainsi que les fonctions h Ñ h2
et h Ñ h4 . Le code Matlab/Octave est donné en Listing 5.2.
f = @ ( x ) cos ( x ) ;
F = @ ( x ) sin ( x ) ;
a =0; b = pi /2;
Iex = F ( b ) -F ( a ) ;
LN =25:25:200;
k =1;
for N = LN
H ( k ) =( b - a ) / N ;
1 Equations Différentielles Ordinaires
2 Equations aux Dérivées Partielles
10 -2
Trapeze
5.2.2 Erreurs des méthodes de quadrature composées
Simpson
2
O(h )
10 -4 O(h 4 )
10 -6
E(h)
10 -8
10 -10
10 -12
10 -2 10 -1
5. Intégration numérique
şπ{2
Figure 5.13: Ordre des méthodes composites des Trapèzes et de Simpson pour le calcul de 0
cospxqdx
ş1
On donne en Listing 5.3, un exemple pour le calcul approché de 0
x3{2 dx dont les résultats posent
question.
5.2. Méthodes de quadrature composées
Listing 5.3: : Exemple 1, script Matlab/Octave pour illustrer des changements de comportements des ordres
f = @ ( x ) x .^(3/2) ;
F = @ ( x ) x .^(3/2+1) /(3/2+1) ;
a =0; b =1;
Iex = F ( b ) -F ( a ) ;
I1 = QuadTrapeze (f ,a ,b ,10) ;
I2 = QuadTrapeze (f ,a ,b ,100) ;
fprintf ( ’ Erreurs ␣ Trapeze : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =100) ␣ %.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) )
I1 = QuadSimpson (f ,a ,b ,10) ;
I2 = QuadSimpson (f ,a ,b ,100) ;
fprintf ( ’ Erreurs ␣ Simpson : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =100) ␣ %.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) )
Output
Erreurs Trapeze: (N=10) 1.16946e-03 - (N=100) 1.22452e-05
Erreurs Simpson: (N=10) 7.85521e-06 - (N=100) 2.48802e-08
On ne retrouve le bon ordre pour la méthode de Simpson car la fonction ne vérifie par les hypothèses du
Théorème 5.18: la dérivée seconde de la fonction x ÞÑ x3{2 n’est pas définie en 0.
ş1
On donne en Listing 5.4, un autre exemple pour le calcul approché de ´1 |x|dx dont les résultats
posent question.
Listing 5.4: : Exemple 2, script Matlab/Octave pour illustrer des changements de comportements des erreurs
f = @ ( x ) abs ( x ) ;
a = -1; b =1;
Iex =1;
I1 = QuadTrapeze (f ,a ,b ,10) ;
I2 = QuadTrapeze (f ,a ,b ,11) ;
I3 = QuadTrapeze (f ,a ,b ,12) ;
I4 = QuadTrapeze (f ,a ,b ,13) ;
fprintf ( ’ Erreurs ␣ Trapeze : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =11) ␣ %.5 e␣ -␣ ( N =12) ␣ %.5 e ␣ -( N =13) ␣...
%.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) , abs ( I3 - Iex ) , abs ( I4 - Iex ) )
I1 = QuadSimpson (f ,a ,b ,10) ;
I2 = QuadSimpson (f ,a ,b ,11) ;
I3 = QuadSimpson (f ,a ,b ,12) ;
I4 = QuadSimpson (f ,a ,b ,13) ;
fprintf ( ’ Erreurs ␣ Simpson : ␣ ( N =10) ␣ %.5 e ␣ -␣ ( N =11) ␣ %.5 e␣ -␣ ( N =12) ␣ %.5 e ␣ -( N =13) ␣...
%.5 e \ n ’ , abs ( I1 - Iex ) , abs ( I2 - Iex ) , abs ( I3 - Iex ) , abs ( I4 - Iex ) )
Output
Erreurs Trapeze: (N=10) 0.00000e+00 - (N=11) 8.26446e-03 - (N=12) 0.00000e+00 -(N=13) 5.91716e-03
Erreurs Simpson: (N=10) 0.00000e+00 - (N=11) 2.75482e-03 - (N=12) 0.00000e+00 -(N=13) 1.97239e-03
Cette fois la fonction n’est pas dérivable en 0! Le Théorème 5.18 ne peut s’appliquer. Toutefois, les
deux formules donnent un résultat exacte pour N pair. En effet, dans ce cas le point 0 est un point de
discrétisation
ş0 des méthodes
ş1 composées et dans ce cas on est ramené à calculer numériquement les deux
intégrales ´1 p´xqdx et 0 pxqdx ce qui donnera des résultats exactes puisque les 2 méthodes sont exactes
. Intégration numérique
c 6 2
Une nouvelle utilisation de Simpson en x donne
żb ˆ ˙
b´a a`b
I“ gpxqdx « gpaq ` 4gp q ` gpbq
a 6 2
ˆ ˙
b´a a`b
« g̃paq ` 4g̃p q ` g̃pbq
6 2
a`b c`d
En posant α “ 2 et β “ on obtient la formule de quadrature de Simpson "2D" :
2 ,
¨ ˛
f pa, cq ` 4f pa, βq ` f pa, dq
b´ad´c˝
I« `4pf pα, cq ` 4f pα, βq ` f pα, dqq ‚ (5.31)
6 6
`f pb, cq ` 4f pb, βq ` f pb, dq
La méthodologie pour obtenir la formule composite de Simpson "2D" est la suivante .0.Intégrales multiples
b´a
1. Discrétisation régulière de ra, bs: @k P v0, nw, xk “ a ` khx avec hx “ n .
d´c
2. Discrétisation régulière de rc, ds: @l P v0, mw, yl “ a ` lhy avec hy “ m .
3. Relation de Chasles :
żbżd m ż x k ż yl
n ÿ
ÿ
f px, yqdydx “ f px, yqdydx.
a c k“1 l“1 xk´1 yl´1
avec αk “
2
xk´1 `xk
et βl “
2
yl´1 `yl
.
Intégration numérique
Pour uniformiser l’écriture des algorithmes nous employons un pseudo-langage contenant l’indispensable :
‚ variables,
‚ expressions,
‚ fonctions.
Une donnée est une valeur introduite par l’utilisateur (par ex. une température, une vitesse, ...). Une
constante est un symbole ou un identificateur non modifiable (par ex. π, la constante de gravitation,...).
A.1.2 Variables
Definition A.1
Une variable est un objet dont la valeur est modifiable, qui possède un nom et un type (entier,
charactère, réel, complexe, ...). Elle est rangée en mémoire à partir d’une certaine adresse.
188 Langage algorithmique
A.1.3 Opérateurs
Opérateurs arithmétiques
Opérateurs relationnels
Opérateurs logiques
A. Langage algorithmique
Opérateur d’affectation
A.1.4 Expressions
Definition A.2
Une expression est un groupe d’opérandes (i.e. nombres, constantes, variables, ...) liées par certains
opérateurs pour former un terme algébrique qui représente une valeur (i.e. un élément de donnée
simple)
pb ˚ b ´ 4 ˚ a ˚ cq{p2 ˚ aq.
px ă 3.14q
On teste px ă 3.14q avec x une variable numérique réelle. si x ă 3.14 alors cette expression renverra
la valeur vraie (i.e. 1), faux sinon (i.e. 0).
A.1.5 Instructions
Definition A.4
Une instruction est un ordre ou un groupe d’ordres qui déclenche l’exécution de certaines actions
par l’ordinateur. Il y a deux types d’instructions : simple et structuré.
Les instructions simples sont essentiellement des ordres seuls et inconditionnels réalisant l’une
des tâches suivantes :
A.1.5 Instructions
2. les instructions répétitives, permettant l’exécution répétée d’instructions simples, (i.e. boucles
«pour», «tant que»)
3. les instructions conditionnelles, lesquelles ne sont exécutées que si une certaine condition est
respectée (i.e. «si»)
A. Langage algorithmique
Les exemples qui suivent sont écrits dans un pseudo langage algorithmique mais sont facilement
transposable dans la plupart des langages de programmation.
A.1.Pseudo-langage algorithmique
Instructions simples
1: a Ð 3.14 ˚ R
Instructions composées
1: SÐ0
2: Pour i Ð 1 à n faire
3: S Ð S ` cospi2 q
4: Fin Pour
1: i Ð 0, x Ð 1
2: Tantque i ă 1000 faire
3: xÐx`i˚i
4: iÐi`1
5: Fin Tantque
1: i Ð 0, x Ð 1
2: Répéter
3: xÐx`i˚i
4: iÐi`1
5: jusqu’à i>=1000
A.1.6 Fonctions
1: Si age ą“ 18 alors
A. Langage algorithmique
2: affiche(’majeur’)
3: Sinon Si age ą“ 0 alors
4: affiche(’mineur’)
5: Sinon
A.1. Pseudo-langage algorithmique
6: affiche(’en devenir’)
7: Fin Si
A.1.6 Fonctions
Les fonctions permettent
• ...
Fonctions prédéfinies
Pour faciliter leur usage, tous les langages de programmation possèdent des fonctions prédéfinies. On
pourra donc supposer que dans notre langage algorithmique un grand nombre de fonctions soient prédéfinies
: par exemple, les fonctions mathématiques sin, cos, exp, abs, ¨ ¨ ¨ (pour ne citer qu’elles)
Syntaxe
On utilise la syntaxe suivante pour la définition d’une fonction
La fonction se nomme NomFonction . Elle admet comme paramètres d’entrée (données) les m argu-
ments arge1 , . . . , argem et comme paramètres de sortie (résultats) les n arguments args1 , . . . , argsn . Ces
derniers doivent être déterminés dans le corps de la fonction (partie instructions).
Dans le cas ou la fonction n’admet qu’un seul paramètre de sortie, l’écriture se simplifie :
Pour écrire une fonction «propre», il faut tout d’abord déterminer exactement ce que devra faire cette
fonction.
Puis, il faut pouvoir répondre à quelques questions :
A.1.6 Fonctions
2. Que doit-on calculer ?
Et, ensuite il faut la commenter : expliquer son usage, type des paramètres, ....
A. Langage algorithmique
Nous voulons écrire une fonction calculant la solution de l’équation
ax ` b “ 0,
A.1.Pseudo-langage algorithmique
où nous supposons que a P R˚ et b P R. La solution de ce problème est donc
b
x“´ .
a
1: Fonction x Ð REPD( a, b )
2: x Ð ´b{a
3: Fin Fonction
Remarque A.5 Cette fonction est très simple, toutefois pour ne pas «alourdir» le code nous n’avons pas
vérifié la validité des données fournies.
Exercice A.1.1
ax2 ` bx ` c “ 0, (A.1)
Exercice A.1.2
A.2.3 Réalisation d’un algorithme
Exercice A.1.3
‚ Simplifier le problème.
Pour écrire un algorithme détaillé, il faut tout d’abord savoir répondre a quelques questions :
A.2.4 Exercices
Si l’on ne sait pas répondre à l’une de ces questions, l’écriture de l’algorithme est fortement compromise.
A.2.4 Exercices
A. Langage algorithmique
Spxq “ k sinp2 ˚ k ˚ xq
Correction Exercice A.2.1 L’énoncé de cet exercice est imprécis. On choisit alors x P R et n P N
pour rendre possible le calcul. Le problème est donc de calculer
n
ÿ
k sinp2kxq.
k“1
Correction Exercice A.2.2 L’énoncé de cet exercice est imprécis. On choisit alors z P R et k P N
pour rendre possible le calcul.
k
ź
Algorithme A.7 Calcul de P “ sinp2kz{nqk
n“1
Données : z : nombre réel,
k : nombre entier.
Résultat : P : un réel.
1: P Ð1
2: Pour n Ð 1 à k faire
P Ð P ˚ sinp2 ˚ k ˚ z{nq^ k
A.2.4 Exercices
3:
4: Fin Pour
" *
A.2. Méthodologie d’élaboration d’un algorithme
4A 1 1 1
xptq “ cos ωt ´ cos 3ωt ` cos 5ωt ´ cos 7ωt ` ¨ ¨ ¨ .
π 3 5 7
Algorithme A.8 En-tête de la fonction SFT retournant valeur de la série de Fourier en t tronquée au
n premiers termes de l’exercice A.2.3.
Données : t : nombre réel,
n : nombre entier strictement positif
A, ω : deux nombres réels.
Résultat : x : un réel.
1: Fonction x Ð SFT( t, n, A, ω )
2: ...
3: Fin Fonction
Maintenant nous pouvons écrire progressivement l’algorithme pour aboutir au final à une version ne
contenant que des opérations élémentaires.
A.2.4 Exercices
A. Langage algorithmique
A.2.Méthodologie d’élaboration d’un algorithme
Algorithme A.9 Fonction SFT retournant la valeur de la série de Fourier en t tronquée au n premiers
termes de l’exercice A.2.3.
Données : t : nombre réel,
n : nombre entier strictement positif
A, ω : deux nombres réels.
Résultat : x : un réel.
1: Fonction x Ð SFT( t, n, A, ω )
2: SÐ0
3: Pour k “ 1 à n faire
4: S Ð S ` pp´1q^ pk ` 1qq ˚ cospp2 ˚ k ´ 1q ˚ ω ˚ tq{p2 ˚ k ´ 1q
5: Fin Pour
6: S Ð 4 ˚ A ˚ S{π
7: Fin Fonction
A.3.0 Exercices
Exercice A.2.4
Reprendre les trois exercices précédents en utilisant les boucles «tant que».
«gros» problèmes
Tous les exemples vus sont assez courts. Cependant, il peut arriver que l’on ait des programmes plus
longs à écrire (milliers de lignes, voir des dizaines de milliers de lignes). Dans l’industrie, il arrive que des
équipes produisent des codes de millions de lignes, dont certains mettent en jeux des vies humaines (con-
A. Langage algorithmique
trôler un avion de ligne, une centrale nucléaire, ...). Le problème est évidemment d’écrire des programmes
sûrs. Or, un programme à 100% sûr, cela n’existe pas! Cependant, plus un programme est simple, moins
le risque d’erreur est grand : c’est sur cette remarque de bon sens que se basent les «bonnes» méthodes.
Ainsi :
B.1.1 En vrac
Soit f : ra, bs Ă R ÝÑ R une application continue. Si f paq et f pbq ne sont pas de même signe (i.e.
f paqf pbq ă 0) alors il existe au moins c Psa, br tel que f pcq “ 0.
Soient a et b deux réels, a ă b et f une fonction continue sur l’intervalle fermé ra, bs, dérivable sur
l’intervalle ouvert sa, br. Alors il existe ξ Psa, br tel que
f pbq ´ f paq
f 1 pξq “ .
b´a
Soit n P N ˚ et f P C n pra, bsq dont la dérivée n-ième est dérivable. Alors pour tout x, y dans ra, bs,
x ‰ y, il existe ξ Ps minpx, yq, maxpx, yqr tel que
ÿn
px ´ yqk pkq px ´ yqn`1 pn`1q
f pxq “ f pyq ` f pyq ` f pξq (B.1)
k“1
k! pn ` 1q!
Si f est une fonction continue et strictement monotone sur un intervalle ra, bs et à valeurs réelles,
198 Annexes
alors elle constitue une bijection entre ra, bs et l’intervalle fermé dont les bornes sont f paq et f pbq.
Preuve. Notons J “ f ´1 pra, bsq cet intervalle fermé, c’est-à-dire l’ensemble des réels compris entre f paq
et f pbq.
‚ La monotonie de la fonction implique que l’image de l’intervalle ra, bs est contenue dans J :
‚ Enfin, le théorème des valeurs intermédiaires (qui s’appuie sur l’hypothèse de continuité) garantit
que tout élément de J admet au moins un antécédent par f , c’est-à-dire que la fonction est surjective
dans J.
Proposition B.5
Soit f est une fonction bijective continue d’un intervalle ouvert I Ă R sur un intervalle ouvert
J Ă R. Si f est dérivable en α P I et que f 1 pαq ‰ 0 alors sa réciproque f ´1 est dérivable en
β “ f pαq P J et
1 1
pf ´1 q1 pβq “ 1 ou encore pf ´1 q1 pβq “ 1 ´1
B.1.2 Espace métrique
f pαq f pf pβqq
On appelle distance sur un ensemble E, une application d de E 2 dans R` telle que pour tout
x, y , z q P E 3 on a
px
‚ symétrie : dpx
x, y q “ dpyy , xq,
‚ séparation : dpx
x, y q “ 0 ô x “ y ,
urk`1s , α q ď C dpu
Dk0 P N, DC ą 0 tels que dpu urks , α qp , @k ě k0 . (B.3)
où C ă 1 si p “ 1.
x rps ,x
@ϵ ą 0, DM P N, tel que @pp, qq P N2 , p, q ě M, dpx x rqs q ă ϵ.
ce qui correspond à
x rk`ls ,x
@ϵ ą 0, DM P N, tel que @k P N, k ě M, @l P N, dpx x rks q ă ϵ.
ce qui correspond à
rk`ls
lim sup dpx
x x rks q “ 0.
,x
mÑ`8 kěm,lě0
B. Annexes
Definition B.11: Espace métrique complet
B.2.Algèbre linéaire
Proposition B.12
Si E est un espace vectoriel normé de norme }.} alors E est un espace métrique pour la distance d
issue de sa norme et définie par dpx
x, y q “ }x x, y q P E 2 .
x ´ y } , @px
On appelle espace de Banach un espace vectoriel normé complet pour la distance issue de sa
norme.
Toute cette partie peut être joyeusement omise par tout Homo sapiens algebra linearis compat-
ible. Toutefois une lecture rapide permet de se raffraichir la mémoire.
Soit V un espace vectoriel de dimension finie n, sur le corps R des nombres réels, ou sur le corps C
des nombres complexes. Notons plus généralement K le corps R ou C.
B.2.1 Vecteurs
Une base de V est un ensemble tee1 , e 2 , . . . , e n u de n vecteurs linéairement indépendants. Le vecteur
ř
n
v“ vie i sera représenté par le vecteur colonne
i“1
¨˛
v1
˚ v2 ‹
˚ ‹
v“˚ . ‹
˝ .. ‚
vn
Definition B.14
Definition B.15
i“1
n
ÿ
u, v y “ u ˚ .vv “ v ˚ .u
xu u “ xvv , u y “ ui vi , si K “ C (B.5)
i“1
B.2. Algèbre linéaire
Il est aussi possible de définir le produit scalaire hermitien par le complexe conjugué de (B.5) :
n
ÿ
u, v y “ v ˚ .u
xu u“ ui v i .
i“1
Definition B.16
@u
u P U, xu
u, v y “ 0.
On note v K U.
Definition B.17
Definition B.18
xu
u, v y 1
proju pvv q “ u“ uu ˚v , @vv P Kn . (B.6)
xu
u, u y xu
u, u y
B.2.2 Matrices
i´1
ÿ i´1
ÿ xu
uk , v i y
ui “ v i ´ proju k pvv i q “ v i ´ u k , @i P v1, nw.
k“1 k“1
xu
uk , u k y
Ils forment une base orthogonale de Kn et Vect pu u1 , . . . , u i q “ Vect pvv 1 , . . . , v i q , @i P v1, nw (voir
Exercice B.3.5, page 215).
Pour construire une base orthonormale tzz i uiPv1,nw , il suffit de normaliser les vecteurs de la base
B. Annexes
orthogonale:
ui
zi “ , @i P v1, nw.
ui , u i y1{2
xu
B.2.Algèbre linéaire
B.2.2 Matrices
Généralités
Une matrice à m lignes et n colonnes est appelée matrice de type pm, nq , et on note Mm,n pKq, ou
simplement Mm,n , l’espace vectoriel sur le corps K formé par les matrices de type pm, nq à éléments
dans K.
Une matrice A P Mm,n pKq d’éléments aij P K est notée
le premier indice i correspond aux lignes et le second j aux colonnes. On désigne par pAqij l’élément de
la ième ligne et de la j ème colonne. On peut aussi le noter ai,j .
Definition B.20
La matrice nulle de Mm,n pKq est représentée par Om,n ou O lorsqu’il n’y a pas d’ambiguité. Si
m “ n on peut aussi noter On cette matrice.
Definition B.21
˛ Soit une matrice A P Mm,n pCq, on note A˚ P Mn,m pCq la matrice adjointe de la matrice
A, définie de façon unique par
xAu u, A˚v yn , @u
u, v ym “ xu u P Cn , @vv P Cm
xAu
u, v ym “ xu u P Rn , @vv P Rm
u, Atv yn , @u
Definition B.22
Si A P Mm,p pKq et B P Mp,n pKq, leur produit AB P Mm,n pKq est défini par
p
ÿ
pABqij “ aik bkj , @i P v1, mw, @j P v1, nw. (B.7)
k“1
Definition B.23
Si A P Mn alors les éléments aii “ pAqii sont appelés éléments diagonaux et les éléments
B.2. Algèbre linéaire
Definition B.24
On appelle matrice identitée de Mn la matrice dont les éléments diagonaux sont tous égals à 1
et les éléments hors-diagonaux nulles. On la note I ou encore In et on a
Definition B.25
Une matrice A P Mn pKq est inversible ou régulière s’il existe une matrice B P Mn pKq vérifiant
AB “ BA “ I (B.10)
Dans le cas contraire, on dit que la matrice A est singulière ou non inversible.
On peut noter que la matrice B est unique. En effet, soient B1 et B2 vérifiant (B.10). On a alors AB2 “ I
et donc B1 pAB2 q “ B1 . On a aussi B1 A “ I et donc pB1 AqB2 “ B2 . Le produit des matrices étant associatif
on a B1 pAB2 q “ pB1 AqB2 et donc B1 “ B2 .
Definition B.26
Definition B.27
Proposition B.29
B.2.2 Matrices
Soit A P Mn pKq. Les propriétés suivantes sont équivalentes
1. A est inversible,
2. rankpAq “ n,
3. x P Kn , Ax
x “ 0 ñ x “ 0, (i.e. ker A “ t0u)
B. Annexes
4. detpAq ‰ 0,
5. toutes les valeurs propres de A sont non nulles,
B.2.Algèbre linéaire
6. il existe B P Mn pKq tel que AB “ I,
Definition B.30
˛ normale si AA˚ “ A˚ A,
˛ orthogonale si A est réelle et AAt “ At A “ I,
˛ unitaire si AA˚ “ A˚ A “ I,
Proposition B.31
‚ une matrice orthogonale (resp. unitaire) est nécessairement normale et inversible d’inverse At
(resp. A˚ ).
Definition B.32
xAu u P Cn zt0u
u, u y ě 0, @u (B.17)
B.2.2 Matrices
Exercice B.2.3
Soit A P Mn pCq.
Q. 1 Que peut-on dire de la matrice AA˚ ? Et si la matrice A est inversible?
Q. 2 Proposer une technique permettant de générer une matrice hermitienne semi-définie positive
à partir d’une matrice aléatoire quelconque.
B. Annexes
Q. 3 Proposer une technique permettant de générer une matrice hermitienne définie positive à partir
d’une matrice triangulaire inférieure inversible aléatoire.
B.2. Algèbre linéaire
Definition B.33
Definition B.34
Definition B.35
Soit A “ pai,j qni,j“1 P Mn . On note Ari,js P Mn´1 la matrice obtenue en supprimant la ligne i et la
colonne j de A. On a alors le développement par rapport à la ligne i P v1, nw
n
ÿ ´ ¯
det pAq “ p´1qi`j ai,j det Ari,js , (B.18)
j“1
B.2.2 Matrices
` ˘
Le terme p´1qi`j det Ari,js est appellé le cofacteur du terme ai,j .
Definition B.37
Soit A P Mn pKq. On dit que λ P C est valeur propre de A s’il existe u P Cn non nul tel que
B. Annexes
u “ λu
Au u. (B.20)
B.2.Algèbre linéaire
Le couple pλ, u q est appelé élément propre de A.
Definition B.38
u P Cn : Au
Eλ “ tu uu “ kerpA ´ λIq
u “ λu (B.21)
est appelé sous-espace propre associé à la valeur propre λ. La dimension de Eλ est appelée
multiplicité géométrique de la valeur propre λ.
Definition B.39
Proposition B.40
Soit A P Mn pKq.
˛ Les racines complexes du polynôme caractéristique PA sont les valeurs propres de la matrice
A.
˛ Si la racine λ de PA est de multiplicité k, on dit que la valeur propre λ est de multiplicité
algébrique k.
˛ La matrice A possède n valeurs propres distinctes ou non.
Definition B.41
Soit A P Mn pKq. On note λi pAq , i P v1, nw, les n valeurs propres de A. Le spectre de la matrice A
est le sous-ensemble
ďn
Sp pAq “ tλi pAqu (B.23)
i“1
du plan complexe.
Proposition B.42
n
ÿ
tr pAq “ λi pAq , (B.24)
i“1
źn
detpAq “ λi pAq, (B.25)
i“1
tr pABq “ tr pBAq , (B.26)
B. Annexes
tr pA ` Bq “ tr A ` tr B, (B.27)
det pABq “ det pAq det pBq “ det pBAq , (B.28)
detpA˚ q “ detpAq. (B.29)
B.2. Algèbre linéaire
Definition B.43
Matrices particulières
Definition B.44
˛ à diagonale dominante si
ÿ
|aii | ě |aij | , @i P v1, nw, (B.30)
j‰i
Proposition B.45
Proposition B.46
B.2.2 Matrices
@i P v1, nw).
2. Si A est inversible alors son inverse est triangulaire inférieure (resp. triangulaire supérieure)
et
1
pA-1 qi,i “
pAqi,i
B. Annexes
Preuve. (voir Exercice B.3.10, page 220)
Definition B.47
B.2.Algèbre linéaire
On appelle matrice bande une matrice A telle que aij ‰ 0 pour |j ´ i| ď c. c est la demi largeur
de bande.
Lorsque c “ 1, la matrice est dite tridiagonale . Lorsque c “ 2, la matrice est dite pentadi-
agonale .
Definition B.48
On appelle sous-matrice d’une matrice donnée, la matrice obtenue en supprimant certaines lignes
et certaines colonnes. En particulier, si on supprime les pn ´ kq dernières lignes et colonnes d’une
matrice carrée A d’ordre n, on obtient la sous matrice principale d’ordre k.
Definition B.49
p
ÿ q
ÿ
où @i P v1, pw, @j P v1, qw, Ai,j est une matrice de Mni ,mj . On a N “ ni et M “ mj .
i“1 j“1
On dit que A et une matrice bloc-carrée si p “ q et si tous les blocs diagonaux sont des matrices
carrées.
Soient A P MN,M et B P MM,S . Le produit P “ AB P MN,S peut s’écrire sous forme bloc si les
matrices A et B sont compatibles par blocs : il faut que le nombre de blocs colonne de A soit égale
au nombre de blocs ligne de B avec correspondance des dimensions.
¨ ˛ ¨ ˛
A1,1 ¨¨¨ A1,q B1,1 ¨¨¨ A1,r
˚ . .. ‹ ˚ . .. ‹
A “ ˝ .. . ‚ et B “ ˝ .. . ‚
Ap,1 ¨¨¨ Ap,q Bq,1 ¨¨¨ Aq,r
avec Ai,k P Mni ,mk et Bk,j P Mmk ,sj pour tout i P v1, pw, k P v1, qw et j P v1, rw. La matrice produit
P s’écrit alors sous la forme bloc
¨ ˛
P1,1 ¨ ¨ ¨ P1,r
˚ .. ‹
P “ ˝ ... . ‚
Pp,1 ¨ ¨ ¨ Pp,r
q
ÿ
Pi,j “ Ai,k Bk,j .
k“1
Definition B.51
B. Annexes
On dit qu’une matrice bloc-carrée A est triangulaire inférieure (resp. supérieure) par blocs si
elle peut s’écrire sous la forme d’une matrice bloc avec les sous matrices Ai,j “ 0 pour i ă j (resp.
i ą j). . Elle s’écrit donc sous la forme
¨ ˛ ¨ ˛
B.2. Algèbre linéaire
Definition B.52
On dit qu’une matrice bloc-carrée A est diagonale par blocs ou bloc-diagonale si elle peut
s’écrire sous la forme d’une matrice bloc avec les sous matrices Ai,j “ 0 pour i ‰ j . Elle s’écrit
donc sous la forme ¨ ˛
A1,1 O ¨ ¨ ¨ O
˚ .. .. .. ‹
˚ . . ‹
˚ O . ‹
A“˚ ‹
˚ .. .. .. ‹
˝ . . . O ‚
O ¨ ¨ ¨ O An,n
Proposition B.53
Proposition B.54
• Si A est bloc-diagonale alors son inverse (décomposée en n ˆ n blocs) est aussi bloc-
diagonale.
• Si A est triangulaire inférieure par blocs (resp. supérieure) alors son inverse (décomposée
en n ˆ n blocs) est aussi triangulaire inférieure par blocs (resp. supérieure).
¨ ˛ ¨ ˛
A1,1 O ¨¨¨ O A-1
1,1 O ¨¨¨ O
˚ .. .. .. .. ‹ ˚ .. .. .. ‹
˚ . . ‹ ˚ . . ‹
˚ . . ‹ ˚ ‚ . ‹
A“˚ ‹ et A-1 “ ˚ ‹
˚ .. .. .. ‹ ˚ .. .. .. ‹
B. Annexes
˝ . . . O ‚ ˝ . . . O ‚
An,1 ¨¨¨ ¨¨¨ An,n ‚ ¨¨¨ ‚ A-1
n,n
¨ ˛ ¨ ˛
A1,1 ¨¨¨ ¨¨¨ An,1 A-1
1,1 ‚ ¨¨¨ ‚
˚ .. .. .. ‹ ˚ .. .. .. ‹
˚ . . ‹ ˚ . . ‹
˚ O . ‹ ˚ O . ‹
A“˚ ‹ et A “ ˚
-1
‹
˚ .. .. .. .. ‹ ˚ .. .. .. ‹
˝ . . . . ‚ ˝ . . . ‚ ‚
O ¨¨¨ O An,n O ¨¨¨ O A-1
n,n
B.2.Algèbre linéaire
B.2.3 Normes vectorielles et normes matricielles
Definition B.55
Une norme sur un espace vectoriel V est une application }‚} : V Ñ R` qui vérifie les propriétés
suivantes
˛ }vv } “ 0 ðñ v “ 0,
˛ }αvv } “ |α| }vv } , @α P K, @vv P V,
˛ }u
u ` vv} ď }u u, vvq P V 2 (inégalité triangulaire).
u} ` }vv } , @ pu,
Une norme sur V est également appelée norme vectorielle . On appelle espace vectoriel
normé un espace vectoriel muni d’une norme.
Théorème B.56
Soit V un espace de dimension finie. Pour tout nombre réel p ě 1, l’application }‚}p définie par
˜ ¸1{p
n
ÿ p
}vv }p “ |vi |
i“1
Proposition B.57
1 1
Pour p ą 1 et p ` q “ 1, on a @u
u , v P Kn
˜ ¸1{p ˜ ¸1{q
n
ÿ n
ÿ n
ÿ
p q
|ui vi | ď |ui | |vi | u}p }vv }q .
“ }u (B.33)
i“1 i“1 i“1
Definition B.58
1
Deux normes }‚} et }‚} , définies sur un même espace vectoriel V, sont équivalentes s’il exite
deux constantes C et C 1 telles que
1 1
}vv } ď C }vv } et }vv } ď C 1 }vv } pour tout v P V. (B.34)
Proposition B.59
B.2. Algèbre linéaire
Sur un espace vectoriel de dimension finie toutes les normes sont équivalentes.
Definition B.60
Une norme matricielle sur Mn pKq est une application }‚} : Mn pKq Ñ R` vérifiant
1. }A} “ 0 ðñ A “ 0,
Proposition B.61
Etant donné une norme vectorielle }‚} sur Kn , l’application }‚}s : Mn pKq Ñ R` définie par
}Avv }
}A}s “ sup “ sup }Avv } “ sup }Avv } , (B.35)
v PK n }vv } v PKn v PKn
v ‰0 }v
v }ď1 }v
v }“1
est une norme matricielle, appelée norme matricielle subordonnée (à la norme vectorielle don-
née).
De plus
}Avv } ď }A}s }vv } @vv P Kn (B.36)
et la norme }A} peut se définir aussi par
u ‰ 0 et }Au
u} “ }A}s }u
u} . (B.38)
}I}s “ 1 (B.39)
Théorème B.62
Soit A P Mn pCq. On a
ÿn
déf. }Avv }1
}A}1 “ sup “ max |aij | (B.40)
v PCn }vv }1 jPv1,nw
i“1
v ‰0
déf. }Avv }2 a a
“ ρ pA˚ Aq “ ρ pAA˚ q “ }A˚ }2
B. Annexes
}A}2 “ sup (B.41)
v PCn }vv }2
v ‰0
ÿn
déf. }Avv }8
}A}8 “ sup “ max |aij | (B.42)
v PCn }vv }8 iPv1,nw
j“1
v ‰0
Proposition B.63
Théorème B.64
1. Soit A une matrice carrée quelconque et }‚} une norme matricielle subordonnée ou non, quel-
conque. Alors
ρpAq ď }A} . (B.45)
2. Etant donné une matrice A et un nombre ε ą 0, il existe au moins une norme matricielle
subordonnée telle que
}A} ď ρpAq ` ε. (B.46)
Théorème B.65
pour toute matrice A “ paij q d’ordre n, est une norme matricielle non subordonnée (pour n ě 2),
invariante par transformation unitaire et qui vérifie
?
}A}2 ď }A}E ď n }A}2 , @A P Mn . (B.48)
?
De plus }I}E “ n.
B.2.4 Réduction des matrices
Théorème B.66
}B} ă 1.
}B} ě 1
Definition B.67
Soit A : V Ñ V une application linéaire, représenté par une matrice carrée A P Mn relativement à
une base teei uiPv1,nw . Relativement à une autre base tff i uiPv1,nw , la même application est représentée
par la matrice
B “ P-1 AP (B.49)
où P est la matrice inversible dont le j-ème vecteur colonne est formé des composantes du vecteur
f j dans la base teei uiPv1,nw :
¨ ˛
xee1 , f 1 y xee1 , f 2 y ¨¨¨ xee1 , f n y
˚ .. .. ‹
˚ xee2 , f 1 y xee1 , f 2 y . . ‹
P“˚
˚ ..
‹
‹ (B.50)
˝ .. ..
. . . xeen´1 , f n y‚
xeen , f 1 y ¨¨¨ xeen , f n´1 y xeen , f n y
La matrice P est appelée matrice de passage de la base teei uiPv1,nw dans le base tff i uiPv1,nw .
Definition B.68
On dit que la matrice carrée A est diagonalisable s’il existe une matrice inversible P telle que la
matrice P´1 AP soit diagonale.
Remarque B.69 On notera que, dans le cas où A P Mn est diagonalisable, les éléments diagonaux de la
matrice P-1 AP sont les valeurs propres λ1 , λ2 , . . . , λn de la matrice A, et que le j-ème vecteur colonne p j
de la matrice P est formé des composantes, dans la même base que A, d’un vecteur propre associé à la
valeur propre λj . On a
C’est à dire qu’une matrice est diagonalisable si, et seulement si, il existe une base de vecteurs propres.
Théorème B.70
1. Etant donnée une matrice carrée A, il existe une matrice unitaire U telle que la matrice
U-1 AU soit triangulaire.
Definition B.71
B. Annexes
Soit V un espace vectoriel muni d’une norme }‚}, on dit qu’une suite pvv k q d’éléments de V converge
vers un élément v P V , si
lim }vv k ´ v } “ 0
kÑ8
et on écrit
v “ lim v k .
kÑ8
B.2.Algèbre linéaire
Théorème B.72
Théorème B.73
Soit B une matrice carrée, et }‚} une norme matricielle quelconque. Alors
› ›1{k
lim ›Bk › “ ρpBq.
kÑ8
Exercice B.3.1
xAu u P Rn , @vv P Rm .
u, Bvv yn , @u
u, v ym “ xu
Exercice B.3.2
B.3.1 Algèbre linéaire
3. Montrer que G “ EF est triangulaire inférieure et que Gi,i “ Ei,i Fi,i , @i P v1, nw.
4. Que peut-on dire des matrices AE et EA?
B. Annexes
Q. 2 1. Calculer detpAq.
2. Déterminer les valeurs propres de A.
Exercice B.3.3
Q. 1 Soit T P Mn,n pCq une matrice triangulaire supérieure. Montrer que si T est une matrice
normale alors elle est diagonale.
Q. 2 Montrer que A P Mn,n pCq est une matrice normale si et seulement si il existe U P Mn,n pCq
unitaire et D P Mn,n pCq diagonale telle que A “ UDU˚ .
Q. 3 En déduire qu’une matrice normale est diagonalisable et que ses vecteurs propres sont orthog-
onaux.
Exercice B.3.4
i´1
ÿ xu
uk , v i y
ui “ v i ´ u k , @i P v1, nw.
k“1
xu k , uk y
u
B. Annexes
On a
ÿi
xu
uk , v i`1 y
u i`1 “ v i`1 ´ uk . (B.53)
k“1
xu
uk , u k y
B.3.Receuil d’exercices
ÿi
xu
uk , v i`1 y
xu
uj , u i`1 y “ xu
uj , v i`1 y ´ xu
uj , u k y .
k“1
xu
uk , u k y
Par hypothèse de récurrence, la famille Vect pu u1 , . . . , u i q est orthogonale, c’est à dire @pr, sq P
ur , u s y “ 0 si r ‰ s et u r ‰ 0. On obtient donc
v1, iw2 , xu
xu
uj , v i`1 y
xu
uj , u i`1 y “ xu
uj , v i`1 y ´ xu
uj , u j y “ 0, @j P v1, iw.
xu
uj , u j y
pHqi
et donc v i`1 P Vect pu u1 , . . . , ui q “ Vect pvv 1 , . . . , v i q . Ceci entre en contradiction avec Vect pvv 1 , . . . , v n q
base de K . n
‚ On déduit de (B.53) que u i`1 P Vect pu u1 , . . . , u i , v i`1 q . Par hypothèse de récurrence, Vect pu
u1 , . . . , u i q “
Vect pvv 1 , . . . , v i q , ce qui donne u i`1 P Vect pvv 1 , . . . , v i`1 q et donc
Vect pu
u1 , . . . , u i`1 q “ Vect pvv 1 , . . . , v i`1 q .
Soit A P Mn pCq une matrice inversible. Pour tout i P v1, nw, on note a i “ A:,i ses n vecteurs
colonnes. En utilisant le procédé de Gram-schmidt sur la base ta a1 , . . . , a n u montrer qu’il existe
une matrice Q unitaire et une matrice triangulaire supérieure R à coefficients diagonaux strictement
positifs tel que A “ QR.
Q “ ˝ q1 ¨ ¨ ¨ qn ‚
Cette matrice est clairement unitaire puisque la base tqq 1 , . . . , q n u est orthonormée.
Montrons que Q˚ A est triangulaire supérieure. On a
¨ ˛¨ ˛ ¨ ˛
q ˚1 xqq 1 , a 1 y ¨¨¨ xqq 1 , a n y
˚ .. ‹˝ ˚
‚“ ˝ .. .. .. ‹
Q˚ A “ ˝ . ‚ a1 ¨ ¨ ¨ an . . . ‚
B. Annexes
c’est à dire pQ˚ Aqi,j “ xqq i , a j y , @pi, jq P v1, nw. Par définition cette matrice est triangulaire`supérieure si˘
pQ˚ Aqi,j “ 0 pour tout i ą˘j. Soit i P v1, n ´ 1w. La base Q étant orthonormée, on a q i K Vect q 1 , . . . , q i´1 .
B.3. Receuil d’exercices
`
Comme Vect q 1 , . . . , q i´1 “ Vect pa a1 , . . . , a i´1 q , on en déduit que
ui , a i y car xu
“ xu ui , u k y “ 0, @k ‰ i (base orthogonale)
Exercice: 3.1.2
P “ ˝ x1 . . . xn ‚
A “ UTU˚
B. Annexes
tee1 , . . . , e j´1 , e j`1 , . . . , e n u.
On note tzz 1 , . . . , z n u la base dont le premier élément est z 1 “ u :
tzz 1 , . . . , z n u “ tu
u, e 1 , . . . , e j´1 , e j`1 , . . . , e n u.
B.3.Receuil d’exercices
On peut ensuite utiliser le procédé de Gram-Schmidt, rappelé en Proposition B.19, pour construire
une base orthonormée à partir de cette base.
On calcule successivement les vecteurs xi à partir de la base tzz 1 , . . . , z n u en construisant un vecteur w i
orthogonal aux vecteurs x1 , . . . , xi´1 .
i´1
ÿ
wi “ zi ´ xx
xk , z i y x k
k“1
wi
xi “
}w
wi}
Ce qui donne
¨ ˚ ˛
x 1 Axx1 x1 ˚ Ax x2 . . . x1 ˚ Ax xn
˚x ˚2 Ax
x1 x ˚2 Ax x2 . . . x ˚2 Ax xn ‹
˚ ‹
B“˚ . .. .. ‹
˝ .. . . ‚
x ˚n Ax
x1 x ˚n Ax
x2 ˚ x
. . . x n Ax n
On a donc
Bi,j “ x ˚i Ax
xj , @pi, jq P v1, nw2
.
2. On a Au
u “ λu u} “ 1, la base tx
u, }u x1 , . . . , x n u est orthonormée et x 1 “ u . on obtient alors
¨ ˛ ¨ ˛
u˚u u ˚ Ax
λu x2 . . . u ˚ Ax xn λ u ˚ Ax x2 . . . u ˚ Ax xn
˚
˚ x˚2 u x ˚2 Ax
λx x2 . . . x ˚2 Ax xn ‹ ˚
‹ ˚ 0 x ˚2 Ax x2 . . . x ˚2 Ax xn ‹
‹
B“˚ .. .. .. ‹“˚ .. .. .. ‹
˝ . . . ‚ ˝ . . . ‚
x˚nu x ˚n Ax
λx x2 . . . x ˚n Ax xn 0 x ˚n Ax x2 . . . x ˚n Ax xn
pPn q @A P Mn pCq, DU P Mn pCq unitaire, DT P Mn pCq triangulaire supérieure, telles que A “ UTU˚ .
Soit A2 P M2 pCq. Elle admet au moins un élément propre pλ, u q (voir Proposition B.40 par ex.)
avec }u
u} “ 1. On peut donc appliquer le résultat de la question précédente : il existe une matrice
unitaire P2 P M2 pCq telle que la matrice B2 “ P2 A2 P˚2 ait comme premier vecteur colonne pλ, 0qt .
La matrice B2 est donc triangulaire supérieure et comme P2 est unitaire on en déduit
A2 “ P˚2 B2 P2 .
On pose U2 “ P˚2 matrice unitaire et T2 “ B2 matrice triangulaire supérieure pour conclure que la
propostion pP2 q est vraie.
B. Annexes
Hérédité : Supposons que pPn´1 q soit vérifiée. Montrons que pPn q est vraie.
Soit An P Mn pCq. Elle admet au moins un élément propre pλ, u q (voir Proposition B.40 par ex.)
avec }u
u} “ 1. On peut donc appliquer le résultat de la question précédente : il existe une matrice
B.3. Receuil d’exercices
où c n´1 P Mn´1,1 pCq et An´1 P Mn´1 pCq. Par hypothèse de récurrence, DUn´1 P Mn´1 pCq unitaire
et Tn´1 P Mn´1 pCq triangulaire supérieure telles que
ou encore
Tn´1 “ U˚n´1 An´1 Un´1 .
Soit Qn P Mn pCq la matrice définie par
¨ ˛
1 0 ... 0
˚ 0 ‹
˚ ‹
Qn “ ˚ .. ‹.
˝ . Un´1 ‚
0
On note Un “ P˚n Qn . Cette matrice est unitaire car les matrices Qn et Pn le sont. En effet, on a
˚
Un U˚n “ P˚n Qn pP˚n Qn q “ P˚n lo Qo˚nn Pn “ P˚n Pn “ In .
Qonmo
“In
B. Annexes
démonstration.
Q. 4 Résoudre Ax
x “ b est équivalent à résoudre
B.3.Receuil d’exercices
UTU˚x “ b . (B.55)
Comme U est unitaire, on a UU˚ “ I et U˚ inversible. Donc en multipliant (B.55) par U˚ on obtient le
système équivalent
˚ ˚ ˚ ˚ ˚
loUomoUon TU x “ U b ðñ TU x “ U b .
“I
1. on cherche y solution de Tyy “ U˚b . Comme U est unitaire on a detpUq detpU˚ q “ detpIq “ 1 et donc
2. une fois y déterminé, on résoud U˚x “ y . Comme U est unitaire, on obtient directement x “ Uyy .
˛
Exercice B.3.7
Exercice B.3.8
Exercice B.3.9
B.3.1 Algèbre linéaire
Q. 1 Soit A une matrice inversible et symétrique, montrer que A´1 est symétrique.
Q. 2 Soit A une matrice carrée telle que I ´ A est inversible. Montrer que
´1 ´1
A pI ´ Aq “ pI ´ Aq A.
Q. 3 Soient A, B des matrices carrées inversibles de même dimension telle que A ` B soit inversible.
Montrer que
´1 ´1 ` ˘´1
B. Annexes
A pA ` Bq B “ B pA ` Bq A “ A´1 ` B´1
B.3. Receuil d’exercices
Exercice B.3.10
LX “ I (B.57)
On note X rjs “ X:,j le j-ème vecteur colonne de la matrice X et erjs le j-ème vecteur de la base canonique
rjs
de Cn (ei “ δi,j ).
L’équation (B.57) peut donc se réécrire
¨ ˛ ¨ ˛
ou encore, déterminer la matrice X inverse de L reviens à résoudre les n systèmes linéaires suivants:
‚ Pour montrer que X est triangulaire inférieure il suffit de vérifier que pour tout j P v2, nw
rjs
Xi “ 0, @i P v1, j ´ 1w.
Soit j P v2, nw. On décompose la matrice L en la matrice bloc carré 2 par 2 ou le premier bloc di-
agonal, noté Lj´1 , est une matrice triangulaire inférieure inversible de dimension j ´ 1. Le système
(B.58) s’écrit alors
B. Annexes
‚ Par définition du produit matricielle, de l’équation (B.57) on tire pour tout j P v1, nw
n
ÿ j´1
ÿ n
ÿ
pLXqj,j “ pIqj,j ðñ Lj,k Xk,j “ 1 ðñ Lj,k Xk,j ` Lj,j Xj,j ` Lj,k Xk,j “ 1
B.3.Receuil d’exercices
k“1 k“1 k“j`1
Or les matrices L et X sont triangulaires inférieures et donc Xk,j “ 0, @k P v1, j ´ 1w, et Lj,k “ 0,
@k P vj ` 1, nw. On obtient alors Lj,j Xj,j “ 1 et comme Lj,j ‰ 0 on a bien Xj,j “ 1{Lj,j .
Exercice B.3.11
Exercice B.3.12
Exercice B.3.13
Soient pzi qni“0 n ` 1 points distincts 2 à 2 de C. Soit V P Mn`1 pCq la matrice définie par
j´1
Vi,j “ zi´1 , @pi, jq P v1, n ` 1w.
Q. 1 Ecrire la matrice V.
n`1
Soient w “ pwi qi“1 un vecteur de Cn`1 . On note Pw P Cn rXs, le polynôme défini par
n
ÿ
Pw pzq “ wi`1 z i
i“0
Q. 2 Exprimer v “ Vw
w en fonction de Pw .
B.3.1 Algèbre linéaire
1 zn ¨¨¨ znn
n`1
ÿ
vi “ Vi,j w j
j“1
n`1
ÿ j´1
“ zi´1 wj
j“1
ÿn
j
“ wj`1 zi´1 “ Pw pzi´1 q.
j“0
c’est à dire ¨ ˛
Pw pz0 q
v “ ˝ ... ‚.
˚ ‹
Pw pzn q
Q. 3 La matrice V est inversible si et seulement si son noyau est réduit à l’élément nul, c’est à dire
kerpVq “ t00u.
Soit u “ pu1 , . . . , un`1 q˚ P Cn`1 , tel que Vu
u “ 0, montrons qu’alors u “ 0 .
On a ¨ ˛ ¨ ˛
u1 Pu pz0 q
˚ .. ‹ ˚ .. ‹
u “ V˝ .
Vu ‚ “ ˝ . ‚ “ 0.
un`1 Pu pzn q
Les n ` 1 points pzi qni“0 sont distincts 2 à 2, donc le polynôme u admet n ` 1 racines distinctes hors
Pu P Cn rXs, c’est donc le polynôme nul, c’est à dire ui “ 0, @i P v1, n ` 1w. On a donc u “ 0.
La matrice V est donc inversible.
˛
Matrices blocs
Exercice B.3.14
B.3.2 Normes
Exercice B.3.15
B. Annexes
Q. 1 Montrer que la matrice L est bien définie et spécifier les dimensions des blocs.
B.3.Receuil d’exercices
Q. 2 Calculer L2 . Que peut-on en conclure?
Q. 4 En déduire qu’une matrice triangulaire inférieure par blocs est inversible si et seule-
ment si ses matrices blocs diagonales sont inversibles.
B.3.2 Normes
Normes vectorielles
Exercice B.3.17
x, y y | ď }x
| xx x}2 }yy }2 . (B.61)
Q. 3 Soit x ‰ 0. Montrer alors que l’inégalité (B.61) est une égalité si et seulement si y “ αx
x.
‚ Si x ‰ 0, alors
xαx
x ´ y , xy “ 0 ðñ α xx
x, x y ´ xyy , x y “ 0
Or x ‰ 0, ce qui donne
xyy , x y
α“ .
xx
x, x y
B.3.2 Normes
x, x y P R et xyy , x y “ xx
et , comme xx x, y y , on obtient
xx
x, y y
α“ . (B.62)
xx , xy
x
Q. 2 On a
B. Annexes
x ´ y }22
}αx “ xαxx ´ y , αx
x ´ yy
“ α xαxx ´ y , x y ´ xαx
x ´ y, yy
B.3. Receuil d’exercices
x ´ y , y y , car xαx
“ ´ xαx x ´ y , xy “ 0
“ ´α xx
x, y y ` xyy , y y
xyy , x y
x ´ y }22
}αx “ ´ xx
x, y y ` xyy , y y
xxx, x y
´ xyy , x y xx
x, y y ` xyy , y y xx
x, x y
“
xxx, x y
Comme xyy , xy “ xx
x, y y, on a xyy , xy xx x, y y |2 et donc
x, y y “ | xx
1 ´ ¯
x ´ y }22
}αx “ ´| xx x}22 }yy }22
x, y y |2 ` }x (B.63)
xx
x, x y
ě 0.
On a alors
2 2
x, y y |2 ď }x
| xx x}2 }yy }2
?
La fonction x ÞÑ x étant croissante sur r0; `8r, on obtient (B.61).
| xx
x, y y | “ }x
x}2 }yy }2 ðñ y “ αx
x
ð On suppose y “ αx
x. On a alors
xx
x, y y “ α xx x}22 ùñ | xx
x, x y “ α }x x}22 .
x, y y | “ |α| }x
Comme }yy }2 “ |α| }x
x}2 , on a aussi
}x x}22 .
x}2 }yy }2 “ |α| }x
On en déduit alors
| xx x}2 }yy }2 .
x, y y | “ }x
ñ On suppose | xx x}2 }yy }2 . Avec cette hypothèse, l’équation (B.63) devient
x, y y | “ }x
x ´ y }22 “ 0
}αx
et donc αx
x ´ y “ 0, c’est à dire y “ αx
x.
˛
Exercice B.3.18
}x x}2 ` }yy }2 .
x ` y }2 ď }x (B.64)
Q. 2 Si x et y sont non nuls, prouver que l’inégalité (B.64) est une égalité si et seulement si y “ αx
x
avec α un réel strictement positif.
B.3.2 Normes
Q. 3 Déduire de (B.64) l’inégalité suivante :
| }x
x}2 ´ }yy }2 | ď }x
x ´ y }2 . (B.65)
B. Annexes
› ›
› xi› ď xi }2 .
}x (B.66)
›i“1 › i“12
B.3.Receuil d’exercices
Correction Exercice B.3.18
x}22 “ xx
Q. 1 On rappele que }x x, xy . On obtient, en utilisant les propriétés du produit scalaire,
x ` y }22
}x “ xx
x ` y, x ` yy
“ xx
x, x y ` xx
x, y y ` xyy , x y ` xx
x, x y
x}22 ` }yy }22 ` xx
“ }x x, y y ` xyy , x y .
1
Pour tout nombre complexe z, on a z ` z “ 2 Repzq, et |z| ě Repzq. x, y y, on a
Comme xyy , x y “ xx
x ` y }22
}x x}22 ` }yy }22 ` 2 Re pxx
“ }x x, y yq (B.67)
ď x}22
}x `
2
}yy }2 ` 2| xx
x, y y |.
L’inégalité de Cauchy-Schwarz donne
| xx
x, y y | ď }x
x}2 }yy }2
et donc
x ` y }22
}x x}22 ` }yy }22 ` 2 }x
ď }x x}2 }yy }2
x}2 ` }yy }2 q2 .
“ p}x
?
La fonction x ÞÑ x étant croissante sur r0; `8r, on obtient
}x
x ` y }2 ď }x
x}2 ` }yy }2 .
1 En effet, z “ a ` ıb et z “ a ´ ıb d’où z ` z “ 2a. De plus, |z|2 “ a2 ` b2 ě a2 ce qui donne |z| ě |a| ě a.
}x
x ` y }2 “ }x
x}2 ` }yy }2 ðñ y “ αx
x, α ą 0.
ð On suppose y “ αx
x avec α ą 0.
On a alors
}x
x ` y }2 “ }x
x ` αxx}2
“ }p1 ` αqxx}2
“ |1 ` α| }x
x}2 .
Comme α ą 0, on a |1 ` α| “ 1 ` α et donc
}x
x ` y }2 “ }x
x}2 ` α }x
x}2 . (B.68)
De plus, on a
}yy }2 “ }αxx}2
“ |α| }x
x}2
x}2 , car α ą 0.
“ α }x
ñ On suppose que
B.3.2 Normes
}x
x ` y }2 “ }x
x}2 ` }yy }2 . (B.69)
Ce qui donne
x ` y }22 “ }x
}x x}22 ` }yy }22 ` 2 }x
x}2 }yy }2 (B.70)
On déduit alors de l’égalité (B.67) que
B. Annexes
}x
x}2 }yy }2 “ Re pxx
x, y yq ď | xx x}2 }yy }2
x, y y | ď }x
ce qui impose
| xx x}2 }yy }2 .
x, y y | “ }x
xy xy
y ,x
D’après l’exercice précédant, cette égalité est vérifiée si et seulement si y “ αx
x avec α “ xx
x,xxy .
Il nous reste à vérifier que α ą 0.
L’hypothèse (B.69) avec y “ αx x devient
}x
x ` y }2 “ |1 ` α| }x
x}2 “ }x
x}2 ` }yy }2 “ 1 ` |α| }x
x}2 . (B.72)
On a donc
Q. 3 On a x “ px
x ´ y q ` y , et par application de l’inégalité triangulaire (B.64) on obtient
}x
x}2 “ }px
x ´ y q ` y }2 ď }x
x ´ y }2 ` }yy }2 ùñ }x
x}2 ´ }yy }2 ď }x
x ´ y }2 .
x}2 ´ }yy }2 | ď }x
| }x x ´ y }2 .
B.3.2 Normes
›i“1 ›
2
n
ÿ
ď }x xn`1 }2 , car Ppnq est vérifiée
xi }2 ` }x
i“1
n`1
ÿ
“ }x
xi }2 .
i“1
B. Annexes
La propriété Ppn ` 1q est donc vérifiée.
On a donc démontré par récurrence que la propriété Ppnq est vraie pour tout n ě 2.
B.3.Receuil d’exercices
˛
Exercice B.3.19
n
ÿ n n
1ÿ 1ÿ
|ui vi | ď |ui |p ` |vi |q “ 1. (B.75)
i“1
p i“1 q i“1
• Etudions la fonction sur s1, `8r. On a pour t Ps1, `8r, lnptq ą 0 et donc pλ ´ 1q lnptq ă 0. Comme
la fonction exp est croissante, on en déduit 0 ă expppλ ´ 1q lnptqq ă 1 et alors f 1 ptq ą 0.
Le minimum de f est donc atteint en t “ 1 et on a
@t Ps0, `8r, f pxq ě f p1q “ 0.
B.3.2 Normes
|ui ||vi | ď
p q
En sommant sur i on obtient:
B.3. Receuil d’exercices
ÿn n n
1ÿ 1ÿ 1 1
|ui vi | ď |ui |p ` u}pp ` }vv }qq
|vi |q “ }u
i“1
p i“1
q i“1
p q
Q. 3 Par construction, on a
n
ÿ ÿn
1
|ui vi | “ |xi yi |
i“1
}x
x}p }yy }q i“1
et donc en utilisant l’inégalité (B.76) on obtient
n
ÿ
x}p }yy }q .
|xi yi | ď }x
i“1
De plus
n
ÿ n
ÿ n
ÿ
| xx
x, y y | “ | x i yi | ď |xi yi | “ x}p }yy }q .
|xi yi | ď }x
i“1 i“1 i“1
Pour p “ q “ 2, l’inégalité de Hölder entraine l’inégalité de Cauchy-Schwarz.
˛
Exercice B.3.20
1
Soit p ą 1 et q le nombre tel que q “ 1 ´ p1 .
Q. 1 Vérifier que @pα, βq P C2 on a
}x
x ` y }p ď }x x P Cn , @yy P Cn , p ě 1.
x}p ` }yy }p , @x (B.78)
Normes matricielles
Q. 1 On note, respectivement, A i,: , @i P v1, nw et A :,j , @j P v1, nw les vecteurs lignes et colonnes de
A. Montrer que
n
ÿ n
ÿ
B.3.2 Normes
2
}A}F “ Ai,: }22 “
}A }AA:,j }22 “ tr A˚ A. (B.80)
i“1 j“1
Q. 2 Montrer que
x}2 ď }A}F }x
}Ax x P Cn .
x}2 , @x (B.81)
Q. 3 Montrer que cette application est une norme matricielle (nommée norme de Frobenius).
B. Annexes
Q. 4 Calculer }A˚ }F et }In }F où In est la matrice identitée de Mn pCq.
B.3.Receuil d’exercices
Exercice B.3.22
2. }A}2 “ }A˚ }2 .
2
3. }A˚ A}2 “ }A}2 .
4. }U˚ AV}2 “ }A}2 quand UU˚ “ I et VV˚ “ I
Exercice B.3.23
}Ax
x}p ď }A}p }x
x}p (B.82)
}A}p “ max }Ax x}p (B.83)
x}p “1
}x
Exercice B.3.24
n
ÿ n
ÿ n
ÿ n
ÿ
ď max |aij | |xj | “ max |aij | car |xj | “ 1.
jPv1,nw jPv1,nw
i“1 j“1 i“1 j“1
On obtient donc
n
ÿ
x}1 ď max
max }Ax |ai,j |.
x}1 “1
}x jPv1,nw
i“1
il suffit alors de construire un vecteur y P Cn , }yy }1 “ 1 particulier la vérifiant. Pour celà on note
k P v1, nw l’indice tel que
ÿn ÿn
|ai,k | “ max |ai,j |.
jPv1,nw
i“1 i“1
On pose B “ AA˚ . B est une matrice hermitienne : ses valeurs propres sont réelles. Soit pλ, u q un
élément propre de B. On obtient alors
xBu
u, u y “ xλuu, u y
u, u y car λ P R
“ λ xu
2
“ λ }u
u}2
De plus, on a
2
u, u y “ xAA˚u , u y “ xA˚u , A˚u y “ }A˚u }2 ě 0
xBu
et comme }u
u}2 ą 0 (c’est un vecteur propre, il est donc non nul) on en déduit
2
}A˚u }2
λ“ ě 0.
u}22
}u
La matrice B étant hermitienne (elle est donc normale), d’après le Théorème 3.2 page 63, il existe
alors une matrice U unitaire et une matrice D diagonale telle que
B.3.2 Normes
B “ UDU˚ .
On note pλi , e i qiPv1,nw les éléments propres de D. Les vecteurs e i sont les vecteurs de la base canonique
de Cn et λi “ dii . Comme D “ U˚ BU, on obtient
B. Annexes
Deei “ λie i ðñ U˚ BUeei “ λie i
ðñ BUeei “ λi Ueei .
B.3.Receuil d’exercices
C’est à dire en posant v i “ Ueei (i-ème vecteur colonne de U), les éléments propres de B sont les
pλi , v i qiPv1,nw . De plus comme U est unitaire, tvv 1 , . . . , v n u forment une base orthonormée de Cn .
Soit x P Cn tel que }x x}2 “ 1. le vecteur x peut s’écrire comme une combinaison linéaire de la base
orthonormée tvv 1 , . . . , v n u : Dpα1 , . . . , αn q P Cn tel que
n
ÿ
x“ αi v i .
i“1
De plus on a
x}22
}Ax “ xAx xy “ xA˚ Ax
x, Ax x, x y “ xBx
x, x y
C G
ÿn n
ÿ
“ αi Bvv i , αj v j
i“1 j“1
C G
n
ÿ n
ÿ
“ α i λi v i , αj v j
i“1 j“1
n
ÿ n
ÿ
“ α i λi αj xvv i , v j y
i“1 j“1
ÿn
“ λi |αi |2 car λi P R et xvv i , v j y “ δij
i“1
n
ÿ n
ÿ
ď max λi |αi |2 “ ρpA˚ Aq car λi ě 0 et |αi |2 “ 1.
iPv1,nw
i“1 i“1
Pour démontrer que l’on a en fait égalité il suffit de trouver un vecteur la vérifiant. Pour celà on
note k P v1, nw l’indice tel que λk “ maxiPv1,nw λi . En choisissant x “ v k (qui est de norme 1) on
obtient alors
2
}Avv k }2 “ xAvv k , Avv k y “ xA˚ Avv k , v k y “ xλkv k , v k y “ λk “ ρpA˚ Aq.
n
ÿ
}A}8 “ max |aij |.
iPv1,nw
j“1
iPv1,nw iPv1,nw ˇ ˇ
j“1
n
ÿ
ď max |ai,j ||xj |
B.3. Receuil d’exercices
iPv1,nw
j“1
ÿn
ď max |ai,j | car |xj | ď max |xi | “ }x
x}8 “ 1.
iPv1,nw iPv1,nw
j“1
Pour démontrer l’égalité, il suffit de construire un vecteur y de norme 1 la vérifiant. Pour celà on
note k P v1, nw l’indice tel que
n
ÿ n
ÿ
max |aij | “ |ak,j |.
iPv1,nw
j“1 j“1
On a alors }yy }8 “ 1,
n
ÿ n
ÿ
ak,j yj “ |ak,j |
j“1 j“1
On en déduit
ˇ ˇ
ˇÿn ˇ ÿ n ÿn
ˇ ˇ
}Ayy }8 “ max ˇ ai,j yj ˇ “ |ak,j | “ max |ai,j |
iPv1,nw ˇ ˇ j“1 iPv1,nw
j“1 j“1
B. Annexes
double dichotomie1 ( double (∗ f ) ( double ) , 1
d o u b l e ∗A, ∗ B, ∗X, x ; 3
i n t kmin , k ; 4
size_t Size ; 5
1 f u n c t i o n x=d i c h o t o m i e 1 ( f , a , b , e p s i l o n )
a s s e r t ( f ( a ) ∗ f ( b ) <0) ; 6
2 kmin=f l o o r ( ...
kmin=( i n t ) f l o o r ( l o g ( ( b−a ) / e p s ) / l o g ( 2 . ) ) ; 7
l o g ( ( b−a ) / e p s i l o n ) / l o g ( 2 ) ) ;
S i z e =(kmin+1)∗ s i z e o f ( d o u b l e ) ; 8
3 X=z e r o s ( kmin +1 ,1) ;
a s s e r t ( X=( d o u b l e ∗ ) m a l l o c ( S i z e ) ) ; 9
4 A=z e r o s ( kmin +1 ,1) ; B=z e r o s ( kmin +1 ,1) ;
a s s e r t ( A=( d o u b l e ∗ ) m a l l o c ( S i z e ) ) ; 10
5 A( 1 )=a ; B( 1 )=b ;X( 1 ) =(a+b ) / 2 ;
a s s e r t ( B=( d o u b l e ∗ ) m a l l o c ( S i z e ) ) ; 11
6 f o r k=1: kmin
// ou a s s e r t ( A && B && X ) ; 12
7 i f f (X( k ) )==0
A[ 0 ] = a ; B[ 0 ] = b ;X[ 0 ] = ( a+b ) / 2 . ; 13
8 A( k+1)=X( k ) ; B( k+1)=X( k ) ;
f o r ( k =0;k<kmin ; k++){
B.4.Listings
14
9 e l s e i f f (B( k ) ) ∗ f (X( k ) )<0
i f ( f (X[ k ] ) ==0){ 15
10 A( k+1)=X( k ) ; B( k+1)=B( k ) ;
A[ k+1]=X[ k ] ; B [ k+1]=X[ k ] ; 16
11 else
} e l s e i f ( f (B [ k ] ) ∗ f (X[ k ] ) <0 ) { 17
12 A( k+1)=A( k ) ; B( k+1)=X( k ) ;
A[ k+1]=X[ k ] ; B [ k+1]=B [ k ] ; 18
13 end
} else { 19
14 X( k+1)=(A( k+1)+B( k+1) ) / 2 ;
A[ k+1]=A[ k ] ; B [ k+1]=X[ k ] ; 20
15 end
} 21
16 x=X( kmin+1) ;
X[ k+1]=(A[ k+1]+B [ k +1]) / 2 ; 22
17 end
} 23
return x ; 26
} 27
#i n c l u d e <s t d i o . h> 1
#i n c l u d e < s t d l i b . h> 2
#i n c l u d e <math . h> 3
#i n c l u d e <a s s e r t . h> 4
double dichotomie1 ( 6
double (∗ f ) ( double ) , 7
); 9
1 clear all
d o u b l e g1 ( d o u b l e x ) { 10
2 close all
r e t u r n ( x+2) ∗ ( x+2) ∗ ( x−M_PI) ; 11
3 f=@( x ) ( x+2) ∗ ( x+2) ∗ ( x−p i ) ;
} 12
4 x=d i c h o t o m i e 1 ( f , −1 ,2∗ pi , 1 e −8) ;
13
5 f p r i n t f ( ’x =%.16 f\n ’ , x )
i n t main ( ) { 14
6 x=d i c h o t o m i e 1 ( @cos , 2 , pi , 1 e −8) ;
double x ; 15
7 f p r i n t f ( ’x =%.16 f\n ’ , x )
x=d i c h o t o m i e 1 ( g1 , −1 ,2∗M_PI, 1 e −8) ; 16
Listing B.3: script dichotomie1 (Matlab) p r i n t f ( "x =%.16 lf ,␣ error =%.6 e\n" , 17
x , f a b s ( x−M_PI) ) ; 18
x , f a b s ( x−M_PI_2) ) ; 21
return 1; 22
} 23
B.4.1 Codes sur la méthode de dichotomie/bissection
// D e f i n i t i o n de d i c h o t o m i e 1 e n s u i t e . . . 24
8 else
else 9
9 B=x ;
B=x ; 10
10 end
xp=x ; 11
11 xp=x ;
x=(A+B) / 2 ; 12
12 x=(A+B) / 2 ;
} 13
13 end
return x ; 14
14 end
} 15
#i n c l u d e <s t d i o . h> 1
#i n c l u d e <math . h> 2
#i n c l u d e <a s s e r t . h> 3
B.4. Listings
3.10 Fonction FactLU permet de calculer les matrices L et U dites matrice de factorisation LU
associée à la matrice A, telle que A “ LU
3.11 Fonction FactLUligU permet de calculer la ligne i de U à partir de (3.23) . . . . . . . . 81
3.12 Fonction FactLUcolL permet de calculer la colonne i de L à partir de (3.24) . . . . . . . 81
3.13 Fonction FactLU permet de calculer les matrices L et U dites matrice de factorisation LU
associée à la matrice A, telle que A “ LU
en utilisant des fonctions intermédiaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.14 Algorithme de base permettant de résoudre, par une factorisation de Cholesky positive, le
système linéaire Axx“b
où A une matrice de Mn pCq hermitienne définie positive et b P Cn . . . . . . . . . . . . . . 85
3.15 Fonction RSLCholesky permettant de résoudre, par une factorisation de Cholesky posi-
tive, le système linéaire Axx“b
où A une matrice hermitienne de Mn pCq définie positive et b P Cn . . . . . . . . . . . . . . 85
B.4.1 Codes sur la méthode de dichotomie/bissection
j“0,j‰i i
x ´ xj
ÿn
1
4.6 Fonction polyLp permettant de calculer L1i pxi q “ . . . . . . . . . . . . . 142
k“0,k‰i i
x ´ xk
5.1 Fonction WeightsFromPoints retournant le tableau des poids w associé à un tableau de
points x donnés (points 2 à 2 distincts) appartenant à un intervalle ra, bs. . . . . . . . . . 156
5.2 Fonction WeightsPointsNC retournant le tableau de points x donnés correspondant à la
discrétisation régulière intervalle ra, bs. et le tableau des poids řn w associé à un . . . . . . . 165
5.3 Fonction QuadElemGen retourne la valeur de I “ pb ´ aq j“0 wj f pxj q. . . . . . . . . . 166
řn
5.4 Fonction QuadElemGen retourne la valeur de I “ pb ´ aq j“0 wj f pxj q où les poids wi
et les points xi sont ceux définis par la formule de quadrature élémentaire de Newton-Cotes 166
5.5 Fonction GaussLegendre retournant le tableau des points t et le tableau des poids w . . 175
şb
5.6 Fonction QuadElemGaussLegendre retournant une approximation de a f pxqdx en util-
isant la formule de quadrature de Gauss-Legendre à n ` 1 points sur l’intervalle ra, bs. . . 175
5.7 Fonction QuadSimpson retourne une approximation de l’intégrale d’une fonction f sur
l’intervalle rα, βs utilisant la méthode de quadrature composée de Simpson en minimisant
le nombre d’appels à la fonction f. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
normale, 204
norme
invariance par transformation unitaire, 100, 211
matricielle non subordonnée, 102, 212
matricielle subordonnée, 98, 211
vectorielle, 97, 209
permutations, 204
polynôme caractéristique, 205
produit, 202
produit scalaire, 200
projection orthogonale:matrice, 201
projection orthogonale:opérateur, 201
B.INDEX
rayon spectral, 206
régulière, 202
singulière, 202
sous matrice, 207
sous matrice principale, 207
sous-espace propre, 205
spectre, 206
symetrique, 203
unitaire, 204
[1] P.G. Ciarlet. Introduction à l’analyse numérique matricielle et à l’optimisation. DUNOD, 2006.
[2] M. Crouzeix and A.L. Mignot. Analyse numérique des équations différentielles. Mathématiques
appliquées pour la maîtrise. Masson, 1992.
[3] J.-P. Demailly. Analyse numérique et équations différentielles. Grenoble Sciences. EDP Sciences,
2006.
[4] J.P. Demailly. Analyse Numérique et Equations Différentielles. PUG, 1994.
[5] W. Gander, M.J. Gander, and F. Kwok. Scientific computing : an introduction using Maple and
MATLAB. Springer, Cham, 2014.