Analyse numérique : cours et méthodes
Analyse numérique : cours et méthodes
Notes de cours
Sup Galilée, Ingénieurs MACS 1ère année & L3-MIM
Version du 2023/10/10
Francois Cuvelier
Université Paris XIII / Institut Galilée
L.A.G.A./Département de Mathématiques
[Link]
cuvelier@[Link]
Table des matières
4 Interpolation 127
4.1 Polynôme d’interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.1.1 Erreur de l’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.1.2 Points de Chebyshev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.1.3 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.2 Polynôme d’interpolation de Lagrange-Hermite . . . . . . . . . . . . . . . . . . . . . . . . 138
4.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
B Annexes 199
B.1 Analyse : rappels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
B.1.1 En vrac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
B.1.2 Espace métrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
B.2 Algèbre linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
B.2.1 Vecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
B.2.2 Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
B.2.3 Normes vectorielles et normes matricielles . . . . . . . . . . . . . . . . . . . . . . . 211
B.2.4 Réduction des matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
0.0.0
[Link] DES MATIÈRES
[Link] 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 appliquera 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 l’intervalle
10
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
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 z Initialisations
2: Tantque s ą 1e ´ 10 faire z Arrêt si s < sin p³q est petit
3: s Ð sqrtpp1 ´ sqrtp1 ´ s ˚ sqq{2q z nouvelle valeur de sinp³{2q
4: nÐ2˚n z nouvelle valeur de n
5: A Ð pn{2q ˚ s z 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
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 :
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, 31 , 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.2.
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.
Figure 1.3: Nombres positifs de F dans le cas t < 3, L < ´1, U < 2
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 à reprendre
les programmes de calcul scientifique pour les porter d’une machine à une autre. Pour assurer la compat-
ibilité 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
• 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.
a. C’est un nombre négatif, le bit de signe est donc "1",
b. On écrit le nombre (sans le signe) en binaire. Nous obtenons 1110110,101,
c. 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,
d. 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
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
donc sujet aux erreurs d’annulation. Pour y palier, il faut reformuler les équations de façon à s’affranchir
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, z Initialisations
2: Tantque s ą 1e ´ 10 faire z Arrêt si s < sin p³q est petit
3: s Ð s{sqrtp2 ˚ p1 ` sqrtp1 ´ s ˚ sqqq z nouvelle valeur de sinp³{2q
4: nÐ2˚n z nouvelle valeur de n
5: A Ð pn{2q ˚ s z 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
1.203202e-09 4.793690e-05
1.5.0 Erreurs d’annulation
131072 3.14159265238659
262144 3.14159265328899 3.008003e-10 2.396845e-05
524288 3.14159265351459 7.519985e-11 1.198422e-05
1048576 3.14159265357099 1.879963e-11 5.992112e-06
2097152 3.14159265358509 4.699352e-12 2.996056e-06
4194304 3.14159265358862 1.174172e-12 1.498028e-06
8388608 3.14159265358950 2.926548e-13 7.490141e-07
1. Représentation des nombres en machine, erreurs d’arrondis
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 si 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
a8 b8
20
a7 b7
15
a6 b6
a5 b5
10
a4 b4
a3 b3
5 a2 b2
a1 b1
x
a0 0.5 1.0 1.5 2.0 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 a. Montrer que les suites pak q et pbk q convergent vers ³.
b. En déduire que la suite pxk q converge vers ³.
˝
b´a
Q. 2 a. Montrer que pour tout k P N, |xk ´ ³| ď 2k`1
.
Correction 2.1.1
R. 1 a. Supposons qu’il existe k P N tel que f pxk q < 0, (i.e. xk < ³ car xk P ra, bs) alors par
construction ak`i < bk`i < xk`i < ³ pour tout i P N˚ . Ceci assure la convergence des 3 suites vers
³.
Supposons maintenant que @k P N, f pxk q ‰ 0. Par construction, nous avons ak ď ak`1 ď b,
a ď bk`1 ď bk et ak ď bk . La suite pak q est convergente car elle est croissante et majorée. La suite
b ´a
pbk q est décroissante et minorée : elle est donc convergente. De plus 0 ď bk ´ ak ď k´1 2 k´1 et
ak `bk bk ´ak
R. 2 a. On a @k P N, xk < 2 et ak ď ³ ď bk d’où |xk ´ ³| ď 2 . Ce qui donne
b´a
|xk ´ ³| ď .
2k`1
b´a
b. Pour avoir |xk ´ ³| ď ϵ, il suffit d’avoir 2k`1
ď ϵ, et la fonction log étant croissante on obtient
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
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 :
2. Résolution de systèmes non linéaires
Ensuite, pour aboutir à cet objectif on détermine les données (avec hypothèses) nécessaires et suffisantes
:
Données : a, b : deux réels a ă b,
f : f : ra, bs Ă R ÝÑ R vérifiant les hypothèses de la proposition 2.1,
ϵ : un réel strictement positif.
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 :
2.1. Recherche des zéros d’une fonction
³ϵ Ð Dichotomie pf, a, b, ϵq
Nous allons maintenant proposer une manière d’aborder l’écriture de cette fonction dans un langage algo-
rithmique 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
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
et
ak`1 ` bk`1
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 Apk ` 1q < Arks < 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 algorithmiques et mathématiques.
Des codes Matlab/Octave et C correspondant de cette fonction sont données en Annexe B.6.1, respec-
tivement en Listing 18 et 28. Les Listings 8 et 25 correspondent respectivement à un script Matlab et
un main C utilisant cette fonction.
On peut noter qu’une réécriture de la méthode de dichotomie permet d’éviter d’utiliser les deux suites
2.1. Recherche des zéros d’une fonction
A`B
‚ A < a, B < b et x0 < 2 ,
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 z B inchangé
7: Sinon
8: BÐx z 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.6.1, respective-
ment 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 au moins si
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 ´ ³| ď Lk |x0 ´ ³|
ce qui démontre la formule 2.5. En faisant tendre k vers `8 on obtient la convergence de xk vers
³.
De plus, d’après (2.7), comme 0 ă L ă 1, la convergence est au moins d’ordre 1.
Pour la dernière estimation, on a:
ce qui donne
p1 ´ Lq|xk ´ ³| ď L|xk´1 ´ xk |
Comme 1 ´ L ą 0, on en déduit immédiatement l’estimation (2.6).
2.2.0 Méthode de dichotomie ou de bissection
2ème approche :
L’objectif de cette approche est de proposer une démonstration très proche de celle utilisée pour des
espaces plus complexes (par exemple C, Rn , ...). Dans la 1ère approche le théorème de Bolzano et des
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.
|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 |
l“0
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. En effet, pour que
pxk q soit une suite de Cauchy, il faut montrer que
Comme 0 ă L ă 1, on a
1
|xk`p ´ xk | ď Lk |x1 ´ x0 |
1´L
Soit ϵ ą 0, pour avoir |xk`p ´ xk | ă ϵ, il est suffisant d’avoir
1
Lk |x1 ´ x0 | ă ϵ
1´L
‚ 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 Φ
d. Si x0 ‰ ³, alors
xk`1 ´ ³
lim < Φ1 p³q. (2.9)
kÑ`8 xk ´ ³
Preuve. Pour démontrer les trois premiers points il suffit de montrer que (2.8) entraine que Φ est con-
tractante sur ra, bs pour pouvoir appliquer le théorème 2.3.
En effet, soit px, yq P ra, bs2 , x ‰ y. D’après le théorème B.2 des accroissements finis il existe À P
s minpx, yq, maxpx, yqr tel que
Φpxq ´ Φpyq
< Φ1 pÀq.
x´y
Ce résultat s’obtient aussi par un développement de Taylor. On obtient alors
De plus, si x0 ‰ ³, on a
xk`1 ´ ³
lim < Φ1 p³q. (2.10)
kÑ`8 xk ´ ³
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 Ps³ ´ ´, ³ ` ´r, |Φ1 pxq| ă 1.
En posant ¶ < ´{2 (par ex.), on a en posant V < r³ ´ ¶, ³ ` ¶s,
@x P V, |Φ1 pxq| ă 1.
2. Résolution de systèmes non linéaires
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
1
On a donc L < |Φ px̄q| ă 1.
Montrons que ΦpVq Ă V. En effet, d’après la formule de Taylor-Lagrange:
@x P V, DÀ Ps minpx, ³q, maxpx, ³qrĂ V tel que
Φpxq < Φp³q ` px ´ ³qΦ1 pÀq.
On en déduit
2.2. Points fixes d’une fonction (dimension 1)
Exercice 2.2.1
Soit ³ un point fixe d’une fonction Φ de classe C 1 au voisinage de ³ et vérifiant Φ1 p³q < 0.
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
Q. 2 a. Montrer que
ˆ ˙2k
2 1
@x0 P r³ ´ ¶, ³ ` ¶s, |xk ´ ³| ď M |x0 ´ ³|
M 2
Correction 2.2.1
R. 1
R. 2 a. 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
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 .
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 < . (2.11)
kÑ`8 pxk ´ ³qp`1 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
Φpxk q < Φ p³q ` Φ p¸k q.
i“0
i! pp ` 1q!
De plus p¸k q converge vers ³ car ¸k est entre xk et ³ et donc comme Φpp`1q est continue au voisinage de
³ on obtient
xk`1 ´ ³ Φpp`1q p¸k q Φpp`1q p³q
lim p`1
< lim < .
kÑ`8 pxk ´ ³q kÑ`8 pp ` 1q! pp ` 1q!
2.2.2 Interprétations graphiques de la méthode du point fixe
@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 Φ.
2.2. Points fixes d’une fonction (dimension 1)
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 .
2.0
1.5
1.0
0.5
α x
y=x
α = Φ(α)
y=x 0.5
?
Figure 2.3: fonction x2 et son fonction inverse x sur r0, `8r
y
y
1.4
y = Φ(x) = x 2
y = Φ(x) = x 2 y=x
y=x
2.0 1.2
1.0
Φ( x2 )
1.5 Φ(x0 )
Φ( x)
0.81
Φ(x3 )
0.4
0.5
Φ( x4 )
0.2
Φ(x )
Φ(x765 )
xx87 6 x x x3 x x1x1.0
x
xx0 1 x2 x3
x 5
0.2 0.4
4
0.6
2
0.8
0
1.2 1.4
0.2 0.4 0.6 0.8 1.0 1.2 1.4
0.2
k xk xk
0 1.40000 0.200000
1 1.18322 0.447214
2 1.08776 0.668740
3 1.04296 0.817765
.. .. ..
. . .
8 1.00132 0.993733
Les premières itérations de ces deux suites sont représentées en Figure 2.5.
y
2.2.2 Interprétations graphiques de la méthode du point fixe
p
y= x
1.4
y=x
y 1.2
p
y= x
1.4
y=x
1.0
Φ(x4 )
Φ( x0 )
1.2 Φ(x3 )
Φ(x1 )
Φ(x2 )
Φ( x)
0.82
1.0
Φ(x1 )
0.8 0.6
0.6 Φ(x0 )
0.4
0.4
0.2
2. Résolution de systèmes non linéaires
0.2
x x x1 x2 x x4x51.0
x
0.2 0.4 0.6 0.8
x3x2 x1.2
1.0
1 x 0
1.4
0
0.2 0.4 0.6
3
0.8 1.2 1.4
On donne dans le tableau suivant les premiers termes de deux suites : l’une avec x0 < 1.20 diverge et
l’autre avec x0 < 0.500 converge vers ³.
diverge converge
x0 < 1.20000 x0 < 0.500000
x1 < 1.24000 x1 < 0.750000
x2 < 1.29760 x2 < 0.812500
x3 < 1.38617 x3 < 0.847656
.. ..
. .
x15 < 2.32096 ˆ 10161 x5000 < 0.999800
Les premières itérations de ces deux suites sont représentées en Figure 2.7.
Φ1 p1q < Φ2 p1q < Φ3 p1q < 1 et Φ11 p1q < ´1, Φ12 p1q < ´3{4, Φ13 p1q < ´4{3.
y
3.0
x x2 − x + 1
2.5
2.0
1.5
0.5
α x
0.5 0.5 1.0 1.5 2.0
y=x 0.5
y = Φ(x) = x 2
−x+1
y=x
1.5
Φ(x2 )
Φ(x1 )
Φ(x0 )
Φ(x45 ))
1.0
Φ(
Φ(
Φ( xx3 ))
Φ(x12 )
Φ(x0 )
0.5
0.5
x x0 0.6 x0.8
x
xx x x
01 2 3 1xx
2xx3x456 1.0
0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.2 0.4 1.2 1.4
Les premières itérations des trois suites obtenues sont représentées en Figure 2.8.
y y
2.0 2.0 y = Φ(x) = − 3
4
x + 74
y=x y
Φ( x7 )
2.0 y = Φ(x) = − 4
3
x + 73
y=x
Φ( x1357 )
1.5 1.5
Φ(x1 ) Φ(x5 )
1.5
Φ(x3 )
Φ(x5 ) Φ(x3 )
Φ(x7 )
xx68 )) Φ(x1 )
1.0 1.0
Φ(
Φ(
Φ(x4 )
Φ(x2 ) 1.0
Φ(x0 )
Φ(x0 )
2. Résolution de systèmes non linéaires
Φ(x2 )
Φ( x02468 )
0.5 0.5
Φ(x4 )
0.5
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
6: ³tol Ð xk z le dernier calculé. 6: ³tol Ð xk z le dernier calculé.
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 | <
|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 no-
tations mathématiques sont donnés par Algorithme 2.8 et 2.9, respectivement avec des boucles Tantque
et Répéter.
Des versions, sous forme de fonction, plus proches de la programmation sont proposées en Algorithme 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, ...)
choix possible.
Soit f une fonction de classe C 1 dans un voisinage d’une de ses racines simple ³.
Selectionner une version :
Version 1 En appliquant la formule de Taylor pour tout x dans ce voisinage, il existe À Ps minpx, ³q, maxpx, ³qr
tel que
f p³q < 0 < f pxq ` p³ ´ xqf 1 pÀq.
Ceci conduit à la méthode itérative suivante : x0 étant donné dans le voisinage de ³, on doit,
@k P N, déterminer xk`1 vérifiant f pxk q ` pxk`1 ´ xk qqk < 0 sachant que qk est une approximation
de f 1 pÀq.
Version 2 On cherche à déterminer une méthode itérative permettant de calculer xk`1 en fonction des
valeurs précédentes en espérant que |xk`1 ´ ³| ď |xk ´ ³|. Pour celà, on écrit une formule de taylor
en xk supposé proche de ³ et on note h < ³ ´ xk
2.2.4 Méthodes de points fixes pour la recherche de racines
La méthode de la corde
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.13)
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.13) 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.14)
¼
minp¼px ´ aq, ¼px ´ bqq ď f pxq ď maxp¼px ´ aq, ¼px ´ bqq (2.15)
1
minp0, 2¼q ă f pxq ă maxp0, 2¼q (2.16)
Exercice 2.2.2
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
minp¼px ´ aq, ¼px ´ bqq ď f pxq ď maxp¼px ´ aq, ¼px ´ bqq (2.17)
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. ˝
Correction 2.2.2
R. 1 Si ¼ ą 0, l’inéquation (2.17) devient
f pxq
¼px ´ bq ď f pxq ď ¼px ´ aq ô a ď x ´ ďb
¼
ô a ď Φpxq ď b.
Si ¼ ă 0, l’inéquation (2.17) devient
R. 3 Sous les hypothèses (2.17) et (2.18) 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.
˛
Soit f P C 1 pra, bsq tel que f pbq ‰ f paq. Si la suite pxk q définie par la méthode de la corde en (2.14)
converge vers ³ Psa, br alors la convergence est au moins d’ordre 1.
2.2.4 Méthodes de points fixes pour la recherche de racines
De plus, si f est de classe C 2 sur un certain voisinage V de ³ et si f 1 p³q < f pbq´f b´a
paq
alors la
convergence est au moins d’ordre 2.
xk`1 ´ ³ f 1 p³q
2.2. Points fixes d’une fonction (dimension 1)
lim <1´ .
kÑ`8 xk ´ ³ ¼
La convergence est donc (au moins) d’ordre 1.
‚ Order 2 : La suite étant convergente, il existe k0 P N tel que @k ě k0 , xk P V. Soit k ě k0 , comme
f P C 2 pVq, on peut appliquer la formule de Taylor-Lagrange : il existe ¸k P V compris entre xk et
³ que
pxk ´ ³q2 p2q
p³qon `pxk ´ ³qf 1 p³q `
f pxk q < lofomo f p¸k q.
2!
“0
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.
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
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
y = f(a) + q(x − a)
3.0
y = f(x) y
2.5 2.0
f(x0 )
y = Φ(x)
y=x
2.0
1.5
1.5
2.2.4 Méthodes de points fixes pour la recherche de racines
1.0
Φ( x2 )
Φ(x1 )
1.0
0.5
Φ(x0 )
f0.5
(x1 )
x1 x1.0
x3 x0
x
2
1.0 0.5 1.5 2.0
Figure 2.9: Exemple 1, méthode de la corde, ³ < 1, racine de f : x ÞÑ x2 ´ 1 avec a < 0.00, b < 2.00,
x0 < 1.80,
2. Résolution de systèmes non linéaires
y = f(a) + q(x − a)
3.0
y = f(x) y
2.5 2.0
f(x0 )
y = Φ(x)
y=x
2.0
2.2. Points fixes d’une fonction (dimension 1)
1.5
1.5
1.0
Φ( xx12 ))
1.0
Φ(
Φ(x0 )
0.5
ff((x x1xx23456
x56234 )) x0 0.5
0.5 1.0 1.5 2.0
f(x1 )
0.5
x1 x1.0
x23 x0
x
1.0 0.5 1.5 2.0
Figure 2.10: Exemple 2, méthode de la corde, ³ < 1, racine de f : x ÞÑ x2 ´ 1 avec a < 0.50, b < 1.90,
x0 < 1.80,
ek
exemple 1
exemple 2
10-2
10-4
10-6
10-8
10-10
10-12
On remarque qu’avec les données de l’exemple 1 la convergence est beaucoup plus rapide. Ceci est
illustré en Figure 2.11. En effet dans ce cas on a
f pbq ´ f paq
< 2 et f 1 p³q < 2.
b´a
D’après la proposition 2.8, la convergence est d’ordre 2 pour l’exemple 1. Par contre, on a pour l’exemple
2
f pbq ´ f paq
ek + 1
10-1 exemple 1 : pente=2.000
exemple 2 : pente=1.000
10-3
10-5
10-9
10-11
ek
10-10 10-8 10-6 10-4 10-2
Figure 2.12: Représentation en échelle logarithmique de ek`1 en fonction de ek . Les pentes sont calculées
numériquement
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.19)
f 1 pxk q
Bien évidemment, il faudra s’assurer que f 1 pxk q ‰ 0. 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.21) s’écrit
xk`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
2.2.4 Méthodes de points fixes pour la recherche de racines
f pxk q
xk`1 < xk ´ , @k P N. (2.20)
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
On a alors xk`1 < Φpxk q. La fonction Φ est de classe C 1 sur V et
on en déduit que la suite pxk q converge vers ³ (et que la convergence est au moins d’ordre 1. Pour
démontrer qu’elle est d’ordre 2, on ne peut utiliser le théorème 2.6 car Φ n’est pas de classe C 2 . Toutefois
comme f est de classe C 2 , on applique la formule de Taylor-Lagrange aux points xk , ³ (en supposant
xk ‰ ³) : il existe Àk compris entre xk et ³ tel que
p³ ´ xk q2 p2q
p³qon < f pxk q ` p³ ´ xk qf 1 pxk q `
lofomo f pÀk q.
2!
“0
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 q
2.2. Points fixes d’une fonction (dimension 1)
1 k 1
f pxk q 2f 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.21)
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.21) s’écrit xk`1 < Φpxk q et on note que Φp³q < ³ (i.e. ³ point
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
Q. 1 Comment feriez-vous
? pour trouver à la main une méthode permettant de trouver des nombres
rationnels approchant 2. ˝
Correction 2.2.3
?
R. 1 Il suffit de voir que 2 est la racine positive de f pxq < x2 ´ 2 et d’appliquer la méthode de Newton
par exemple. La suite des itérés de Newton s’écrit alors
?
R. 2 Il suffit de voir que a est la racine positive de f pxq < x2 ´ a et d’appliquer la méthode de Newton
par exemple. La suite des itérés de Newton s’écrit alors
f pxk q x2k ´ a x2k ` a
xk`1 < xk ´ < x k ´ <
f 1 pxk q 2xk 2xk
Avec a < 3 et x0 < 1, on obtient ?
2.2.4 Méthodes de points fixes pour la recherche de racines
k xk | 3 ´ xk |
1 2 2.67949e-01
7
2 4 1.79492e-02
97
3 56 9.20496e-05
?
R. 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
f pxk q xn ´ a pn ´ 1qxnk ´ a
xk`1 << xk ´ < xk ´ k n´1 <
1
f pxk q nxk nxkn´1
Avec a < 3, n < 4 et x0 < 1, on obtient
?
k xk | 4 3 ´ xk |
3
1 2 1.83926e-01
97
2. Résolution de systèmes non linéaires
2 72 3.11482e-02
115403137
3 87616608 1.06368e-03
236297297271008837816738085152257
4 179546943199700984864483416264832 1.28780e-06
˛
On présente en Algorithme 2.14 l’implémentation standard de la méthode de Newton. Une autre version
utilisant la fonction PtFixe est donnée en Algorithme 2.15.
x0 : donnée initiale, x0 P R,
tol : la tolérence, tol P R` , Algorithme 2.15 Méthode de Newton scalaire
kmax : nombre maximum d’itérations, kmax P N˚ Données :
Résultat : f : f : R ÝÑ R ,
³tol : un réel tel que |Φp³tol q ´ ³tol | ď tol df : la dérivée de f ,
x0 : donnée initiale, x0 P R,
1: Fonction ³tol Ð Newton ( f, df, x0 , tol, kmax ) tol : la tolérence, tol P R` ,
2: k Ð 0, ³tol Ð H kmax : nombre maximum d’itérations, kmax P N˚
3: x Ð x0 , Résultat :
4: err Ð tol ` 1 ³tol : un réel tel que
5: Tantque err ą tol et k ď kmax faire
6: k Ðk`1 ` ³tol Ð Newton ( ˘f, df, x0 , tol, kmax )
1: Fonction
7: xp Ð x 2: Φ Ð x ÞÑ x ´ f pxq{dfpxq
8: x Ð xp ´ f pxpq{dfpxpq z dfpxpq ‰ 0 3: ³tol Ð PtFixepΦ, x0 , tol, kmaxq
9: err Ð |x ´ xp| 4: Fin Fonction
10: Fin Tantque
11: Si err ď tol alors z 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
fonction Φ (figure de droite).
y
2.0
y = Φ(x)
y=x
3.0 x=α
f : x x2 − 1
: y = f (x0 )(x − x0 ) + f(x0 )
Φ(x0 )
D0
0
1.5
Φ(x1 )
1.5 Φ( x2 )
1.0
f(x1 )
1.0
0.5
0.5
f(x2 ) x0
f(x3 ) x x2 x1
3
0.5 1.0 1.5 2.0
0.5
y
2.0
y = Φ(x)
y=x
Φ(x0 )
2.0
Φ(x21 ))
Φ(
1.5
1.5
1.0
x=α 1.0
0.5
f(x1 )
0.5
0.5
1.0
f : x x cos x
2
( )
x
1.5
f(x0 ) : y = f (x2 )(x − x2 ) + f(x2 )
0
D2
1
Figure 2.14: Exemple 2, méthode de Newton, ³ < 2 Ã, racine de f : x ÞÑ x2 cos pxq avec x0 < 0.40,
On illustre la convergence et l’ordre de convergence respectivement en Figures 2.15a et 2.15b. 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 .
ek ek + 1
f(x)
,
pente=1.953
= x 2 cos (x),
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.22). 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.22)
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.0 1.5 2.0
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 −
(x4)
x1
2 ) y =α
x3 x0
0.5
−
x 1 x1 x2 x4
1.0 1.5 2.0 2.5 3.0
6
f(x3 )
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
f(x)
,
pente=1.608
= x 2 cos (x),
10-3
10-5
10-5
10-7
10-7
10-9 10-9
10-11 10-11
10-13 10-13
10-15
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
?
dre théorique 1`2 5 « 1.618
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
On a alors
2. Résolution de systèmes non linéaires
ak f pbk q ´ bk f pak q
xk < ´d{c < .
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,
si
$
’
’ ak`1 < bk`1 < xk`1 < xk , f pxk q < 0,
k`1 < xk , bk`1 < bk , si f pbk qf pxk q ă 0,
’
&a
2.2. Points fixes d’une fonction (dimension 1)
’
’ a k`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 , si f pxk q ‰ 0.
%
q´f pak`1 q
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
˝
Correction 2.2.4
pbq´bf paq
R. 1 On pose x < aff pbq´f paq qui est bien défini car f paq ‰ f pbq. En effet si f paq < f pbq alors f paqf pbq <
f paq2 ě 0 qui est en contradiction avec l’hypothèse f paqf pbq ă 0. On a
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.
Hérédité Soit k ě 1. On suppose la proposition pPk q est vraie. Montrons que pPk`1 q est vérifiée.
Si f pxk q < 0 alors ak`1 < bk`1 < xk`1 < xk et la proposition pPk`1 q est vérifiée.
On suppose maintenant que f pxk q ‰ 0.
R. 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 <
xs`i < xs . Les trois suites convergent donc vers xs . D’après la question précédente, xs P ra, bs. Comme
f paq ‰ 0 et f pbq ‰ 0, on en déduit xs Psa, br. Par hypothèse il existe un unique À Psa, br tel que f pÀq < 0,
on a alors xs < À.
Supposons que @k P N, f pxk q ‰ 0. D’après Q. 2, la suite pak q est croissante majorée par b et la suite
pbk q est décroissante minorée par a. Elles sont donc convergentes et l’on note respectivement l et L les
limites de pak q et pbk q. Comme a ď ak ď bk ď b, on a a ď l ď L ď b.
‚ 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.23)
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.
– Si f plq ă f pLq, alors de (2.23) on obtient
lpf pLq ´ f plqq ď lf pLq ´ Lf plq ď Lpf pLq ´ f plqq
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.23) on obtient
2.3.0 Méthode Regula-Falsi ou fausse position
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
2. Résolution de systèmes non linéaires
que M < À.
˛
Théorème 2.11
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 ³
2.3. 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. Si f est deux fois dérivables sur ra, bs et si f 2 est monotone sur sa, br
alors il existe C P R tel que
|xk`1 ´ ³|
lim ďC (2.24)
kÑ`8 |xk ´ ³|
En Figures 2.19 et 2.21, on représente pour différentes valeurs de c les courbes f1 px1 , x2 q < 0 et
f2 px1 , x2 q < 0 : les intersections de ces deux courbes sont les solutions du problème (2.25). Comme
on le voit graphiquemment, il peut y avoir, suivant les valeurs de c, 0, 1, 2 ou 4 solutions.
1.0 1.0
c = 0.00 c ∼ − 0 825 .
0.5 0.5
0
0
0.
0.
=
=
f 2(
2)
2)
x2
x2
x 1,
0.0 0.0
x
x
1,
1,
x 2)
1 (x
1 (x
f
f
=0
f (
2 x
.0
1, x
0.5 0.5 2) =0
1.0 1.0
1.5 1.0 0.5 0.0 0.5 1.0 1.5 1.0 0.5 0.0 0.5 1.0
x1 x1
Figure 2.19: Résolution graphique de 2.25 avec c < 0.00 (gauche) et c > ´0.825 (droite)
c = − 1 00
. c = − 1 50.
0.5 0.5
0
0
0.
0.
=
=
2)
2)
x2
x2
0.0 0.0
x
x
1,
1,
1 (x
1 (x
f
f (
2 x
0.5 1, x 0.5
2) = 0.
0
1.5 1.0 0.5 0.0 0.5 1.0 1.5 1.0 0.5 0.0 0.5 1.0
x1 x1
Figure 2.20: Résolution graphique de 2.25 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).
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.
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
DL Ps0, 1r, }Φ
Φpx
xq ´ Φ pyy q} ď L }x
x ´ y } , @px
x, y q P U ˆ U. (2.26)
Alors
2.3. Résolution de systèmes non linéaires
c. Pour tout k P N,
› › Lk´l ›› rl`1s ›
³ ´ x rks › ď x ´ x rls › , 0 ď l ď k (2.27)
› › ›
1´L
›³ ›x
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
´ x rks › < ›Φ x rks q ´ Φ px
x rk´1s q› ď L ›x
› rks
x Φpx x ´ x rk´1s ›
› › › ›
›x
Comme Lk Ñ 0 quand k Ñ `8, on conclu que px x rks q est une suite de Cauchy. De plus, par construction
x rks P U Ă B, pour tout k P N, et B étant un espace de Banach et U un fermé, la suite px x rks q converge
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.31)
Nous voulons trouver ³ tel que f p³ ³q < 0. Si x xrks est proche de ³ , alors en utilisant (2.31) avec x < x rks
et ³ < x rks ` h (i.e. h < ³ ´ x rks ) 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
On espère alors que h̃ est une bonne approximation de h au sens ou xrks `h̃ est une meilleur approximation
de ³ que xrks . On note alors xrk`1s < xrks ` h̃
h̃. En posant Φpx xq < x ´ ppJf px xqq´1 f px
xq la méthode de
Newton s’écrit alors
´ ¯´1
x rk`1s < Φpx
xrks q < x rks ´ pJf px
xrks q xrks q
f px (2.33)
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.32) ce qui est bien plus efficace.
On admet dans ce cours le théorème suivant
Théorème 2.14
On donne ensuite l’algorithme 2.16 permettant de déterminer une approximation d’un point fixe d’une
fonction f . Dans cet algorithme on suppose donnée la fonction Solve permettant de résoudre un système
linéaire.
2. Résolution de systèmes non linéaires
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 1. 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.25 avec c < ´1.5
#
f1 px1 , x2 q < ´x31 ` x2 ´ 21 <0
1 2 3
(2.34)
f2 px1 , x2 q < 25 p10 x2 ` 1q ´ x1 ´ 2 < 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 .
En Figure 2.22a, on représente les bassins d’attraction pour les itérées de Newton associés au système
2.34 : à 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.
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
45
3
2 2 40
35
30
3 3
2
25
20
15
1 1
1
10
3 3
2
3
2 2
1 1
2.3.3 Exemples
1
Figure 2.24: Méthode de Newton, système (2.35), zooms sur les bassins d’attraction
2 40
50
35
40
30
3
25
30
20
15 20
1
10
10
50
45
40
35
30
25
20
15
10
Figure 2.25: Méthode de Newton, système (2.35), zooms sur les nombres d’itérations
120
α5
α4 100
80
α2
60
α1
40
α3
20
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
˚ .. 9 ˚ .. 9 ˚ .9
˚ A2,1 . . . ..
. . 9 ˚ ..
.
..
. . 9 ˚ .. ..
. . .. 9
AX < I ðñ ˚ 9 ˚ X2,1 9 < ˚0 9
˚ . .. .. 9˚ . .. .. 9 ˚. . 9
˝ .. . . 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 ¨ ˛ ¨ ˛
˚ .. 9
˚ A2,1 . . . ..
. 9
. 9˝
˚ X 1 . . . X n ‚ < ˝ e1 . . . en ‚
˚ . . . 9
˝ . . . . . . An´1,n ‚
An,1 . . . An,n´1 An,n
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
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 comportant
que des opérations élémentaires(.... à finaliser) de telle sorte que le passage entre deux raffinements
successifs soit le plus compréhensible possible.
Algorithme 3.2 R0 Algorithme 3.2 R1
3.1.Méthodes directes
Résoudre Axx < b en calculant 1: Pour i Ð 1 ˜à n faire ¸
i´1
ÿ
successivement x1 , x2 , . . . , xn . 1
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, l’opérateur
ř j<1
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.
Algorithme 3.2 R2 Algorithme 3.2 R3
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.1.Méthodes directes
Calculer xi connaissant xi`1 , . . . , xn n
ÿ
à l’aide de l’équation (3.3) 2: SÐ Ai,j xj
2:
j<i`1
3: Fin Pour
3: xi Ð pbi ´ Sq{Ai,i
4: 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
tx
x1 , . . . , x n u à partir d’un vecteur u donné. Les vecteurs x k seront stockés dans une matrice
de Mn,n pCq, le vecteur x k étant en colonne k de la matrice. On pourra pour celà utiliser
les fonctions prédéfinies s Ð dotpu u, v q qui retourne le produit scalaire de deux vecteurs, s Ð
abspxq qui retourne le module d’un nombre complexe, ...
˝
P < ˝ x1 . . . xn ‚
A < UTU˚
Soit A P Mn pCq. Il existe une matrice unitaire U et une matrice triangulaire supérieure T telles que
a. Soit A P Mn pCq. Il existe une matrice unitaire U telle que U-1 AU soit triangulaire.
b. Soit A P Mn pCq une matrice normale. Il existe une matrice unitaire U telle que U-1 AU soit
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 9
˚ 9
˚ .. .. .. .. 9
rv
vs ˚ . . . 9
E <˚ . 0 9 (3.5)
˚ 9
˚ .. .. . . . . 9
˝ . . . . 0 ‚
´vn {v1 0 . . . 0 1
3.1.Méthodes directes
b. Déterminer l’inverse de Ervv s .
˝
Soit 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 .
ErA
A1 s
Aee1 < A1,1e 1 (3.6)
Soit m P N˚ . On note Erm,vv s P Mm`n pCq la matrice triangulaire inférieure à diagonale unité définie
par ˆ ˙
Im O
Erm,vv s < (3.7)
O Ervv s
Correction 3.1.3
R. 1 a. La matrice Ervv s est triangulaire : son déterminant est donc le produit de ses éléments diago-
naux (Proposition B.53 page 211) On a alors detpErvv s q < 1.
3.1.2 Exercices et résultats préliminaires
b. Pour calculer son inverse qui existe puisque detpErvv s q ‰ 0, on écrit Ervv s sous forme bloc :
¨ ˛
1 0 ... 0
˚ 9
Ervv s < ˚
˝ e
9
‚
In´1
3. Résolution de systèmes linéaires
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˚
˚ 9
X<˚ ˝ c
9
‚
D
Ervv s X < ˚
˝
9˚
‚˝ c
9<˚
‚ ˝ eˆa`I ˚
9
‚
e In´1 D n´1 ˆ c e ˆ b ` In´1 ˆ D
¨ ˛
a b˚
˚ 9
<˚
˝ ˚
9
‚
aee ` c eb ` D
qui donnent immédiatement a < 1, b < 0n´1 , c < ´ee et D < In´1 . On obtient le résultat suivant
¨ ˛¨ ˛
1 0 ... 0 1 0 ... 0
˚ 9˚ 9
˚ 9˚ 9 < In .
˝ ´ee In´1 ‚ ˝ e In´1 ‚
b. De (3.8), on tire Ã1,1 < A1,1 . A partir de (3.9) on obtient pour tout i P v2, nw, Ãi,1 < Ai,1 ´ vv1i A1,1 .
Par construction vj < Aj,1 pour tout j P v1, nw, ce qui donne Ãi,1 < 0.
t
La première colonne de à est p1, 0, . . . , 0q .
R. 3 a. La matrice Erm,vv s est triangulaire inférieure. Son déterminant est donc le produit de ses 3.1.Méthodes directes
é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 211, son déterminant est le produit des déterminant des blocs diagonaux
: det Erm,vv s < det Im ˆ det Ervv s < 1.
b. On note X l’inverse de la matrice Erm,vv s . Cette matrice s’écrit avec la même structure bloc
ˆ ˙
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 ( Proposition B.54,
page 211) directement le résultat.
R. 4 Le produit Erm,vv s C peut s’effectuer par bloc car les blocs sont de dimensions compatibles et on a
ˆ ˙ˆ ˙ ˆ ˙
rm,v
vs Im Om,n C1,1 C1,2 Im C1,1 ` Om,n On,m Im C1,2 ` Om,n A
E 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 Ã
3.1.2 Exercices et résultats préliminaires
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
3. Résolution de systèmes linéaires
ri,js
Soit pi, jq P v1, nw2 , i ‰ j, on note Pn P Mn pRq la matrice identitée dont on a permuté les lignes
i et j.
Soit A P Mn [Link] note Ar,: le r-ème vecteur ligne de A et A:,s le s-ème vecteur colonne de A.
ri,js
Q. 2 a. Déterminer les lignes de la matrice D < Pn A en fonction des vecteurs lignes de A.
ri,js
b. Déterminer les colonnes de la matrice E < APn en fonction des vecteurs colonnes de A.
˝
ri,js
Q. 3 a. Calculer le déterminant de Pn .
ri,js
b. Déterminer l’inverse de Pn .
˝
Correction 3.1.4
ri,js
R. 1 On note, dans toute la correction, P < Pn .
On peut définir cette matrice par ligne,
$
& @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 .
On peut noter que la matrice P est symétrique. Pour la représentation, on suppose i ă j. On effectue
une représentation bloc 5 ˆ 5 avec des blocs diagonaux carrés sachant que tous les blocs non décrits sont
nuls:
i´1 j´i´1 n´j
¨ i j ˛
˚ I 9 i´1
˚ 9
˚ 9
˚ 9
˚ 0 1 9i
˚ 9
˚ 9
˚ 9
P<˚
˚ I 9 j´i´1
9
˚ 9
˚ 9
˚ 1 0 9j
3.1.Méthodes directes
k<1
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
˚ 9
colonne ˝ ... ‚
Dn,j
. Ne pas utiliser les indices i et j qui sont déjà fixés dans la définition de la matrice P <
ri,js
Pn .
ce qui donne $
& E :,s < A :,s , @s P v1, nwzti, ju,
E :,i < A :,j ,
%
E :,j < A :,i .
3.1.3 Méthode de Gauss-Jordan, écriture matricielle
b. Immédiat par calcul direct on a PP < I et donc la matrice P est inversible et P-1 < P.
˛
On tire de cet exercice le lemme suivant
Lemme 3.4
ri,js
3. Résolution de systèmes linéaires
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
a. la matrice Pn A est la matrice A dont on a permuté les lignes i et j,
ri,js
b. 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é
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.
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
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 z ChercheIndPivot à écrire
4: rA, b s Ð PermLignesSys pA, b , j, kq z PermLignesSys à écrire
5: Pour i Ð j ` 1 à n faire
6: rA, b s Ð CombLignesSys pA, b , j, i, ´Api, jq{Apj, jqq z CombLignesSys à écrire
7: Fin Pour
8: Fin Pour
9: x Ð RSLTriSuppA, b q z RSLTriSup déjà écrite
3.1.Méthodes directes
10: Fin Fonction
Bien évidemment, il reste à décrire et écrire les différentes fonctions utilisées dans cette fonction :
Fonction k Ð ChercheIndPivotpA, jq : recherche k P vj, nw tel que @l P vj, nw, |Al,j | ď |Ak,j |.
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.
j, i : entiers, 1 ď j, i ď n.
alpha : scalaire de K
Résultat : A et b modifiés.
Ecriture algébrique
Sous forme d’exercice :
Exercice 3.1.5
Q. 2 a. 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.
3.1. Méthodes directes
Correction 3.1.5
R. 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 64). 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 .
En posant G < EP et ³ < Ap,1 , on obtient bien GAee1 < ³ee1 . De plus, on a
| det G| < | detpEPq| < | det E ˆ det P| < 1.
Remarque 2. La matrice G étant inversible, on a
x < b ðñ GAx
Ax x < Gbb
ce qui correspond à la première permutation/élimination de l’algorithme de Gauss-Jordan.
R. 3 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.
Pour la deuxième question, le seul changement vient du fait que la matrice Un n’est plus inversible.
˛
On a donc démontré le théorème suivant
Théorème 3.5
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.4 Factorisation LU
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 209) 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
3.1. Méthodes directes
soit triangulaire supérieure avec Ui,i < det ∆i {pU1,1 ˆ ¨ ¨ ¨ ˆ Ui´1,i´1 q, @i P v1, nw.
Correction 3.1.6
On note Ar0s < A. On va démontrer par récurrence finie sur k P v1, n ´ 1w, qu’il existe une matrice
Erks P Mn pCq, triangulaire inférieure à diagonale unité, telle que la matrice Arks définie itérativement par
Arks < Erks Ark´1s
s’écrit sous la forme bloc ¨ ˛
³1 ‚ ¨¨¨ ‚ ‚ ¨¨¨ ‚
˚ .. .. . .. .. 9
˚
˚ 0 . . .. . . 9
9
˚ .. .. .. .. .. 9
˚ . . ‚ 9
˚ . . . 9
˚ 9
˚ 0 ... 0 ³k ‚ ¨¨¨ ‚ 9
Arks <˚ 9 (3.11)
˚ 0 ... ... 0 ‚ ¨¨¨ ‚ 9
˚ 9
˚ .. .. .. . .. .. 9
˚ . . . .. . . 9
˚ 9
˚ .. .. .. . .. .. 9
˝ . . . .. . . ‚
0 ... ... 0 ‚ ¨¨¨ ‚
3.1.4 Factorisation LU
˚ 9
˚ 0 . . . . . . 0 ³k`1 ‚ ¨ ¨ ¨ ‚ 9
˚ 9
˚ 0 ¨¨¨ ¨¨¨ 0 ‚ ‚ ¨¨¨ ‚ 9
˚ 9
˚ . .. .. .. 9
˝ .. . ‚ . . ‚
def
La matrice Grks < Erks ¨ ¨ ¨ Er1s est triangulaire inférieure à diagonale unité car produit de
matrices triangulaires inférieures à diagonale unité (voir Exercice ??, page ??). Le produit de
Grks A s’écrit alors sous forme bloc
k`1
¨ ˛
1 0 ¨¨¨ 0 0 ¨¨¨ ¨¨¨ 0
k`1
˚ ‚ . . . . . . ... ... .. 9
˚
. 9¨ ‚ ¨¨¨ ‚
˛
˚ 9
˚ . . 9 .. .. 9
. . . . . 0 ... .. 9˚
3.1.Méthodes directes
˚ .
˚ . . 9˚
˚ ∆k`1 . . 99
˚ 9˚ 9
rks ˚ ‚ . . . ‚ 1 0 ¨ ¨ ¨ ¨ ¨ ¨ 0 9˚ ‚ ¨ ¨ ¨ ‚ 9
G A<˚ 9˚
˚ ‚ . . . . . . ‚ 1 0 ¨ ¨ ¨ 0 9˚ ‚ ¨¨¨ ‚ ‚ ¨¨¨ ‚ 9 9
˚ 9
˚ .. . . . . .. .. .. .. 9˚ ˝ .. .. .. .. 9
˚ .
˚
. . . ‚ . . . 9 .
9 . . . ‚
˚ . . 9
˝ .. . . . . . ... ... . . . . . . 0 ‚ ‚ ¨¨¨ ‚ ‚ ¨¨¨ ‚
Comme Arks < Grks A, en utilisant les règles de multiplication par blocs des matrices on obtient
¨ ˛
³1 ‚ ¨ ¨ ¨ ‚ ‚ ¨ ˛
˚ . 9 1 0 ¨¨¨ 0 ¨
. .
. . . . .. ˛
˚0 ‚ 9 ˚ .9
˚ 9 ˚‚ . . . . . . .. 9
˚ . . 9<˚ 9 ˝ ∆k`1 ‚
˚ .. .. ... ‚ ‚ 99 ˝ ... . . . . . . 0‚
˚ 9
˚
˝ 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 ‚ ¨¨¨ ‚ ‚ ¨¨¨ ¨¨¨ ‚
˚ .. .. . .. .. 9
˚
˚ 0 . . .. . . 9
9
˚ .. .. .. .. .. 9
˚ . . ‚ 9
˚ . . . 9 ˜ ¸
˚ 9
rks ˚ 0 ... 0 ³k ‚ ¨¨¨ ¨¨¨ ‚ 9 def Urks Frks
A <˚ 9<
˚ 0 ... ... 0 ³k`1 ‚ ¨¨¨ ‚ 9 O Vrks
˚ 9
˚ .. .. .. . 9
˚ . . . .. ‚ ¨¨¨ ¨¨¨ ‚ 9
˚ 9
˚ .. .. .. . .. .. 9
˝ . . . .. . . ‚
0 ... ... 0 ‚ ¨¨¨ ¨¨¨ ‚
Nous sommes exactement dans le cas de figure étudié dans l’exercice 3.1.3, page 61. En effet,
rks rks rks t
avec les notations de cet exercice et si l’on pose v < V:,1 < pAk`1,k`1 , . . . , An,k`1 q P Cn´pk`1q
3.1.4 Factorisation LU
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
ˆ ˙
Ik O
Erk`1s < Erk,vv s <
def
3. Résolution de systèmes linéaires
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 ‚ ¨ ¨ ¨ ‚
˚ .. .. 9
˚ 0 . .9
rv
v s rks
E V <˚ . ˚ 9
. .. 9
˝ .. .. .‚
3.1. Méthodes directes
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
´ ¯
det Ern´1s ˆ ¨ ¨ ¨ ˆ Er1s ˆ A < det Ern´1s ˆ ¨ ¨ ¨ ˆ det Er1s ˆ det A
< det A
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 ‚ ¨ ¨ ¨ ¨¨¨ ‚
˚ .. .. .. 9
˚ 0 . . . 9
˚ 9 n´1
ź
˚ . .. 9
3.1.4 Factorisation LU
det ˚ . .. .. .. 9 < Un,n U k, k.
˚ . . . . . 9
˚ 9 k<1
˝ 0 ¨ ¨ ¨ 0 Un´1,n´1 ‚ ‚
0 ¨¨¨ ¨¨¨ 0 Un,n
Soit A P Mn pCq une matrice dont les sous-matrices principales sont inversibles alors il existe une
3.1.Méthodes directes
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.
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 209). 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.
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,
• 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 .
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. Résolution de systèmes linéaires
˚ L 0 9 ˚ U h 9
L<˚
˝
9 et U < ˚
‚ ˝
9
‚
g˚ 1 0˚ ³
˝ ‚˝ ‚ ˝ ‚
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
U1 U-1 -1
2 < L1 L 2 . (3.13)
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.13), 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
sont inversibles.
Remarque 3. 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 à
une matrice telle que ses sous-matrices principales soient inversibles.
3.1.4 Factorisation LU
Théorème 3.7: Factorisation LU avec permutations
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
Corollaire 3.8:
Si A P Mn pCq est une matrice hermitienne définie positive alors elle admet une unique factorisation
LU.
3.1.Méthodes directes
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.15)
est équivalent à
Trouver x P Kn solution de
x<y
Ux (3.16)
avec y P Kn solution de
Lyy < b . (3.17)
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 est une matrice de Mn pKq, dont toutes les sous-matrices principales sont inversibles,
et b P Kn .
, Données : A : matrice de Mn pKq dont les sous-matrices
principales sont inversibles;
b : vecteur de Kn .
Résultat : x : vecteur de Kn .
1: Fonction x Ð RSLFactLU ( A, b )
2: rL, Us Ð FactLUpAq z Factorisation LU
3: y Ð RSLTriInfpL, b q z Résolution du système Lyy < b
4: x Ð RSLTriSuppU, y q z 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 déjà
été écrites).
A < LU (3.18)
c’est à dire
3. Résolution de systèmes linéaires
¨ ˛¨ ˛
¨ ˛ 1 0 ... 0 U1,1 ... ... Un,1
A1,1 ... A1,n ˚ .. .. .. 9 ˚ .. .. 9
˚ .. .. 9 ˚˚ L2,1 . . .9 ˚
9˚ 0 . . 99
˝ . . <
... ‚ ˚ . 9˚ . .. 9 . (3.19)
˝ .. .. .. ..
An,1 ... An,n . 0‚˝ .. . . . ‚
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
3.1. Méthodes directes
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.20) et (3.21).
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 < k<1 (3.22)
0, @j P v1, i ´ 1w.
3.1.4 Factorisation LU
n
ÿ
Aj,i < Lj,k Uk,i
k<1
i´1
ÿ
Dans l’expression Lj,k Uk,i tous les termes sont connus (hypothèse de récurrence). De plus Ui,i est
3.1.Méthodes directes
k<1
donné par (3.22) 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.23)
’
’ 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
4: 4:
5: Pour j Ð i à n faire 5: Pour j Ð i à n faire
i´1
ÿ i´1
ÿ
Ui,j Ð Ai,j ´ Li,k Uk,j
6: S1 Ð Li,k Uk,j
k<1
6: 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
3.1. Méthodes directes
3.1.4 Factorisation LU
1
21: Lj,i Ð pAj,i ´ S2 q .
Ui,i
22: Fin Pour
23: 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.
Remarque 4. Pour optimiser en mémoire cette fonction, il est possible de stocker les matrices L et U
dans une même matrice de Mn pKq ...
Pour faciliter la lecture d’un tel algorithme, il aurait pu être judiscieux d’utiliser deux fonctions intermé-
diaires FactLUligU et FactLUcolL qui à l’étape i de l’algorithme calculent respectivement la ligne
i de U et la colonne i de L.
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.22) colonne i de L à partir de (3.23)
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.
Ce qui donne
R˚ < L et D˚ < D
et on a le théorème suivant
3.1.Méthodes directes
Soit A P Mn pCq une matrice hermitienne inversible admettant une factorisation LU. Alors A s’écrit
sous la forme
A < LDL˚ (3.24)
où D < diag U est une matrice à coefficients réels.
Corollaire 3.10:
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.11
Une factorisation régulière de Cholesky d’une matrice A P Mn pCq est une factorisation A <
3. Résolution de systèmes linéaires
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
˚ -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
˚
G < pG-1 q . (3.25)
On déduit de la (voir Proposition B.46, page 209), 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 209), 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-11 B2 sont triangulaires inférieures à coefficients diagonaux réels strictement positifs. Or l’équation
˚
. 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.12, on obtient :
3.1.Méthodes directes
Trouver x P Cn tel que
x < b.
Ax (3.26)
est équivalent à
Trouver x P Cn solution de
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,
: vecteur de Cn .
3.1.6 Factorisation de Cholesky
b
Résultat : x : vecteur de Cn .
1: Fonction x Ð RSLCholesky ( A, b )
2: B Ð CholeskypAq z Factorisation positive de Cholesky
3: y Ð RSLTriInfpB, b q z Résolution du système Byy < b
4: U Ð MatAdjointepBq z Calcul de la matrice adjointe de B
3. Résolution de systèmes linéaires
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).
Soit A P Mn pCq une matrice hermitienne définie positive. D’après le Théorème 3.12, il existe une unique
matrice B P Mn pCq triangulaire inférieure avec bi,i P R`˚ , @i P v1, nw, telle que
c’est à dire
¨ ˛¨ ˛
¨ ˛ b1,1 0 ... 0 b1,1 ... ... bn,1
a1,1 ... a1,n ˚ .. .. .. .. 9 ˚ .. .. 9
˚ .. .. 9 ˚˚ . . . . 9 ˚
9˚ 0 . . 99
˝ . . . . . ‚< ˚ . 9˚ . .. 9 . (3.30)
˝ .. .. .. ..
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
ÿ
2
bi,i < ai,i ´ |bi,j | , @i P v1, nw, (3.31)
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
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.32)
bi,i k<1
3.1.Méthodes directes
bj,i < 0, @j P v1, i ´ 1w. (3.33)
Avec (3.31) et (3.32), on a
9: Fin Pour
5: bj,i Ð 0 1{2
6: Fin Pour 6: bi,i Ð pai,i ´ S1 q
7: Pour j Ð i ` 1 à n faire 7: Pour j Ð 1 à i ´ 1 faire
i´1
8: bj,i Ð 0
ÿ 9: Fin Pour
S2 Ð bj,k bi,k
k<1
10: Pour j Ð i ` 1 à n faire
8:
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
3.1. Méthodes directes
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
Soit u P Cn tel que }uu}2 < 1. On appelle matrice élémentaire de Householder la matrice
uq P Mn pCq définie par
Hpu
Hpu uu ˚ .
uq < I ´ 2u (3.34)
3.1.Méthodes directes
Propriété 3.14
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.15
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.35)
et
x < x , si xx
uqx
Hpu x, u y < 0. (3.36)
uqpx
Hpu uu ˚ q px
xK ` x ∥ q < pI ´ 2u xK ` x ∥ q < x K ` x ∥ ´ 2u uo˚mo
u lo uu ˚x ∥
on ´2u
xK
<0
uu ˚u xu
< x K ` x ∥ ´ 2u u, x y < x K ` x ∥ ´ 2u ˚
u louomouon u ˚x
<1
uu ˚x < x K ` x ∥ ´ 2x
< x K ` x ∥ ´ 2u x∥
< xK ´ x∥.
Si xx
x, u y < 0 alors x ∥ < 0 et x < x K .
Théorème 3.16
3.1.7 Factorisation QR
Soient a , b deux vecteurs non colinéaires de Cn avec }bb}2 < 1. Soit ³ P C tel que |³| < }a
a}2 et
arg ³ < ´ arg xaa, b y rÃs. On a alors
ˆ ˙
a ´ ³bb
H a < ³bb. (3.37)
3. Résolution de systèmes linéaires
}a
a ´ ³bb}2
Exercice 3.1.8
uqa
Hpu a < ³bb. (3.38)
c. En déduire que
ˆ ˙1{2
1 xa
a, a y ´ ³ xa
a, b y
u< pa
a ´ ³bbq, avec ¼ < ˘ (3.40)
2¼ 2
˝
Correction 3.1.8
a}22 < xa
}a a, a y < xH˚ Ha
a, a y car H unitaire
< xHa ay par définition du produit scalaire
a, Ha
2 2 2
a}2 < }³bb}2 < |³|2 }bb}2 < |³|2 .
< }Ha
b. On a par définition de l’argument ³ < |³|eı arg α et xa a, b y |eı argpxaa,bbyq ce qui donne
a, b y < | xa
³ xa a, b y |eıparg α`argpxaa,bbyqq
a, b y < |³|| xa (3.41)
et donc ³ xa
a, b y est réel si arg ³ ` argpxa
a, b yq < 0 rÃs.
R. 2 a. On a
uqa
Hpu uu ˚ qa
a < ³bb ðñ pI ´ 2u a < ³bb
˚
ðñ ´ 2u pu q < ³bb
a u u a
et donc
a ´ 2 xu
u, a y u < ³bb (3.42)
En effectuant le produit scalaire avec a de cette dernière équation, on obtient
xa
a, a y ´ 2 xu
u, a y xa
a, u y < ³ xa
a, b y
3.1.7 Factorisation QR
ce qui prouve (3.39).
b. 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.
3.1.Méthodes directes
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
c. De (3.42), on en déduit immédiatement (3.40).
Vérifions que }u
u}2 < 1. On a
1
u}22 < xu
}u u, u y < xa
a ´ ³bb, a ´ ³bby
4|¼|2
Or
xa
a ´ ³bb, a ´ ³bby < xa
a, a y ´ ³ xbb, a y ´ ³ xa a}22 ´ ³ xbb, a y ´ ³ xa
a, b y ` |³|2 xbb, b y < }a a, b y ` |³|2
a}22 ´ ³ xbb, ay ´ ³ xa
< 2 }a a, by
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
Exercice 3.1.9
Soient a et b deux vecteurs non nuls et non colinéaires de Cn avec }bb}2 < 1.
Correction 3.1.9
R. 2 1: n Ð 100
2: a Ð vecrandpnq
3: b Ð vecrandpnq
4: b Ð b{normpb
b, 2q
5: rH, ³s Ð Householderpa
a, b, 0q
6: error Ð normpH ˚ ´ ³ ˚ b, 2q
a
R. 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
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
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
3.1.7 Factorisation QR
˛
3.1.Méthodes directes
Corollaire 3.17
a}2 eıθe 1
a ˘ }a
u˘ <
}a a}2 eıθe 1 }
a ˘ }a
Alors
u˘ qa
Hpu a}2 eıθe 1
a < ¯ }a (3.44)
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.18
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
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
HS < ˚ .. .. .. 9.
˝ . . . ‚
0 ‚ ¨¨¨ ‚
b. 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
3.1. Méthodes directes
˝
Soient k P v0, n ´ 1w et Arks P Mn pKq la matrice bloc définie par
˜ ¸
rks Rrks Frks
A <
O Arks
où Rrks est une matrice triangulaire supérieure d’ordre k et Arks une matrice d’ordre n ´ k.
Q. 2 a. Sous certaines hypothèses, montrer qu’il existe une matrice de Householder Hrk`1s telle
que Hrk`1s Arks < Ark`1s .
b. Soit A P Mn pKq. Montrer qu’il existe une matrice unitaire Q P Mn pKq, produit d’au plus
n ´ 1 matrices de Housholder, et une matrice triangulaire supérieure R telles que A < QR.
c. Montrer que si A est réelle alors les coefficient diagonaux de R peuvent être choisis positifs ou
nuls.
d. Montrer que si A est réelle inversible alors la factorisation QR, avec R à coefficient diagonaux
strictement positifs, est unique.
˝
Correction 3.1.10
R. 1 a. D’après le Corollaire 3.21, page 93, 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 ‚ ¨¨¨ ‚ 9
HS < H˝ s .. .. 9 <
˚
˚
9
. . ‚
˝ .. .. .. 9
. . . ‚
‚ ¨¨¨ ‚
0 ‚ ¨¨¨ ‚
ˆ ˙
0m
b. On a u < et
u
ˆ ˙ ˆ ˙
˚ Im Om,n 0m ` ˚ ˘
uq < I ´ 2u
Hpu uu < ´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
3.1.7 Factorisation QR
ˆ ˙ˆ ˙ ˆ ˙
Im Om,n B1,1 B1,2 B1,1 B1,2
uqB <
Hpu < .
On,m H O S O HS
˙ ˆ
3.1.Méthodes directes
˚ 9 9< R F
Ark`1s < Hrk`1s Arks < ˚
def
˚ O ˚ 9
˚ ˚ ˘³ ‚ ¨ ¨ ¨ ‚ 9 9 O Ark`1s
˚ ˚ 9 9
9
˚ ˚ 0 ‚ ¨¨¨ ‚ 9 9
˚ ˚ 9
˚ ˚ .. .. .. 9 9
9
˝ ˝ . . . ‚‚
0 ‚ ¨¨¨ ‚
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.
b. 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.
c. 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.
d. 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
et donc
def
Q-1 -1
1 Q2 < R1 R2 < T.
La matrice T est donc orthogonal. De plus T < R1 R-1 2 est une matrice triangulaire supérieure à
coefficients diagonaux strictement positifs puisque produit de triangulaire supérieure à coefficients
diagonaux 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 à
coefficients 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
Correction 3.1.11
R. 1 L’objectif est de déterminer les matrices Q, matrice unitaire, et R matrice triangulaire supérieure
telle que A < QR.
3.1. Méthodes directes
On rappelle la technique utilisée dans la correction de l’exercice 3.1.10 pour déterminer l’ensemble des
matrices de Householder permettant de transformer la matrice A en une matrice triangulaire supérieure.
On pose
Ar0s < A, Ark`1s < Hrk`1s Arks , @k P v0, n ´ 2w
où Hrk`1s est soit une matrice de Householder soit la matrice identité. Plus précisement, on note
ˆ s P˙ Kn´k
0k
le vecteur composé des n ´ k dernières composantes de la k ` 1-ème colonne de Arks et a < .
s
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
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˚ .
1:
H Ð Hrn´1s ˆ ¨ ¨ ¨ ˆ Hr1s 1: HÐI
RÐH˚A 2: Ar0s Ð A
3.1.7 Factorisation QR
2:
3: Q Ð H˚ 3: Pour k Ð 0 à n ´ 2 faire
4: Calculer Hrk`1s à partir de Arks
5: Ark`1s Ð Hrk`1s ˚ Arks
6: H Ð Hrk`1s ˚ H
8: RÐH˚A z ou R Ð Arn´1s
9: Q Ð H˚
1: H Ð I, Ar0s Ð A 1: H Ð I, R Ð A
3.1.Méthodes directes
2: Pour k Ð 0 à n ´ 2 faire 2: Pour k Ð 0 `à n ´ 2 faire
˘ `
3: Calculer Hrk`1s à partir de Arks 3: Calculer S < Hrk`1s à partir de R <
˘
4: Ark`1s Ð Hrk`1s ˚ Arks Arks
5: H Ð Hrk`1s ˚ H 4: RÐS˚R z compute Ark`1s
6: Fin Pour 5: HÐS˚H
7: R Ð Arn´1s 6: Fin Pour
8: Q Ð H˚ 7: Q Ð H˚
1: H Ð I, R Ð A 1: H Ð I, R Ð A
2: Pour k Ð 0 à n ´ 2 faire 2: Pour k Ð 0 à n ´ 2 faire
` ˘
Calculer S < Hrk`1s à partir de R
3: 3: a Ð r00k ; Rpk ` 1 : n, k ` 1qs
4: RÐS˚R 4: e nk`1 P Cn , enk`1 piq < ¶k`1,i , @i P v1, nw.
5: HÐS˚H 5: rR, ³s Ð Householderpa a, e nk`1 , 1q
6: Fin Pour
7: Q Ð H˚ 6: RÐS˚R
7: H Ð SH
8: Fin Pour
9: Q Ð H˚
15:
R. 2 A faire!
˛
3. Résolution de systèmes linéaires
Definition 3.19
Une norme sur un espace vectoriel V est une application }‚} : V Ñ R` qui vérifie les propriétés
suivantes
˛ }vv } < 0 ðñ v < 0,
Une norme sur V est également appelée norme vectorielle . On appelle espace vectoriel normé
un espace vectoriel muni d’une norme.
Proposition 3.20
x , y P Kn
@x
| xx x}2 }yy }2 .
x, y y | ď }x (3.46)
Cette inégalité s’appelle l’inégalité de Cauchy-Schwarz. On a égalité si et seulement si x et y
sont colinéaires.
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.47)
x}1 ď C }x
}x x} et }x x}1 pour tout x P V.
x} ď C 1 }x (3.48)
Proposition 3.24
Sur un espace vectoriel de dimension finie toutes les normes sont équivalentes.
Definition 3.25
Une norme matricielle sur Mn pKq est une application }‚} : Mn pKq Ñ R` vérifiant
a. }A} < 0 ðñ A < 0,
b. }³A} < |³| }A}, @³ P K, @A P Mn pKq,
Proposition 3.26
Etant donné une norme vectorielle }‚} sur Kn , l’application }‚}s : Mn pKq Ñ R` définie par
def }Avv }
}A}s < sup (3.49)
v PKn }vv }
v ‰0
est une norme matricielle, appelée norme matricielle subordonnée (à la norme vectorielle don-
née).
Elle vérifie
}A}s < sup }Avv } < sup }Avv } < inf t³ P R : }Avv } ď ³ }vv } , @vv P Kn u . (3.50)
v PKn v PKn
}v
v }ď1 }v
v }<1
}Au
u} < }A}s }u
u} . (3.52)
Preuve. On note B < tvv P Kn ; }vv } ď 1u la boule unitée de Kn et S < tvv P Kn ; }vv } < 1u la sphère
unitée de Kn . On note que les ensembles B et S sont des compacts car image réciproque de l’application
3. Résolution de systèmes linéaires
continue v ÞÑ }vv } par le fermé borné r0, 1s (pour la boule) et le singleton t1u (pour la sphère).
def }Avv }
3.2. Normes vectorielles et normes matricielles
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.54)
v PB v PS
}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
‚ Vérifions que l’application }‚}s est bien définie sur Mn pKq i.e. @A P Mn pKq, }A}s ă `8.
L’application v ÞÑ }Avv } est continue donc son sup sur la sphère unitée qui est compacte est atteint.
}Auu} }Avv }
}A}s < sup ě , @vv P Kn zt0u.
u PK n }u
u} }vv }
u ‰0
et donc
}Avv } ď }A}s }vv } , @vv P Kn zt0u.
u ‰ 0 et }Au
u} < }A}s }u
u} .
On a
}A}s < sup }Avv }
v PS
‚ On a immédiatement
}Ivv } }vv }
}I}s < sup < sup < 1.
}Avv }
}A}s < 0 < sup ùñ }Avv } < 0, @vv P Kn zt0u
v PK n }vv }
v ‰0
Soit tee1 , . . . , e n u la base canonique de Kn . On a alors @j P v1, nw, Aeej < 0 et on en déduit que
et donc A < O.
b. Montrons que }³A} < |³| }A}, @³ P K, @A P Mn pKq,.
Soient ³ P K et A P Mn pKq. On a ³A P Mn pKq (car Mn pKq est un espace vectoriel) et
vectoriel et
}pA ` Bqvv } }Avv ` Bvv }
}A ` B}s < sup < sup
v PKn }vv } v PK n }vv }
v ‰0 v ‰0
}Avv } ` }Bvv }
ď sup par inégalité triangulaire dans Kn
v PK n }vv }
v ‰0
}Avv } }Bvv }
ď sup ` sup < }A}s ` }B}s .
v PKn }vv } v PK n }vv}
v ‰0 v ‰0
}Bvv }
ď }A}s sup < }A}s }B}s .
v PK n }vv }
v ‰0
Théorème 3.27
Soit A P Mn pKq. On a
3. Résolution de systèmes linéaires
ÿn
def }Avv }1
}A}1 < sup < max |aij | (3.56)
v PKn }vv }1 jPv1,nw
i<1
v ‰0
def }Avv }2 a
}A}2 < sup < Ä pA˚ Aq (3.57)
3.2. Normes vectorielles et normes matricielles
v PKn }vv }2
v ‰0
ÿn
def }Avv }8
}A}8 < sup < max |aij | (3.58)
v PKn }vv }8 iPv1,nw
j<1
v ‰0
UU˚ < I ùñ }A}2 < }AU}2 < }UA}2 < }U˚ AU}2 . (3.59)
Corollaire 3.28
Preuve. a. 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 61, 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
}A}2 < ÄpDq < ÄpAq.
b. Si A P Mn pCq est unitaire ou si A P Mn pRq est orthogonale alors AA˚ < I et donc
a a
}A}2 < Ä pAA˚ q < Ä pIq < 1.
a. Soit A une matrice carrée quelconque et }‚} une norme matricielle subordonnée ou non, quel-
conque. Alors
ÄpAq ď }A} . (3.60)
b. Etant donné une matrice A et un nombre ε ą 0, il existe au moins une norme matricielle
}¼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} .
uu ˚ < ¼u
Au uu ˚
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.
on obtient
|¼| ď }A}
et on en déduit alors
@¼ P ÄpAq, |¼| ď }A} .
b. voir [1], théorème 1.4-3 page 18-19.
Théorème 3.30
ÿ 2‚
a
}A}E < ˝ |aij | < tr pA˚ Aq, (3.62)
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.63)
?
De plus }I}E < n.
3. Résolution de systèmes linéaires
Théorème 3.31
}B} ă 1.
}B} ě 1
Preuve. a. 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. On a démontré lors de la démontration par l’absurde que si I ` B est singulière (non inversible)
alors ÄpBq ě 1. Comme pour toute norme ÄpBq ď }B} (voir théorème 3.29, page 101), on obtient
}B} ě 1.
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
c. ÄpBq ă 1,
d. }B} ă 1 pour au moins une norme matricielle subordonnée }‚} .
Soit B une matrice carrée, et }‚} une norme matricielle quelconque. Alors
: :1{k
lim :Bk : < ÄpBq.
kÑ8
x<b
Ax ðñ xt < p1, 1, 1, 1q
ˆ ˙
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
ˆ ˙
t 18283543 31504261 3741501 5235241
pA ` ∆Aqyy < pbb ` ∆b
∆bq ðñ y < ´ , ,´ ,
461600 461600 230800 461600
« p´39.61, 68.25, ´16.21, 11.34q
3. Résolution de systèmes linéaires
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 conditionnement
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?
3.3. Conditionnement d’un système linéaire
Définitions et résultats
Definition 3.35
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.36
a. Soit ³ P K˚ , on a
: : : :
: -1 : : 1 -1 :
condp³Aq < }³A} :p³Aq : < |³| }A} : A ::
:
def
³
1 :: -1 :: : -1 :
< |³| }A} A < }A} :A :
|³|
< condpAq
b. On a I < AA-1 . Or pour toute norme subordonnée, on a }I} < 1 et donc 1 < }AA-1 } ď }A} }A-1 } <
condpAq.
c. Admis. Voir par exemple [7] Théorème 2 page 142-143.
Théorème 3.37
Preuve. On a
et
}bb} < }Ax
x} ď }A} }x
x} .
On en déduit : :
x} :A-1 : }∆b
Théorème 3.38
x < b et pA ` ∆Aq px
Ax ∆xq < b .
x ` ∆x
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
}∆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.4.2 Présentation des méthodes usuelles
b. 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<
-1
P b . La matrice P est appelé préconditionneur. Le choix P < A est idéal mais n’est pas réellement
utilisable. Si A est une matrice dominante alors on peut utiliser le préconditionneur de Jacobi:
3. Résolution de systèmes linéaires
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
3.4. Méthodes itératives
On a alors
¨ ˛ ¨ ˛ ¨ ˛
¨¨¨
a1,10 0 0 ¨¨¨ ¨¨¨ 0 0 a1,2 ¨¨¨ a1,n
˚ .. .. .. 9 ˚ .. .. 9 ˚ .. .. .. .. 9
˚ . . 9 ˚ a . . 9 ˚ . . 9
˚ 0 . 9 ˚ 2,1 9 ˚ . . 9
A < ˚ 9`˚ 9`˚ 9
˚ .. .. .. 9 ˚ .. .. .. .. 9 ˚ .. .. 9
˝ . . 0 . ‚ ˝ . . . . ‚ ˝ . . an´1,n ‚
0 0 an,n ¨¨¨ an,1 ¨ ¨ ¨ an,n´1 0 0 ¨¨¨ ¨¨¨ 0
¨ ˛
..
˚ . ´F9
< D´E´F<˚
˝ D 9
‚ (3.66)
..
´E .
On rappelle que la i-ème équation du système linéaire Ax
x < b s’écrit
n
ÿ i´1
ÿ n
ÿ
bi < ai,j xj < ai,j xj ` ai,i xi ` ai,j xj . (3.67)
j<1 j<1 j<i`1
Il faut aussi noter que la matrice diagonale D est inversible car les éléments diagonaux de A sont non nuls
par hypothèse.
Méthode de Jacobi
ce qui donne ˜ ¸
n
ÿ
rk`1s 1 rks
xi < bi ´ aij xj @i P v1, nw (3.68)
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
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.69)
aii
3.4.Méthodes itératives
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
nuls), on obtient
x rk`1s < pD ´ Eq Fxxrks ` pD ´ Eq-1b
-1
-1 -1
La matrice d’itération de Gauss-Seidel est B < pD ´ Eq F et le vecteur c < pD ´ Eq b .
‚ Pour la méthode S.O.R. on a , @i P v1, nw,
˜ ¸
i´1
ÿ ÿn
rk`1s w rk`1s rks rks
xi < bi ´ aij xj ´ aij xj ` p1 ´ wqxi
aii j<1 j<i`1
et matriciellement on obtient
ˆ ˙ ˆ ˙
D rk`1s 1´w
´E x < 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
rk`1s D 1´w rks D
x < ´E D`F x ` ´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.
Proposition 3.39
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
et elle vérifie
ÄpLw q ě |w ´ 1|. (3.72)
La matrice d’itération de Gauss-Seidel est L1 et elle correspond à
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.71) 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 ˆ ˙
3.4.Méthodes itératives
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.72). 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
ÄpLw q ě | detpLw q|1{n < |1 ´ w|.
Théorème 3.40
Soit A une matrice régulière décomposée sous la forme A < M ´ N avec M régulière. On pose
Preuve. Comme x̄
x < A-1b (sans présupposer la convergence) on a Mx̄ x ` b et alors
x < Nx̄
On obtient donc
x ´ x rk`1s < Bpx̄
x̄ x ´ x rks q
def
Or la suite x rks converge vers x̄
x si et seulement si la suite e rks < x̄
x ´ x rks converge vers 0 . On a
D’après le Théoréme 3.33, page 103, on a limkÑ`8 Bke r0s < 0, @eer0s P Kn si et seulement si ÄpBq ă 1.
Corollaire 3.41
3.4. Méthodes itératives
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.39, 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.33, 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.42
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.43
Soit A une matrice hermitienne inversible en décomposée en A < M ´ N où M est inversible. Soit
B < I ´ M-1 A, la matrice de l’itération. Supposons que M˚ ` N (qui est hermitienne) soit définie
positive. Alors ÄpBq ă 1 si et seulement si A est définie positive.
Exercice 3.4.2
Soit A P Mn,n pCq une matrice hermitienne inversible décomposée en A < M ´ N où M est inversible.
On note B < I ´ M-1 A.
a. 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.74)
b. En déduire que
xx x ´ y q, pM˚ ` Nqpx
xy ´ xyy , Ayy y < xpx
x, Ax x ´ y qy . (3.76)
Correction 3.4.2
R. 1 On a
` ˘˚
M˚ ` N < M ` N˚
3.4.Méthodes itératives
< A ` N ` N˚ < A˚ ` N ` N˚ car A est hermitienne
< M˚ ` N.
R. 2 a. On a y < Bx
x avec B < I ´ M-1 A ce qui donne
` ˘
x ´ y < x ´ Bxx < I ´ B x < M-1 Ax
x.
L’équation (3.75) est donc démontrée. Pour prouver (3.74), 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 .
R. 3 On veut démontrer que sous les hypothèses A hermitienne définie positive et M˚ ` N (hermitienne)
3.4.3 Etude de la convergence
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. En prenant x < u dans Q.2, on a
u < ¼u
y < Buu < ¼u u et donc x ´ y < p1 ´ ¼quu. De (3.76) on obtient
xu uy ´ x¼u
u, Au u, pM˚ ` Nqpp1 ´ ¼qu
uy < xp1 ´ ¼qu
u, ¼Au uqy
3. Résolution de systèmes linéaires
c’est à dire
p1 ´ |¼|2 q xu
u, Au u, pM˚ ` Nqu
uy < |1 ´ ¼|2 xu uy . (3.77)
Comme par hypothèse, la matrice M˚ ` N (hermitienne) est définie positive et u ‰ 0, on obtient
u, pM˚ ` Nqu
xu uy ą 0
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.
R. 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 xy P C, or comme A est hermitienne on a xx
x, Ax xy P R. En effet,
x, Ax
par propriété du produit scalaire on a
@ D
On note xr0s < x et ³0 < xr0s , Ax
xr0s le nombre réel négatif ou nul (³0 ď 0). On défini alors pour les
suites A E
xrks < Bx
xrk´1s et ³k < xrks , 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),
ÄpBq ă 1 ðñ lim Bkv < 0, @vv P Cn .
kÑ`8
On a donc
lim x rks < 0 et lim ³k < 0
kÑ`8 kÑ`8
On utilise maintenant l’égalité (3.76) avec x < x rk´1s et y < Bxx < x rks
A E A E A E
x rk´1s , Ax
xrk´1s ´ x rks , Ax
xrks < px xrk´1s ´ x rks q, pM˚ ` Nqpx
xrk´1s ´ x rks q
On peut noter que x rk´1s ´ x rks ‰ 0, car sinon x rk´1s < x rks < Bx
xrk´1s et ¼ < 1 serait valeur propre de
rk´1s
B . il faudrait montrer que x ‰0
Dans ce cas, comme M˚ ` N est définie positive, on obtient
A E A E
xrk´1s , Ax
xrk´1s ´ xrks , Ax xrks < ³k´1 ´ ³k ą 0.
La suite p³k qkPN est donc strictement décroissante de premier terme ³0 ď 0: elle ne peut converger vers
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 ´ xr1s q, pM˚ ` Nqpx xr0s ´ xr1s q ą 0
3.4.Méthodes itératives
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
x rk`1s < Bx
xrks , et dans ce cas, comme x rks ‰ 0, p1, x rks q serait un élément propre de B: contradiction
avec ÄpBq ă 1.
Comme x rks ´ x rk`1s ‰ 0, on a
A E
³k ´ ³k`1 < px xrks ´ xrk`1s q, pM˚ ` Nqpx xrks ´ xrk`1s q ą 0
et donc 0 ě ³k ą ³k`1 .
˛
Théorème 3.44
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.
Principe de base
La matrice d’itération B et le vecteur c sont construits de telle sorte que si la suite px xrks qkPN converge
3.4.4 Algorithmes
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
suffisament proche de x̄ x. Pour être plus précis, on note r rks < b ´ Ax
xrks le résidu. On a alors
: rks :
:r :
ďε
}bb}
alors
: : : : : :
: rks : : -1 rks : :: -1 :: : rks : : : : : : :
x} ď ε :A-1 : }A} }x̄
:ee : < :A r : ď A :rr : ď ε :A-1 : }bb} < ε :A-1 : }Ax̄ x} < ε condpAq }x̄
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 convergence
: 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 z 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 z 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
3.4.Méthodes itératives
Cette formule donne explicitement les composantes du vecteur x rk`1s en fonction de la matrice A, et des
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, xtol Ð H 1: k Ð 0, xtol Ð 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:
x Ð calcul par Jacobi 7: Pour i Ð 1˜à n faire ¸
8: ÿn
1
9: r Ð b ´ Ax x, 8: xi Ð bi ´ aij p j
10: Fin Tantque aii j<1,j‰i
11: Si }r
r } ď tol alors z Convergence 9: Fin Pour
12: x tol Ð x
13: Fin Si 10: r Ð b ´ Ax x,
11: Fin Tantque
12: Si }rr } ď tol alors z 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
˜ ¸
ÿn
1
xi Ð bi ´ aij p j 8: SÐ0
aii
8:
j<1,j‰i 9: Pour j Ð 1 à n pj ‰ iq faire
9: Fin Pour 10: S Ð S ` ai,j pj
10: r Ð b ´ Ax x, 11: Fin Pour
1
11: Fin Tantque 12: xi Ð pbi ´ Sq
aii
12: Si }rr } ď tol alors
13: x tol Ð x 13: Fin Pour
14: Fin Si 14: r Ð b ´ Ax x,
15: Fin Tantque
16: Si }rr } ď tol alors
17: x tol Ð x
18: Fin Si
Résultat :
X : un vecteur de Kn
Méthode de Gauss-Seidel
Cette formule donne explicitement la composante i du vecteur x rk`1s en fonction de la matrice A, et des
vecteurs b et x rks , mais aussi des i ´ 1 premières composantes de x rk`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:
x Ð calcul par Gauss-Seidel 7: Pour i Ð 1˜à n faire ¸
8: i´1
ÿ ÿn
1
3.4.4 Algorithmes
9: r Ð b ´ Ax x, 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
r Ð b ´ Ax x,
1: k Ð 0, x tol Ð H 1: k Ð 0, x tol Ð H
3.4.Méthodes itératives
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
˜ ¸
i´1
ÿ ÿn
1
xi Ð bi ´ aij xj ´ aij pj 8: SÐ0
aii
8:
j<1 j<i`1 9: Pour j Ð 1 à i ´ 1 faire
9: Fin Pour 10: S Ð S ` ai,j xj
10: r Ð b ´ Ax x, 11: Fin Pour
11: Fin Tantque 12: Pour j Ð i ` 1 à n faire
12: Si }r
r } ď tol alors 13: S Ð S ` ai,j pj
13: xtol Ð x 14: Fin Pour
1
14: Fin Si 15: xi Ð pbi ´ Sq
aii
16: Fin Pour
17: r Ð b ´ Ax x,
18: Fin Tantque
19: Si }r
r } ď tol alors
20: x tol Ð x
21: 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
3.4.Méthodes itératives
3.4.5 Exercices
Exercice 3.4.3
Correction
¨ ˛ ¨ ˛ ¨ ˛
0 0 0 0 ´2 2 1 0 0
diagonale. On a donc E1 < ˝ ´1 0 0 ‚, F1 < ˝ 0 0 ´1 ‚ et D1 < ˝ 0 1 0 ‚. On note
´2 ´2 0 0 0 0 0 0 1
que D1 est inversible.
• Pour la méthode de Jacobi, de matrice d’itération J1 < D-1 1 pE1 ` F1 q, on a convergence si et
seulement si ÄpJ1 q ă 1, c’est à dire si les moduless de valeurs propres de J1 sont strictement plus
petit que 1.
On a ¨ ˛
0 ´2 2
J1 < ˝ ´1 0 ´1 ‚
´2 ´2 0
Les valeurs propres de J1 sont les racines du polynôme caractéristique donné par
Pp¼q < detp¼I ´ J1 q
¨ ˛
¼ 2 ´2
< det ˝ 1 ¼ 1 ‚
2 2 ¼
< ¼3
Ses racines étant p0, 0, 0q , on a ÄpJ1 q < 0 et donc la méthode de Jacobi converge.
-1
• Pour la méthode de Gauss-Seidel, de matrice d’itération B1 < pD1 ´ E1 q F1 , on a convergence si
et seulement si ÄpB1 q ă 1, c’est à dire si les modules des valeurs propres de B1 sont strictement plus
petit que 1.
On a ¨ ˛
0 ´2 2
B1 < ˝ 0 2 ´3 ‚
3.4.5 Exercices
0 0 2
Les valeurs propres de B1 sont les racines du polynôme caractéristique donné par
3. Résolution de systèmes linéaires
` ? ? ˘ ?
Ses racines étant ´ 21 i 5, 21 i 5, 0 , on a ÄpJ2 q < 1
2 5 et donc la méthode de Jacobi diverge.
-1
• Pour la méthode de Gauss-Seidel, de matrice d’itération B2 < pD2 ´ E2 q F2 , on a convergence si
et seulement si ÄpB2 q ă 1, c’est à dire si les modules des valeurs propres de B2 sont strictement plus
petit que 1.
On a ¨ ˛
1
0 2 ´ 12
B2 < ˝ 0 ´ 21 ´ 12 ‚
0 0 ´ 12
Les valeurs propres de B2 sont les racines du polynôme caractéristique donné par
Exercice 3.4.4
3.4.5 Exercices
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.
pD ´ Eqx
xk`1{2 < Fx
xk ` b (3.78)
pD ´ Fqxxk`1 < Ex
xk`1{2 ` b (3.79)
3.4.Méthodes itératives
x k`1 < Bx
xk ` c (3.80)
Q. 2 a. Montrer que
D-1 < pD ´ Eq´1 ´ D-1 EpD ´ Eq´1 . (3.81)
x < b.
Q. 3 En déduire la convergence de cette méthode vers la solution x de Ax ˝
Correction
R. 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.
On en déduit que les matrices D ´ E (triangulaire inférieure de diagonale la diagonale de D) et D ´ F
(triangulaire supérieure de diagonale la diagonale de D) sont inversibles.
-1
De (3.78), on obtient en multipliant à gauche par pD ´ Eq
-1
x k`1{2 < pD ´ Eq Fxxk ` pD ´ Eq-1b .
-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.80).
-1 -1
< pD ´ Eq ´ D-1 EpD ´ Eq .
-1
ô D-1 EpD ´ Eq Fpp < ¼D-1 pD ´ Fqpp
De (3.81), 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.
R. 3 La matrice A est inversible car elle est définie positive et donc x est bien définie. De l’équation
(3.78), on déduit
pD ´ Eqxxk`1{2 < Fx xk ` Ax x < Fx
xk ` pD ´ E ´ Fqxx
et donc
xk`1{2 ´ x q < Fpx
pD ´ Eqpx xk ´ x q (3.83)
pD ´ Fqpx
xk`1 ´ x q < Epx
xk`1{2 ´ x q (3.84)
c’est à dire
x k`1 ´ x < Bpx
xk ´ x q.
En posant e k < x k ´ x on a alors
e k < Bke 0 , @k ě 0.
Or la suite x k converge vers x si et seulement si la suite e k converge vers 0 . Pour celà, d’après le
Théorème 3.33, page 103, il est nécessaire et suffisant d’avoir ÄpBq ă 1.
Soit p¼, p q un élément propre de B. Montrons que |¼| ă 1.
On déduit de l’équation (3.82)
@ D
0 < p , ¼App ` p¼ ´ 1qED-1 Fpp
@ D
< ¼ xpp, Appy ` p¼ ´ 1q p , ED-1 Fpp (3.85)
Comme la matrice A est définie positive on a xApp, p y ą 0 car p ‰ 0 (vecteur propre) et donc
De plus on a @ D @ D
p , ED-1 Fpp < E˚p , D-1 Fpp .
3.4.5 Exercices
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
3.4.Méthodes itératives
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.
R. 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.
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 a. Soit i P v0, nw. Montrer qu’il existe un unique polynôme Li de degré n vérifiant
b. 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).
˝
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
4.1.0 Exercices
R. 1 a. 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
n
ź
Li pxq < C px ´ xj q avec C P R
j<0
j‰i
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 .
b. 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
Qpxi q < Pa pxi q ´ Pb pxi q < 0.
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.
4. Interpolation
˛
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
1A noter le choix de l’indice j. Que doit-on faire dans ce qui suit si l’on choisi i comme indice?
2 Le théorème de d’Alembert-Gauss affirme que tout polynôme à coefficients complexes de degré n admet n racines
complexes qui ne sont pas nécessairement distinctes
Remarque 7. Il est aussi possible d’obtenir l’existence et l’unicité du polynôme d’interpolation de La-
grange sans passer par sa construction. Pour celà on défini Φ : Rn rXs ÝÑ Rn`1 par
A titre d’exemple, on représente, En figure 4.2, le polynôme d’interpolation de Lagrange associé à 7 points
donnés.
4.1.0 Exercices
4. Interpolation
4.1. Polynôme d’interpolation de Lagrange
Exercice 4.1.2
Correction
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.
Algorithme 4.1 R0 Algorithme 4.1 R1
ÿ
n`1
1: yÐ0
Calcul de y “ Pn ptq “ Y piqLi´1 ptq
i“1
2: Pour i Ð 1 à n ` 1 faire
1: 3: y Ð y ` Y piq ˚ Li´1 ptq
4: Fin Pour
5: Fin Pour
4. Interpolation
t : un réel.
Résultat : y : le réel y < Pn ptq.
Fonction y Ð Lagrange ( t, X, Y )
ti < a ` ih avec a < 0 et h < 2Ã{n. Le second (figure de droite) correspond à l’interpolation de la fonction
1
1`t2 par le polynôme d’interpolation de Lagrange aux points xi < a ` ih avec a < ´5 et h < 10{n.
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
4.1.1 Erreur de l’interpolation
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.
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!
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.
f pxq ´ Pn pxq
Correction
R. 1 S’il existe i P v0, nw tel que x < xi alors l’équation (4.9) est immédiatement vérifiée.
Soit x P ra, bs distinct de tous les xi . Comme f P C n`1 pra; bs; Rq, Pn P Rn rXs et Ãn P Rn`1 rXs, on en
déduit que la fonction F est dans C n`1 pra; bs; Rq. La fonction F admet aussi n ` 2 zéros : x, x0 , ¨ ¨ ¨ , xn .
r0s r0s r0s r0s
On note Àx,1 , ¨ ¨ ¨ , Àx,n`2 ces n ` 2 zéros ordonnés Àx,1 ă ¨ ¨ ¨ ă Àx,n`2 . La fonction F é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, il existe au
moins un zéro de F 1 < F p1q . Plus précisemment on a
r1s r0s r0s r1s
@i P v1, n ` 1w, DÀx,i PsÀx,i , Àx,i`1 r tels que F p1q pÀx,i q < 0
4. Interpolation
r1s r1s r0s r1s
et on en déduit que la fonction F p1q admet n ` 1 zéros Àx,1 , ¨ ¨ ¨ , Àx,n`1 et l’on a Àx,1 ă Àx,1 ă ¨ ¨ ¨ ă
r1s r0s
Àx,n`1 ă Àx,n`2 . Il faut noter la dépendance en x des zéros de F 1 d’où la notation un peu "lourde".
Montrons par récurrence finie que pPk q est vraie pour tout k P v1, n ` 1w
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
r0s rks rks r0s
De plus, par construction, Àx,1 ă Àx,1 ă ¨ ¨ ¨ ă Àx,n`2´k ă Àx,n`2 . et donc pPk q est vraie.
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
rn`1s rn`1s rn`1s f pxq ´ Pn pxq pn`1q rn`1s
0 < F pn`1q pÀx,1 q < f pn`1q pÀx,1 q ´ Ppn`1q
n pÀx,1 q´ Ãn pÀx,1 q
Ãn pxq
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.3
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
Théorème 4.4
4.1. Polynôme d’interpolation de Lagrange
4. Interpolation
Les points réalisant (4.11) sont les points de Chebyshev donnés par
4.1.3 Stabilité
Inspiré du polycopié de G. Barles : ici
4.1.3 Stabilité
4. Interpolation
[Link]ôme d’interpolation de Lagrange
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
ř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.
4.1.3 Stabilité
On obtient alors : :
:p :
:Pn ´ Pn : ď Λn max |fi ´ f pxi q|. (4.13)
8 iPv0,nw
Proposition 4.5
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
aux couples de pxi , f pxi qqiPv0,nw est bien définie et linéaire. De plus on a
4.1. Polynôme d’interpolation de Lagrange
4. Interpolation
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.6
Preuve. Soit Q P Rn rXs. Par unicité du théorème d’interpolation on a Ln pQq < Q et alors
d’où le résultat.
‚ Pour les points équidistants xi < a ` ih, i P v0, nw et h < pb ´ aq{n, on a la minoration suivante
(voir [3] p. 49)
2n
Λn ě 2 (4.16)
4n
et le comportement asymptotique
2n`1
Λn « quand n Ñ `8 (4.17)
e.n lnpnq
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.
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
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 .
źn
x ´ xj
Li pxq < .
x
j<0 i
´ xj
j‰i
Correction
R. 1 On a 2n ` 2 équations, donc à priori Hn est de degré 2n ` 1.
4.2.0 Stabilité
b. 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
4. Interpolation
Comme Li pxi q < 1, on obtient
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).
R. 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
@P P R2n`1 rXs, ΦpPq < pPpx0 q, ¨ ¨ ¨ , Ppxn q, P1 px0 q, ¨ ¨ ¨ , P1 pxn qq.
L’existence et l’unicité du polynôme Hn est équivalente à la bijectivité de l’application Φ. Or celle-ci
est une application linéaire entre deux espaces de dimension 2n ` 2. Elle est donc bijective si et
seulement si elle injective (ou surjective). Pour vérifier l’injectivité de Φ il est nécessaire et suffisant
de vérifier que son noyau est réduit au polynôme nul.
Soit P P ker Φ. On a alors ΦpPq < 0 2n`2 et donc px0 , ¨ ¨ ¨ , xn q sont n ` 1 racines doubles distinctes
de P. Or le seul polynôme de R2n`1 rXs ayant n ` 1 racines doubles est le polynôme nul et donc
P < 0.
˛
Definition 4.9
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
j<0 i
´ xj
j‰i
Théorème 4.10
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
Correction
R. 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!
dx2n`2
4. Interpolation
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.11
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
Figure 4.9: Polynôme d’interpolation de lagrange-Hermite avec n < 6 (7 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
4.2.0 Stabilité
4.2. Polynôme d’interpolation de Lagrange-Hermite
4. Interpolation
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
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
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.9, 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 à program-
mer 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 a. Ecrire explicitement un polynôme P de degré 2 passant par les points A < p1; 2q, B <
p2; 6q et C < p3; 12q.
b. Démontrer que le polynôme P est l’unique polynôme de degré 2 passant par les points A, B et
C.
˝
˝
4. Interpolation
Exercice 4.3.2
h00 p0q < 1,h100 p0q < h00 p1q < h100 p1q < 0, (4.32)
h10 p1q < 1,h10 p0q < h110 p0q < h110 p1q
< 0, (4.33)
1
h01 p0q < 1,h01 p0q < h01 p1q < h101 p1q
< 0, (4.34)
h111 p1q < 1,h11 p0q < h111 p0q < h11 p1q < 0; (4.35)
b. Démontrer que th00 , h10 , h01 , h11 u est une base de R3 rXs.
˝
On pose
Ppxq < ³h00 pxq ` ´h10 pxq ` µh01 pxq ` ¶h11 pxq. (4.36)
Q. 3 a. Déterminer les 4 équations vérifées par chacune des fonctions Ha0 , Ha1 , Hb0 et Hb1 ?
(i.e. 4 équations par fonction)
b. Exprimer le polynôme Q avec les fonctions Ha0 , Hb0 , Ha1 et Hb1 .
c. Le polynôme Q est-il l’unique polynôme de R3 rXs vérifiant (4.37)? Justifier.
˝
Exercice 4.3.3
t1 ´t0
Soit t0 ă t1 deux nombres réels et soit ε un réel tel que 0 ă ε ă 2 .
Q. 2 a. Montrer que Φ0 pt0 q < 1, Φ10 pt0 q < 0, Φ0 pt1 q < 0 et Φ10 pt1 q < 0 (i.e. Φ0 est une fonction
de base des polynômes de degré 3 pour l’interpolation de Hermite).
b. Peut-on obtenir toutes les fonctions de base de Hermite par des procédés analogues. Si oui,
expliquer comment!
˝
4.3.0 Stabilité
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 à
4. Interpolation
valeurs réelles.
On désigne par f rs les différences divisées de la fonction f définie par
et
[Link]
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.41)
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.42)
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 .
Qk,2 pxq < Qk,1 pxq ` f rxk , xk`1 , xk`2 spx ´ xk qpx ´ xk`1 q. (4.45)
Q. 5 a. Montrer que
r´1
ź
Qk,r pxq < Qk,r´1 pxq ` f rxk , . . . , xk`r s px ´ xk`j q (4.46)
j<0
Indication : Effectuer une démonstration par récurrence en écrirant le polynôme Qk,r sous
deux formes : l’une en fonction de Qk,r´1 et l’autre en fonction de Qk,r´1 et Qk`1,r´1 .
b. En déduire
r
ÿ i´1
ź
Qk,r pxq < f rxk s ` f rxk , . . . , xk`i s px ´ xk`j q (4.47)
i<1 j<0
˝
4.3.0 Stabilité
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
iPv0,rw iPv0,rw
f prq pÀq
f rxk , . . . , xk`r s < . (4.48)
r!
4. Interpolation
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
4.3. Exercices
r
ź
px ´ xk`j q
j<0
f pxq ´ Qk,r pxq < f pr`1q pÀx q. (4.49)
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
R. 1
źn źn
sptq ´ xj sptq ´ sptj q
LX
i ˝ sptq < <
j<0
x i ´ x j j<0
spt i 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
t
j<0 i
´ t j
j‰i
4.3.0 Stabilité
R. 2 On a
n
ÿ
LTi ptqf ˝ spti q
def
Ln pf ˝ sqptq <
4. Interpolation
i<0
ÿn
< LTi ptqgpti q < Ln pgq
i<0
et
[Link]
n
ÿ
LX
def
Ln pf q ˝ sptq < i ˝ sptqf pxi q
i<0
ÿ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.51)
alors żb żb
2 2
ps pxqq dx ď pf 2 pxqq2 dx. (4.52)
a a
˝
şb
Indications : Poser r < f ´ s et montrer par intégrations par parties que a
s2 pxqr2 pxqdx < 0.
On note g la fonction dont la restriction à chaque intervalle rxk´1 ; xk s, k P v1, nw, est Sk .
Q. 3 a. Vérifier que g est bien définie sur ra; bs.
b. Montrer que g est une spline cubique si et seulement si, @k P v1, n ´ 1w,
6
4.3.0 Stabilité
Q. 4 a. Montrer qu’une condition nécessaire et suffisante pour que g soit une spline cubique et
4. Interpolation
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.56)
que l’on précisera.
4.3. Exercices
Correction
De plus
żb żb
pf 2 pxqq2 dx < ps2 pxq ` r2 pxqq2 dx
a a
żb żb żb
< ps2 pxqq2 dx ` 2 s2 pxqr2 pxqdx ` pr2 pxqq2 dx (4.58)
a a a
şb
Montrons que a
s2 pxqr2 pxqdx < 0.
şb
On ne peut effectuer une intégration par partie pour a s2 pxqr2 pxqdx car r2 et s2 ne sont pas dérivables.
Par contre, on a
żb n ż xi
ÿ
s2 pxqr2 pxqdx < s2 pxqr2 pxqdx
a i<1 xi´1
et, sur chaque intervalle rxi´1 , xi s, s2 est un polynôme de degré au plus 1. On a donc s2 P C 1 prxi´1 , xi s; Rq
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.59)
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.57),
ż xi ż xi
3 1 3
s pxqr pxqdx < s 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.51) on a bien a
s2 pxqr2 pxqdx < 0. L’équation (4.58) devient alors
4.3.0 Stabilité
żb żb żb
pf 2 pxqq2 dx < ps2 pxqq2 dx ` pr2 pxqq2 dx.
a a a
D’où żb żb
4. Interpolation
pf 2 pxqq2 dx ě ps2 pxqq2 dx.
a a
[Link]
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.
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
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,
b. On a Sk2 pxq < 6ak pxk ´ xq ` 6bk px ´ xk´1 q. Pour déterminer ak et bk , on utilise les équations (4.53c)
et (4.53d) 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.53c) et (4.53d) 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
R. 3 a. On a par définition @k P v1, nw, gpxq < Sk pxq, @x P rxk´1 , xk s. Le problème de définition de
g provient du fait que g est définie deux fois en xk , k P v1, n ´ 1w. En effet, on a
gpxk q < Sk pxk q et gpxk q < Sk`1 pxk q.
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.
b. 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
@k P v1, n ´ 1w, Sk1 pxk q < Sk`1
1
pxk q et Sk2 pxk q < Sk`1
2
pxk q.
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
4.3.0 Stabilité
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
4. Interpolation
1 h h
Sk`1 pxk q < ´3ak`1 h2 ´ ³k`1 ` ´k`1 < ´ mk ` pfk`1 ´ f kq ´ pmk`1 ´ mk q
2 h 6
1 1
Donc g sera dérivable en xk si Sk pxk q < Sk`1 pxk q, c’est à dire si
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
4.3. Exercices
R. 4 a. La condition g 2 paq < 0 se traduit par S12 px0 q < 0 or par (4.53c) 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.53d) avec k < n on a Sn2 pxn q < mn d’où
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 ¨ ˛
˚ . . 9 0
˚1 4 1 . . .. 9 ˚ f0 ´ 2f1 ` f2 9
˚ 9 6 ˚ 9
˚ 9
A < ˚0 . . . . . . . . . 09 et b < 2 ˚
˚ .. 9
. 9
˚ 9 h ˚ 9
˚. . 9 ˝fn´2 ´ 2fn´1 ` fn ‚
˝. . . . 1 4 1‚
0
0 ... 0 0 1
b. La matrice A est à diagonale strictement dominante : elle est donc inversible.
˛
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
152 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
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 9 ˚ w 1 9 ˚ b ´a 9
˚ 9˚ 9 ˚ 2 9
pb ´ aq ˚ . . . 9 ˚ . 9 <˚ .
.. 9
˝ .. .. .. ‚˝ .. ‚ ˝ ‚
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 ??). 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.
CorrectionNous 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 9 ˚ w1 9 ˚ b ´a 9
˚ 9˚ 9 ˚ 2 9
pb ´ aq ˚ . .. .. 9 ˚ .. 9 < ˚ .. 9
˝ .. . . ‚˝ . ‚ ˝ . ‚
n n n n`1 n`1
x0 x1 ¨ ¨ ¨ xn wn b ´a
n`1
Algorithme 5.1 Fonction WeightsFromPoints retournant le tableau des poids w associé à un tableau
5.1.2 Quelques résultats théoriques
1: Fonction w Ð WeightsFromPoints ( x, a, b )
2: b Ð O n`1
3: A Ð On`1,n`1
4: Pour i Ð 1 à n ` 1 faire
5: Pour j Ð 1 à n ` 1 faire
5. Intégration numérique
^
6: Api, jq Ð x pjq pi ´ 1q
7: Fin Pour
8: b piq Ð pb^ i ´ a^ iq{pi ˚ pb ´ aqq
9: Fin Pour
10: w Ð SolvepA, b q
11: Fin Fonction
5.1. Méthodes de quadrature élémentaires
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
żb n
ÿ
Rpxqdx < pb ´ aq wi Rpxi q.
a i<0
5. Intégration numérique
2
et
ÿ n ˆ ˙2m`1 k´1
ÿ ˆ ˙2m`1 2k
ÿ ˆ ˙2m`1
a`b a`b a`b
w i xi ´ < w i xi ´ ` 0 ˆ wk ` w i xi ´
i<0
2 i<0
2 i<k`1
2
k´1
ÿ ˆ ˙2m`1 ÿ2k ˆ ˙2m`1
a`b a`b
Le résultat suivant fait le lien avec les polynômes d’interpolation de Lagrange pour établir une majoration
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
1
def 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
żbź n ż1ź n
1 x ´ xj t ´ tj
dx < dx.
b ´ a a j<0 xi ´ xj 0 j<0 i ´ tj
t
j‰i j‰i
et l’on a xi < spti q < a ` pb ´ aqti où ti < pxi ´ aq{pb ´ aq. On en déduit
ż1 ż1ź n ż1ź n
sptq ´ sptj q pb ´ aqpt ´ tj q
Li ˝ sptqdt < dt < dt
0 j<0 spti q ´ sptj q 0 j<0 pb ´ aqpti ´ tj q
5. Intégration numérique
0
j‰i j‰i
ż1ź
n
t ´ tj
< dt
0 t ´ tj
j<0 i
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
Or comme Li pxj q < ¶i,j on 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
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.3 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
On en déduit
ˇ pn`1q ˇ
ˇf pÀx q ˇ
ˇ
|f pxq ´ Ln pf qpxq| < ˇ Ãn pxqˇˇ
pn ` 1q!
: :
: pn`1q :
:f :
8
ď |Ãn pxq|
5. Intégration numérique
pn ` 1q!
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 : ż
:f : b
De plus ˇż ˇ ż
ˇ b ˇ b
ˇ ˇ
ˇ f pxq ´ Ln pf qpxqdxˇ ď |f pxq ´ Ln pf qpxq|dx
ˇ a ˇ a
ce qui donne : :
ˇż żb ˇ : pn`1q : żb ź
ˇ 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 ˇ
ˇ ˇ
< ˇ 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
5.1.2 Quelques résultats théoriques
źn
x ´ xj
Li pxq <
x
j<0 i
´ xj
j‰i
b´a a
Correction
R. 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 128).
R. 2 Soit i P v0, nw. On note t < φpxq < pa ` bq ´ x le changement de variable affine. On a alors
φ-1 ptq < pa ` bq ´ t et
żb
1
wi < Li ptqdt
b´a a
ż ϕ-1 pbq
1
< Li ˝ φpxqφ1 pxqdt
b ´ a ϕ-1 paq
ża
1
< Li ppa ` bq ´ xqp´1qdx
b´a b
żb
1
< Li ppa ` bq ´ xqdx
b´a a
żb
1
< Ln´i pxqdx d’après la question précédente
b´a a
< wn´i .
˛
De l’Exercice 5.1.2 et de la Proposition 5.8, on obtient le lemme suivant
xi ` xn´i a`b
@i P v0, nw, < .
2 2
Soient pwi qni<0 définis par
żbź
n
1 x ´ xj
wi < dx, @i P v0, nw
b´a a x
j<0 i
´ xj
j‰i
5. Intégration numérique
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
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.
et par linéarite de Qn
Qn pP, a, bq < Qn pQÃn , a, bq ` Qn pR, a, bq.
5.1.2 Quelques résultats théoriques
Par hypothèse, la formule de quadrature a pour degré d’exactitude n et comme R P Rn rXs on obtient
żb
Rpxqdx < Qn pR, a, bq.
a
et donc
żb żb
Ppxqdx ´ Qn pP, a, bq < QpxqÃn pxqdx. (5.12)
5.1. Méthodes de quadrature élémentaires
a a
ñ si la formule de quadrature est de degré d’exactitude n ` m alors pour tout Q P Rm´1 rXs, le
polynôme P < QÃn P Rn`m rXs et donc
żb
Ppxqdx ´ Qn pP, a, bq < 0.
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
a a k<0
m´1
ÿ żb
< ³k Ãn pxqxk dx
k<0 a
m´1
ÿ
hyp
< ³k ˆ 0 < 0.
k<0
5. Intégration numérique
‚ méthode de Gauss-Laguerre,
‚ méthode de Gauss-Lobatto,
‚ méthode de Romberg...
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.
Les formules de quadrature élémentaires de Newton-Cotes s’écrivent sous la forme
żb n
ÿ
f pxqdx « pb ´ aq wi f pxi q
a i<0
Pour un n donné, déterminer les coefficients wi de la formule de Newton-Cotes est assez simple.
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. Intégration numérique
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
5.1. Méthodes de quadrature élémentaires
$
& 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
j<0 i
´ t j j<0
pi ´ jq{n j<0
i´j
j‰i j‰i j‰i
2t ´ 1 2t ´ 2
L0 ptq < < p2 ¼ ´ 1qp¼ ´ 1q
´1 ´2
2t 2t ´ 2
L1 ptq < < ´4 p¼ ´ 1q¼
1 ´1
2t 2t ´ 1
L2 ptq < < p2 ¼ ´ 1q¼
2 1
et
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
1 1 5 1
04 ` 4p q4 ` 14 < ‰ x4 dx <
6 2 24 0 5
5. Intégration numérique
Exercice 5.1.3
řn
Algorithme 5.3 Fonction QuadElemGen retourne la valeur de I < pb ´ aq j<0 wj f pxj q.
Données : f : une fonction définie de ra, bs dans R,
a, b : deux réels avec a ă b
x : vecteur 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
w : vecteur de Rn`1 tel que w piq < wi´1 , @i P v1, n ` 1w
Résultat : I : un réel
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
6: I Ð pb ´ aq ˚ I
7: Fin Fonction
5.1.3 Formules élémentaires de Newton-Cotes
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˚
Résultat : I : un réel
5. Intégration numérique
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 8. 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 i<0
5. Intégration numérique
soit de degré d’exactitude 3. ˝
şb
Q. 2 En déduire une formule de quadrature pour le calcul de a
f pxqdx qui soit de degré d’exactitude
3. ˝
Correction
R. 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
pn ` 1qPn`1 ptq < p2n ` 1qtPn ptq ´ nPn´1 ptq, @n ě 1 (5.15)
avec P0 ptq < 1 et P1 ptq < t.
5.1. Méthodes de quadrature élémentaires
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.13
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.14
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.13. 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.
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.
a a p2n ` 2q!
5.1. Méthodes de quadrature élémentaires
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
propres de A. ˝
Q. 4 Montrer que
n
ÿ
2 wk Mi ptk qMj ptk q < ¶i,j , @pi, jq P v0, nw2 (5.20)
k<0
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 .
5. Intégration numérique
b. En déduire que W-1 < 2PPt .
řn 2
c. 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 vecteur
de Rn`1 .
Correction
Pn
R. 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
Mn < Pn .
2
De plus, par la formule de récurrence de Bonnet, on obtient
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
pn ` 1q Mn`1 ptq < tMn ptq ´ n Mn´1
2n ` 3 2p2n ` 1q 2n ´ 1 2p2n ` 1q
Or on a c d d
2 1 n2
5.1.4 Formules élémentaires de Gauss-Legendre
n < < cn
2n ´ 1 2p2n ` 1q p2n ´ 1qp2n ` 1q
et c d d
2 1 pn ` 1q2
pn ` 1q < < cn`1
2n ` 3 2p2n ` 1q p2pn ` 1q ´ 1qp2pn ` 1q ` 1q
ce qui démontre le résultat voulu.
R. 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.
R. 4 Par construction, on a
ż1
Mi ptqMj ptqdx < ¶i,j , @pi, jq P v0, nw.
´1
On obtient donc
n`1
ÿ n`1
ÿ
pPt WPqi,j < Pk,i Wk,k Pk,j < wk´1 Mi´1 ptk´1 qMj´1 ptk´1 q.
k<1 k<1
5. Intégration numérique
pPt WPqi,j < ¶i´1,j´1 < ¶i,j
2 2
c’est à dire
1
Pt WP < I
2
et on en déduit que P et W sont inversibles .
b. A partir de Pt WP < 12 I, on déduit
` ˘-1 ` ˘-1
R. 6 a. 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
¨ ˛
0 c1 0 ... ... 0
˚c1 0 c2 0 ... 0 9
˚ 9
˚ . .. ... . .. .. .. 9
˚0 . .9
˚ 9
˚. . 9
˚ .. .. ... ..
.
..
. 0 9
˚ 9
˝ 0 . . . 0 cn´1 0 cn ‚
0 ... ... 0 cn 0
b
2
avec ck < 4kk2 ´1 , @k ě 1.
Pour calculer les poids pwi qni<0 , on va utiliser la formule
5.1.4 Formules élémentaires de Gauss-Legendre
ÿn
1 2
<2 pMk pti qq , @i P v0, nw
wi k<0
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
2: c Ð On
3: A Ð On`1,n`1
4: Pour k Ð 1 à n faire
5: c pkq Ð sqrtpk 2 {p4 ˚ k ^ 2 ´ 1qq
6: Apk, k ` 1q Ð c pkq
7: Apk ` 1, kq Ð c pkq
8: Fin Pour
9: t Ð eigpAq
5.1. Méthodes de quadrature élémentaires
b. On va utiliser la formule
n
ÿ
I < pb ´ aq < wi f pxi q
i<0
şb
Algorithme 5.6 Fonction QuadElemGaussLegendre retournant une approximation de a
f pxqdx en
utilisant la formule de quadrature de Gauss-Legendre à n ` 1 points sur l’intervalle ra, bs.
Données : f : une fonction de ra, bs à valeurs réels
a, b : deux réels avec a ă b
n : nPN
Résultat : I : un réel
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
5. Intégration numérique
La méthode de quadrature composée associée à Qn , notée Qcomp k,n , est alors donnée par
k
ÿ żβ
Qcomp
k,n pf, ³, ´q < Qn pf, ³i´1 , ³i q « f pxqdx (5.21)
i<1 α
Definition 5.15
³ < ³0 ă ³1 ă ¨ ¨ ¨ ă ³k < ´.
On a alors
żβ k ż αi
ÿ
f pxqdx < f pxqdx. (5.22)
α i<1 αi´1
k
ÿ żβ
Qcomp
k,n pf, ³, ´q < Qn pf, ³i´1 , ³i q « f pxqdx (5.23)
i<1 α
Proposition 5.16
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
5. Intégration numérique
f(m )5
f(m )7
5.2. Méthodes de quadrature composées
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
k
ÿ
şβ
Figure 5.6: Formule composite des points milieux : α
f pxqdx « h f pmj q (aire de la surface colorée)
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(α )
f(α31 )
f(α2 ) α0 α 1 α 2 α3 α4 α 5 α6 α7 α8
f(α8 )
5.2.1 Exemples
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 j<1
surface colorée)
5. Intégration numérique
5.2.Méthodes de quadrature composées
Formule composite de Simpson
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
CorrectionEn 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
7: S Ð S ` f pm
mpjqq
8: Fin Pour
9: I Ð4˚S
k´1
ÿ k
ÿ
10: SÐ0 z Calcul de f p³j q < f px
xj q
j<1 j<2
11: Pour j Ð 2 à k faire
12: S Ð S ` f pxxpjqq
13: Fin Pour
14: I Ð ph{6q ˚ pI ` 2 ˚ S ` f px
xp1qq ` f px
xpk ` 1qqq
15: Fin Fonction
5. Intégration numérique
˛
5.2. Méthodes de quadrature composées
y = f(x)
f(m )
2
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
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|hn`2
j 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 :
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
avec h < max p³j ´ ³j´1 q et Cp ą 0. Ceci s’écrit aussi sous la forme
jPv1,kw
żβ
| 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.2 Erreurs des méthodes de quadrature composées
10 -1 10 0 10 1
h
ż 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)
5.2. Méthodes de quadrature composées
NC(4)
NC(5)
NC(6)
10 -5 NC(7)
NC(8)
O(h 2 )
relative error
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
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 6
5. Intégration numérique
O(h )
O(h 8 )
10
relative error
O(h )
O(h 12 )
10 -10
10 -15
ż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
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.17 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.
α
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
5.2. Méthodes de quadrature composées
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 =[Link];
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
10 -6
E(h)
10 -8
10 -10
10 -12
10 -2 10 -1
5. Intégration numérique
h
şπ{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.
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.17: 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.17 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
.0.0 Erreurs des méthodes de quadrature composées
c. 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
2
xk´1 `xk
et ´l <
2
yl´1 `yl
.
187
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.
190 Langage algorithmique
A.1.3 Opérateurs
Opérateurs arithmétiques
Opérateurs relationnels
supérieur ou égal ą< a ą< b vrai si a est plus grand ou égal à b, faux sinon.
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
b. les instructions répétitives, permettant l’exécution répétée d’instructions simples, (i.e. boucles
«pour», «tant que»)
c. 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 trans-
posable dans la plupart des langages de programmation.
[Link]-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
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
b. 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,
[Link]-langage algorithmique
où nous supposons que a P R˚ et b P R. La solution de ce problème est donc
b
x<´ .
a
Les données de cette fonction sont a P R˚ et b P R. Elle doit retourner x < ´ ab solution de ax ` b < 0.
1: Fonction x Ð REPD( a, b )
2: x Ð ´b{a
3: Fin Fonction
Remarque 9. 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
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 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 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.
n ˆ ˙ n
ÿ
4A ÿ p´1qk`1 2k´1
1
ˆ 1
xÐ 1: SÐ p´1qk`1 cospp2k ´ 1qÉtq
π k“1 cospp2k ´ 1qωtq
k<1
2k ´ 1
1:
4A
2: xÐ S
Ã
ÿ
n
1 1: SÐ0
SÐ p´1qk`1 cospp2k ´ 1qωtq
k“1
2k ´ 1 2: Pour k < 1 à n faire
1: 3: S Ð S ` p´1qk`1 2k´1
1
˚ cospp2k ´ 1qωtq
4A
2: x Ð S 4: Fin Pour
Ã
A.3.0 Exercices
4A
5: x Ð S
π
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.
A. Langage algorithmique
5: Fin Pour
6: x Ð 4 ˚ A ˚ S{Ã
7: Fin Fonction
Exercice A.2.4
Reprendre les trois exercices précédents en utilisant les boucles «tant que».
P2 en P21 , P22 , etc. On poursuit cette analyse jusqu’à ce qu’on n’ait plus que des problèmes élémentaires
à résoudre. Chacun de ces problèmes élémentaires est donc traité séparément dans un module, c’est à
dire un morceau de programme relativement indépendant du reste. Chaque module sera testé et validé
séparément dans la mesure du possible et naturellement largement docummenté. Enfin ces modules
élémentaires sont assemblés en modules de plus en plus complexes, jusqu’à remonter au problème initiale.
A chaque niveau, il sera important de bien réaliser les phases de test, validation et documentation des
modules.
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,
200 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
[Link]è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 compatible.
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 9
˚ 9
v<˚ . 9
˝ .. ‚
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
est appelée produit scalaire euclidien si K < R, hermitiena si K < C. Pour rappeler la dimension
de l’espace, on écrit
xuu, v y < xu
u, v yn .
a La convention choisie pour le produit scalaire hermitien étant ici : linéarité à droite et semi-linéarité à gauche.
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 ??, page ??).
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
[Link]è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
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
a. A est inversible,
b. rankpAq < n,
c. x P Kn , Ax
x < 0 ñ x < 0, (i.e. ker A < t0u)
B. Annexes
d. detpAq ‰ 0,
e. toutes les valeurs propres de A sont non nulles,
[Link]èbre linéaire
f. il existe B P Mn pKq tel que AB < I,
g. il existe B P Mn pKq tel que BA < I.
Definition B.30
Proposition B.31
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
Soit A P Mn . La trace d’une matrice carrée A < paij q est définie par
n
ÿ
tr pAq < aii .
i<1
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)
[Link]è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).
b. 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 ??, page ??)
Definition B.47
[Link]è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 pentadiagonale
.
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
˚ . .. 9 ˚ . .. 9
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
˚ .. 9
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
˚ .. .. .. 9
˚ . . 9
˚ O . 9
A<˚ 9
˚ .. .. .. 9
˝ . . . 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
˚ .. .. .. .. 9 ˚ .. .. .. 9
˚ . . 9 ˚ . . 9
˚ . . 9 ˚ ‚ . 9
A<˚ 9 et A-1 < ˚ 9
˚ .. .. .. 9 ˚ .. .. .. 9
B. Annexes
˝ . . . O ‚ ˝ . . . O ‚
An,1 ¨¨¨ ¨¨¨ An,n ‚ ¨¨¨ ‚ A-1
n,n
¨ ˛ ¨ ˛
A1,1 ¨¨¨ ¨¨¨ An,1 A-1
1,1 ‚ ¨¨¨ ‚
˚ .. .. .. 9 ˚ .. .. .. 9
˚ . . 9 ˚ . . 9
˚ O . 9 ˚ O . 9
A<˚ 9 et A < ˚
-1
9
˚ .. .. .. .. 9 ˚ .. .. .. 9
˝ . . . . ‚ ˝ . . . ‚ ‚
O ¨¨¨ O An,n O ¨¨¨ O A-1
n,n
[Link]è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
a. }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)
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
UU˚ < I ùñ }A}2 < }AU}2 < }UA}2 < }U˚ AU}2 . (B.43)
Proposition B.63
a. Si une matrice A est hermitienne, ou symétrique (donc normale), on a }A}2 < ÄpAq.
b. Si une matrice A est unitaire, ou orthogonale (donc normale), on a }A}2 < 1.
Théorème B.64
a. Soit A une matrice carrée quelconque et }‚} une norme matricielle subordonnée ou non, quel-
conque. Alors
ÄpAq ď }A} . (B.45)
b. 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
˚ .. .. 9
˚ xee2 , f 1 y xee1 , f 2 y . . 9
P<˚
˚ ..
9
9 (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 10. 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.69
a. Etant donnée une matrice carrée A, il existe une matrice unitaire U telle que la matrice
U-1 AU soit triangulaire.
c. Etant donnée une matrice symétrique A, il existe une matrice orthogonale O telle que la
matrice O-1 AO soit diagonale.
Definition B.70
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
[Link]èbre linéaire
Théorème B.71
c. ÄpBq ă 1,
d. }B} ă 1 pour au moins une norme matricielle subordonnée }‚} .
Théorème B.72
Soit B une matrice carrée, et }‚} une norme matricielle quelconque. Alors
: :1{k
lim :Bk : < ÄpBq.
kÑ8
Exercice B.4.1
u, v ym < xu
xAu u P Rn , @vv P Rm .
u, Bvv yn , @u
Exercice B.4.2
B.4.1 Sur les matrices
Q. 2 a. Calculer detpAq.
B.4. Receuil d’exercices
Exercice B.4.3
Q. 1 Montrer par récurrence sur l’ordre des matrices, que si une matrice est normale et triangulaire
supérieure alors elle est diagonale. ˝
Théorème
Q. 2 Montrer que A P Mn pCq est une matrice normale si et seulement si il existe U P Mn pCq
unitaire et D P Mn 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. ˝
Correction
R. 1 On va démontrer, par récurrence, que la propriété suivante est vérifiée pour tout n ě 2:
` ˘
Pn : @T P Mn pCq normale et triangulaire supérieure ñ T diagonale
Initialisation : n < 2. Soit T P M2 pCq une matrice normale et triangulaire supérieure. Comme T est
normale, on a TT˚ < T˚ T, ce qui entraine
` ˚˘ ` ˘
TT i,j < T˚ T i,j , @pi, jq P v1, 2w2 .
B. Annexes
T1,2 T2,2 < T1,1 T1,2 ,
T2,2 T1,2 < T1,2 T1,1 ,
|T2,2 |2 < |T1,2 |2 ` |T2,2 |2 .
[Link]èbre linéaire
De la première équation ou de la dernière, on obtient T1,2 < 0. Les deux autres équations reviennent à
0 < 0, ce qui laisse libre les paramètres T1,1 et `T2,2˘ .
La matrice T est donc diagonale. La propriété P2 est vérifiée.
` ˘
Hérédité : Soit n ą 2. On suppose que Pn´1 est vraie. Soit T P Mn pCq une matrice normale et
triangulaire supérieure. On décompose la matrice T en une matrice bloc 2 ˆ 2 dont le deuxième bloc
diagonal, noté U est dans Mn´1 pCq
¨ ˛
T1,1 c˚
˚ 0 9
˚ 9
T<˚ .. 9
˝ . U ‚
0
avec c ˚ < pT1,2 , . . . , T1,n q P Cn´1 . On peut noter que U est triangulaire supérieure. On a alors TT˚ < T˚ T
qui s’écrit sous forme bloc :
¨ ˛¨ ˛ ¨ ˛¨ T ˛
T1,1 c˚ T 0 ... 0 T1,1 0 ... 0 1,1 c˚
˚ 0 9˚ 1,1 9 ˚ 9˚ 0 9
˚ 9˚ 9<˚ 9˚ 9
˚ .. 9˝ ‚˚ 9
˝ . U ‚ c U˚ ‚ ˝ c U˚ ˝ ... U ‚
0 0
c’est à dire ¨ ˛ ¨ ˛
|T1,1 |2 ` c ˚c c ˚ U˚ |T1,1 |2 T1,1c ˚
˚ 9 ˚ 9
˚ 9<˚ 9.
˝ Ucc UU ˚ ‚ ˝ T1,1c ˚
U U ‚
R. 2 On rappele le théorème
Théorème B.73
B.4.1 Sur les matrices
Soit A P Mn pCq, il existe une matrice unitaire U P Mn pCq et une matrice triangulaire inférieure
T P Mn pCq telles que
A < UTU˚ . (B.53)
ð Montrons que si A est une matrice normale alors il existe une matrice unitaire U P Mn pCq et une
matrice diagonale D P Mn pCq telles que A < UDU˚ .
En effet, d’après le théorème B.73, il existe une matrice unitaire U P Mn pCq et une matrice triangulaire
inférieure T P Mn pCq telles que A < UTU˚ . Il suffit, grâce à la première question, de démontrer que la
B. Annexes
R. 3 On a
A < UDU˚ < UDU-1 .
La matrice A est donc diagonalisable.
Notons p¼1 , . . . , ¼n q la diagonale de D et u i le i-ème vecteur colonne de la matrice U.
Comme U est unitaire, U˚ U < I, et que
¨ ˛
xu
u1 , u 1 y . . . xu
u1 , u n y
U˚ U < ˝
˚ .. .. .. 9
. . . ‚
xu
un , u 1 y . . . xu
un , u n y
on obtient
ui , u j y < ¶i,j , @pi, jq P v1, nw2
xu
De plus, on a ¨ ˛
xu
u1 , u j y
˚
U˚ u j < ˝ .. 9
. ‚ < ej ,
xuun , u j y
où ej est le j-ème vecteur de la base canonique.
On a donc
uj < UDU˚u j < UDeej < Up¼j e j q < ¼j u j .
Au
On en déduit que @j P v1, nw, p¼j , u j q est un élément propre de A et les vecteurs propres de A sont
orthogonaux.
Exercice B.4.4
B. Annexes
Q. 1 Montrer que
u P Cn .
u, u y P R, @u
xAu (B.54)
˝
[Link]èbre linéaire
Q. 2 a. Montrer que les éléments diagonaux de A sont strictement positifs.
b. Montrer que les sous matrices principales de A sont elles aussi hermitiennes et définies positves.
˝
i´1
ÿ xu
uk , v i y
ui < v i ´ u k , @i P v1, nw.
k<1
xu
uk , u k y
pHqi : Vect pu
u1 , . . . , u i q est une famille orthogonale et Vect pu
u1 , . . . , u i q < Vect pvv 1 , . . . , v i q
Hérédité : Soit i ă n. Supposons pHqi vérifiée. Montrons alors que pHqi`1 est vraie.
On a
ÿi
xu
uk , v i`1 y
u i`1 < v i`1 ´ uk . (B.55)
k<1
xu
uk , u k y
ÿ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
ÿi
xu
uk , v i`1 y
v i`1 < uk
k<1
uk , u k y
xu
pHqi
u1 , . . . , u i q < Vect pvv 1 , . . . , v i q . Ceci entre en contradiction avec Vect pvv 1 , . . . , v n q
et donc v i`1 P Vect pu
B.4.1 Sur les matrices
base de Kn .
‚ On déduit de (B.55) 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
˛
B. Annexes
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
B.4. Algèbre linéaire
une matrice Q unitaire et une matrice triangulaire supérieure R à coefficients diagonaux strictement
positifs tel que A < QR.
CorrectionOn utilise le procédé d’orthonormalisation de Gram-Schmidt (voir Proposition B.19, page 203)
pour obtenir la base orthogonale tu
u1 , . . . , u n u en calculant successivement
i´1
ÿ xu
uk , a i y
ui < ai ´ u k , @i P v1, nw. (B.56)
k<1
xu
uk , u k y
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
˚ .. 9˝ ˚
‚< ˝ .. .. .. 9
Q˚ A < ˝ . ‚ a1 ¨ ¨ ¨ an . . . ‚
q ˚n xq n , a1 y
q ¨¨¨ xq n , n y
q a
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 .
Comme Vect q 1 , . . . , q i´1 < Vect pa a1 , . . . , a i´1 q , on en déduit que
xqq i , a j y < 0, @j P v1, i ´ 1w.
La matrice Q˚ A est donc triangulaire supérieure.
De plus, on a
xu
ui , a i y
pQ˚ Aqi,i < xqq i , a i y <
}u
ui }2
En prenant le produit scalaire de (B.56) avec u i on obtient
i´1
ÿ uk , a i y
xu
xu
ui , u i y < xu
ui , a i y ´ xu
ui , u k y
k<1
xu
u k , uk y
ui , ai y car xu
< xu ui , uk y < 0, @k ‰ i (base orthogonale)
Comme u i ‰ 0, on obtient pQ˚ Aqi,i ą 0.
On note R < Q˚ A cette matrice triangulaire supérieure avec Ri,i ą 0, @i P v1, nw. La matrice Q étant
unitaire (i.e. QQ˚ < I) alors A < QR. ˛
B. Annexes
b. Ecrire la fonction algorithmique BaseOrtho permettant de construire la base orthonormée
tx
x1 , . . . , x n u à partir d’un vecteur u donné. Les vecteurs x k seront stockés dans une matrice
de Mn,n pCq, le vecteur x k étant en colonne k de la matrice. On pourra pour celà utiliser
les fonctions prédéfinies s Ð dotpu u, v q qui retourne le produit scalaire de deux vecteurs, s Ð
abspxq qui retourne le module d’un nombre complexe, ...
[Link]èbre linéaire
˝
P < ˝ x1 . . . xn ‚
A < UTU˚
Correction
R. 1 a. La première chose à faire est de construire une base contenant u à partir de la base canonique
tee1 , . . . , e n u. Comme le vecteur propre u est non nul, il existe j P v1, nw tel que xu u, e j y ‰ 0. La famille
tuu, e 1 , . . . , e j´1 , e j`1 , . . . , e n u forme alors une base de Cn car u n’est pas combinaison linéaire des
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.4.1 Sur les matrices
On peut ensuite utiliser le procédé de Gram-Schmidt, rappelé en Proposition B.19, pour con-
struire une base orthonormée à partir de cette base.
On calcule successivement les vecteurs x i à partir de la base tzz 1 , . . . , z n u en construisant un vecteur
w i orthogonal aux vecteurs x 1 , . . . , x i´1 .
B. Annexes
i´1
ÿ
wi < zi ´ xx
xk , z i y x k
k<1
B.4. Algèbre linéaire
wi
xi <
}w
wi}
b. Nous allons tout d’abord rechercher un indice imax tel que |uimax | < maxiPv1,nw |ui |. Ensuite, nous
construisons la matrice Z P Mn,n pCq telle que la colonne i de Z contienne le vecteur z i avec
tzz 1 , . . . , z n u < tu
u, e 1 , . . . , e imax ´1 , e imax `1 , . . . , e n u.
Ensuite, à l’aide des formules précédentes nous calculons la matrice P P Mn,n pCq telle que la colonne
i de Z contienne le vecteur x i . Voici donc l’algorithme:
Algorithme B.1
Données : u : un vecteur de Cn tel que }u
u}2 < 1.
Résultat : P : matrice n ˆ n dont les vecteurs colonnes
forment une base orthonormée de Cn et telle que la
première colonne de P soit u .
1: Fonction P Ð BaseOrtho ( u )
2: umax Ð 0, imax Ð 0 z On calcule imax
3: Pour i Ð 1 à n faire
4: Si umax ď abspu upiqq alors
5: umax Ð abspu piqq, imax Ð i
u
6: Fin Si
7: Fin Pour
8: Z Ð zerospn, nq z On calcule Z < pzz 1 , . . . , z n q
9: Zp:, 1q Ð u
10: iÐ2
11: Pour k Ð 1 à imax ´ 1 faire
12: Zpk, iq Ð 1
13: iÐi`1
14: Fin Pour
15: Pour k Ð imax ` 1 à n faire
16: Zpk, iq Ð 1
17: iÐi`1
B. Annexes
26: Fin Pour
27: Fin Fonction
a. Notons S < P˚ P la matrice de Mn,n pCq. On a pour tout pi, jq PP v1, nw2
[Link]èbre linéaire
R. 2
On a donc
P˚ P < I
et la matrice P est unitaire.
b. En conservant l’écriture colonne de la matrice P on obtient
¨ ˛ ¨ ˛
x ˚1 ¨ ˛ x ˚1 ¨ ˛
˚ x2 ˚ 9 ˚ x ˚2 9
˚ 9 ˚ 9
B<˚ ˚ ..
9A˝ x1 x 2 . . . x n ‚ < ˚
9 ˚ ..
9˝ Ax
9 x1 x2
Ax ... xn ‚
Ax
˝ . ‚ ˝ . ‚
x ˚n x ˚n
Ce qui donne
¨ ˚ ˛
x 1 Ax x1 x1 ˚ Ax x2 . . . x1 ˚ Ax xn
˚x ˚2 Axx1 x ˚2 Ax x2 . . . x ˚2 Ax xn 9
˚ 9
B<˚ . .. .. 9
˝ . . . . ‚
x ˚n Ax
x1 x ˚n Ax
x2 . . . x ˚n Ax xn
On a donc
Bi,j < x˚i Ax
xj , @pi, jq P v1, nw2
.
c. 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 9 ˚ ˚ x ˚ x 9
˚ x2 u x 2 Ax
¼x x2 . . . x 2 Ax n 9 ˚ 0 x 2 Ax 2 . . . x 2 Ax n 9
B<˚ .. .. .. 9<˚ .. .. .. 9
˝ . . . ‚ ˝ . . . ‚
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˚ .
A2 < P˚2 B2 P2 .
On pose U2 < P˚2 matrice unitaire et T2 < B2 matrice triangulaire supérieure pour conclure que la
B.4.1 Sur les matrices
˚ 9
Bn < ˚ .. 9
˝ . An´1 ‚
0
où c n´1 P Mn´1 pCq et An´1 P Mn´1 pCq. Par hypothèse de récurrence, DUn´1 P Mn´1 pCq unitaire
B.4. Algèbre linéaire
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 9
˚ 9
Qn < ˚ .. 9.
˝ . Un´1 ‚
0
On a Tn < U˚n An Unet en multipliant cette équation à gauche par Un et à droite par U˚n on
obtient l’équation équivalente An < Un Tn U˚n . La propriété pPn q est donc vérifiée. Ce qui achève la
démonstration.
B. Annexes
a. on cherche y solution de Tyy < U˚b . Comme U est unitaire on a detpUq detpU˚ q < detpIq < 1 et donc
detpAq < detpUTU˚ q < detpUq detpTq detpU˚ q
< detpTq
Or A inversible équivalent à detpAq ‰ 0 et donc la matrice T est inversible. La matrice T étant
[Link]èbre linéaire
triangulaire inférieure on peut résoudre facilement le système par la méthode de remontée.
b. une fois y déterminé, on résoud U˚x < y . Comme U est unitaire, on obtient directement x < Uyy .
˛
Exercice B.4.8
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
A pA ` Bq B < B pA ` Bq A < A´1 ` B´1
˝
Exercice B.4.9
Exercice B.4.10
Exercice B.4.11
Li,i
˝
Correction
R. 1 La matrice L est inversible si et seulement si son déterminant est non nul. Or le déterminant d’une
matrice triangulaire est égal au produit de ses éléments diagonaux. Pour avoir L, matrice triangulaire,
inversible, il faut et il suffit que
Lii ‰ 0, @i P v1, nw.
et donc
L1,1 M1,j < 0.
Or L1,1 ‰ 0 d’après Q.1, on obtient alors
M1,j < 0.
Or L1,k < 0, @k P v2, nw, car L triangulaire inférieure. On en déduit L1,1 M1,1 < 1 et donc, comme
L1,1 ‰ 0
1
M1,1 < .
L1,1
Or Li`1,k < 0, @k P vi ` 2, nw, car L triangulaire inférieure et Mk,j < 0 @k P v1, iw par hypothèse
B. Annexes
de récurrence. On a alors
Li`1,i`1 Mi`1,j < 0.
Comme Li`1,i`1 ‰ 0 d’après Q.1, on a
Mi`1,j < 0.
D’après (B.59) en pi ` 1, i ` 1q on a
[Link]èbre linéaire
n
ÿ i
ÿ n
ÿ
1< Li`1,k Mk,i`1 < Li`1,k Mk,i`1 ` Li`1,i`1 Mi`1,i`1 ` Li`1,k Mk,i`1 .
k<1 k<1 k<i`2
Or Li`1,k < 0, @k P vi ` 2, nw, car L triangulaire inférieure et Mk,i`1 < 0 @k P v1, iw par hypothèse
de récurrence. On a alors
Li`1,i`1 Mi`1,i`1 < 1.
Comme Li`1,i`1 ‰ 0 d’après Q.1, on a
1
Mi`1,i`1 < .
Li`1,i`1
L’assertion Ppi ` 1q est donc vraie.
On a donc démontré que Ppiq est vraie @i P v1, nw. La matrice M est donc triangulaire inférieure et
1
Mi,i < , @i P v1, nw.
Li,i
˛
Exercice B.4.12
Correction
R. 1 Pour que la matrice G soit bien définie il est nécessaire et suffisant que
Précisons ce dernier point. Les matrices U, V et B sont rectangulaires : on a U P Ml,m pKq, B P Mp,q pKq
B.4.2 Inverse d’une matrice
et V P Mr,s pKq. Pour définir I ` BVA´1 U, qui est une matrice carrée, il faut avoir compatibilité des
produits :
BV ñ q < r, VA´1 ñ s < n, A´1 U ñ l < n.
Ensuite pour que la matrice soit carrée il faut que BVA´1 U le soit : c’est à dire p < m. On a donc
ce qui donne
` ˘´1
A´1 U I ` BVA´1 U BVA´1 P Mn,n pKq.
Pour résumer, la matrice G est bien définie si et seulement si
B.4. Algèbre linéaire
R. 2 hypothèses précédentes, on a
´ ` ˘´1 ¯
pA ` UBVq G < pA ` UBVq A-1 ´ A-1 U I ` BVA-1 U BVA´1
` ˘´1 ` ˘´1
< I ` UBVA-1 ´ AA-1 U I ` BVA-1 U BVA´1 ´ UBVA-1 U I ` BVA-1 U BVA´1
` ˘ ` ˘ ´1
< I ` UBVA-1 ´ U I ` BVA-1 U I ` BVA-1 U BVA´1
< I ` UBVA-1 ´ UBVA-1
< I.
On a donc
´1
pA ` UBVq < G. (B.60)
´1 ` ˘´1 ˚ ´1
uv ˚ q
pA ` ´u < A´1 ´ A´1u I ` ´vv ˚ A´1u ´vv A
´1 ´
uv ˚ q
pA ` ´u < A´1 ´ A´1uv ˚ A´1 .
1 ` ´vv ˚ A´1u
Exercice B.4.13
Soient pzi qni<0 n ` 1 points distincts 2 à 2 de C. Soit V P Mn`1 pCq la matrice définie par
B. Annexes
j´1
Vi,j < zi´1 , @pi, jq P v1, n ` 1w.
Q. 1 Ecrire la matrice V. ˝
Soient w < pwi qn`1
i<1 un vecteur de C
n`1
. On note Pw P Cn rXs, le polynôme défini par
[Link]èbre linéaire
n
ÿ
Pw pzq < wi`1 z i
i<0
Q. 2 Exprimer v < Vw
w en fonction de Pw . ˝
Correction
R. 1 On a
¨ ˛
1 z0 ¨¨¨ z0n
˚1 z1 ¨¨¨ z1n 9
˚ 9
V < ˚. .. .. 9
˝ .. . .‚
1 zn ¨¨¨ znn
c’est à dire ¨ ˛
Pw pz0 q
v < ˝ ... ‚.
˚ 9
Pw pzn q
R. 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
˚ .. 9 ˚ .. 9
u < V˝ .
Vu ‚ < ˝ . ‚ < 0.
un`1 Pu pzn q
B.4.2 Inverse d’une matrice
Les n ` 1 points sont distincts 2 à 2, donc le polynôme Pu admet n ` 1 racines distinctes hors
pzi qni<0
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
B. Annexes
Exercice B.4.15
I 0 ˝ 1 2 1 2 ‚ C C
0 1 0 0 3 4 3 4
avec par identification ˆ ˙ ˆ ˙
1 0 1 2
I< et C <
0 1 3 4
Exercice B.4.16
Q. 1 Montrer que la matrice L est bien définie et spécifier les dimensions des blocs. ˝
Exercice B.4.17
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. ˝
Exercice B.5.1
B. Annexes
Soient x et y deux vecteurs de Cn .
Q. 1 Trouver ³ P C tel que x³x
x ´ y , x y < 0. ˝
| xx x}2 }yy }2 .
x, y y | ď }x (B.62)
[Link]
˝
Q. 3 Soit x ‰ 0. Montrer alors que l’inégalité (B.62) est une égalité si et seulement si y < ³x
x. ˝
Correction
R. 1 ‚ Si x < 0, alors ³ quelconque.
‚ 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
et , comme xx x, y y , on obtient
x, xy P R et xyy , xy < xx
xx
x, y y
³< . (B.63)
xx
x, x y
R. 2 On a
x ´ y }22
}³x < x³x x ´ yy
x ´ y , ³x
< ³ x³xx ´ y , x y ´ x³x
x ´ y, yy
< ´ x³xx ´ y , y y , car x³x
x ´ y , xy < 0
< ´³ xx
x, y y ` xyy , y y
En utilisant (B.63), on obtient alors
xyy , x y
x ´ y }22
}³x < ´ xx
x, y y ` xyy , y y
xxx, x y
´ xyy , xy xx
x, y y ` xyy , y y xx
x, xy
<
xxx, x y
x, y y, on a xyy , x y xx
Comme xyy , x y < xx x, y y |2 et donc
x, y y < | xx
1 ´ ¯
}³x x ´ y }22 < ´| xx x}22 }yy }22
x, y y |2 ` }x (B.64)
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.62).
B.5.1 Normes vectorielles
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
B. Annexes
}x x}22 .
x}2 }yy }2 < |³| }x
On en déduit alors
| xx x}2 }yy }2 .
x, y y | < }x
x ´ y }22 < 0
}³x
et donc ³x
x ´ y < 0, c’est à dire y < ³x
x.
˛
Exercice B.5.2
}x x}2 ` }yy }2 .
x ` y }2 ď }x (B.65)
Q. 2 Si x et y sont non nuls, prouver que l’inégalité (B.65) est une égalité si et seulement si y < ³x
x
avec ³ un réel strictement positif. ˝
| }x
x}2 ´ }yy }2 | ď }x
x ´ y }2 . (B.66)
Correction
x}22 < xx
R. 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 .
x ` y }22
}x x}22 ` }yy }22 ` 2 Re pxx
< }x x, y yq (B.68)
ď x}22
}x `
2
}yy }2 ` 2| xx
x, y y |.
B. Annexes
}x
x ` y }2 ď }x
x}2 ` }yy }2 .
}x
x ` y }2 < }x
x}2 ` }yy }2 ðñ y < ³x
x, ³ ą 0.
[Link]
ð On suppose y < ³x
x avec ³ ą 0.
On a alors
}x
x ` y }2 < }x
x ` ³x
x}2
< }p1 ` ³qx
x}2
< |1 ` ³| }x
x}2 .
}x
x ` y }2 < }x
x}2 ` ³ }x
x}2 . (B.69)
De plus, on a
ñ On suppose que
}x
x ` y }2 < }x
x}2 ` }yy }2 . (B.70)
Ce qui donne
x ` y }22 < }x
}x x}22 ` }yy }22 ` 2 }x
x}2 }yy }2 (B.71)
Re pxx
x, y yq < }x
x}2 }yy }2 . (B.72)
}x
x}2 }yy }2 < Re pxx
x, y yq ď | xx x}2 }yy }2
x, y y | ď }x
ce qui impose
| xx
x, y y | < }x
x}2 }yy }2 .
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.70) avec y < ³x x devient
}x
x ` y }2 < |1 ` ³| }x
x}2 < }x
x}2 ` }yy }2 < 1 ` |³| }x
x}2 . (B.73)
On a donc
B.5.1 Normes vectorielles
R. 3 On a x < px
x ´ y q ` y , et par application de l’inégalité triangulaire (B.65) on obtient
B.5. Normes
}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
x}2 ´ }yy }2 | ď }x
x ´ y }2 .
‚ Soit n ą 2, on suppose que Ppnq est vérifiée (hypothèse de récurrence). On veut alors montrer que
Ppn ` 1q est vraie.
On a
: : : :
:n`1 : :ÿn :
:ÿ : : :
: x i : < : x i ` x n`1 :
: i<1 : :i<1 :
2 2
: :
:ÿn :
: :
ď : x i : ` }x xn`1 }2 , d’après (B.65)
: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
Exercice B.5.3
n
ÿ n n
1ÿ 1ÿ
|ui vi | ď |ui |p ` |vi |q < 1. (B.76)
B. Annexes
i<1
p i<1 q i<1
[Link]
i<1
Correction
R. 1 L’inégalité (B.75) est vérifiée si ³ < 0 ou ´ < 0. Il nous reste donc à la vérifier pour ³ ą 0 et ´ ą 0.
Dans ce cas (B.75) s’écrit
ˆ ˙λ
³ ³
ď ¼ ` p1 ´ ¼q
´ ´
c’est à dire
³
f p q ě 0.
´
Montrons que f ptq ě 0, @t Ps0, `8r.
On a f 1 ptq < ¼p1 ´ tλ´1 q et
f 1 ptq < 0 ô 1 ´ tλ´1 < 0, car ¼ ‰ 0
• Etudions la fonction sur s0, 1r. On a pour t Ps0, 1r, lnptq ă 0 et donc p¼ ´ 1q lnptq ą 0. Comme la
fonction exp est croissante, on en déduit exppp¼ ´ 1q lnptqq ą 1 et alors f 1 ptq ă 0.
• 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.
L’inégalité (B.75) est donc vérifiée @³ ě 0, @´ ě 0 et @¼ Ps0, 1r.
1
R. 2 On pose ¼ < p Ps0, 1r. on a alors 1 ´ ¼ < 1q . On pose
n
ÿ 1 1
|ui vi | ď ` < 1.
i<1
p q
R. 3 Par construction, on a
n
ÿ ÿn
1
|ui vi | < |xi yi |
i<1
}x
x}p }yy }q i<1
B. Annexes
De plus
n
ÿ n
ÿ n
ÿ
| xx
x, y y | < | x i yi | ď |xi yi | < x}p }yy }q .
|xi yi | ď }x
B.5. Normes
Exercice B.5.4
1
Soit p ą 1 et q le nombre tel que q < 1 ´ p1 .
}x
x ` y }p ď }x x P Cn , @yy P Cn , p ě 1.
x}p ` }yy }p , @x (B.79)
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
ÿ
2
}A}F < Ai,: }22 <
}A }AA:,j }22 < tr A˚ A. (B.81)
i<1 j<1
˝
Q. 2 Montrer que
}Ax
x}2 ď }A}F }x x P Cn .
x}2 , @x (B.82)
˝
Q. 3 Montrer que cette application est une norme matricielle (nommée norme de Frobenius). ˝
Exercice B.5.6
B. Annexes
x}2 <1
}x
y }2 <1
}y
[Link]
Exercice B.5.7
Etant donné une norme vectorielle }‚} sur Kn , on définit l’application }‚}s : Mn pKq Ñ R` par
def }Avv }
}A}s < sup (B.83)
v PKn }vv }
v ‰0
On note B < tvv P Kn ; }vv } ď 1u la boule unitée de Kn et S < tvv P Kn ; }vv } < 1u la sphère unitée
de Kn .
Q. 2 a. Montrer que B et S sont des compacts.
b. Montrer que
}A}s < sup }Avv } (B.84)
v PS
c. En déduire que
}A}s < sup }Avv } (B.85)
v PB
d. En déduire que l’application }‚}s est bien définie sur Mn pKq i.e. @A P Mn pKq, }A}s ă `8.
˝
Q. 3 a. Montrer
}A}s ď inf t³ P R : }Avv } ď ³ }vv } , @vv P Kn u .
c. En déduire que
}A}s < inf t³ P R : }Avv } ď ³ }vv } , @vv P Kn u . (B.86)
˝
}Au
u} < }A}s }u
u} .
Correction
B.5.2 Normes matricielles
R. 1 On a immédiatement
}Ivv } }vv }
}I}s < sup < sup < 1.
v PK n }vv } v PK n }vv}
v ‰0 v ‰0
R. 2 a. Les ensembles B et S sont des compacts car image réciproque de l’application continue v ÞÑ
}v } par le fermé borné r0, 1s (pour la boule) et le singleton t1u (pour la sphère).
v
B. Annexes
b. On a : :
}Avv } : v :
}A}s < sup < sup ::A : < sup }Au
u}
v PKn }vv } v PKn }vv } : u PS
v ‰0 v ‰0
c. Comme S Ă B on a aussi
sup }Avv } ě sup }Avv } . (B.87)
v PB v PS
B.5. Normes
}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
sup }Aw
w } < sup }Au
u} .
w PB uPS
d. L’application v ÞÑ }Avv } est continue donc son sup sur la sphère unitée qui est compacte est atteint.
R. 3 a. Comme }‚}s est bien définie il existe ³ P R` tel que }A}s ď ³. Soit ³ P R` tel que }A}s ď ³.
On a
}Avv }
}A}s ď ³ ô sup ď³
v PKn }vv }
v ‰0
}Avv }
ô ď ³, @vv P Kn zt0u
}vv }
ô }Avv } ď ³ }vv } , @vv P Kn zt0u
ô }Avv } ď ³ }vv } , @vv P Kn
On en déduit que
}A}s ď inft³ P R : }Avv } ď ³ }vv } , @vv P Kn u (B.89)
b. Comme S est compact et l’application v ÞÑ }Avv } est continue, il existe w P S tel que
et donc
inft³ P R : }Avv } ď ³ }vv } , @vv P Kn u ď }A}s .
}Auu} }Avv }
}A}s < sup ě , @vv P Kn zt0u.
}u
u} }vv }
B. Annexes
u PKn
u ‰0
et donc
}Avv } ď }A}s }vv } , @vv P Kn zt0u.
qui est équivalent à
}Avv } ď }A}s }vv } , @vv P Kn .
[Link]
b. D’après la Q. 3 b. ,il existe w P S tel que }A}s < }Aww } . Soit ¼ P K˚ et u < ¼ww ‰ 0. On a }u
u} < |¼|
et : :
: u :
}A}s < }Aww } < ::A : < 1 }Auu} ô }A}s }u u} < }Auu}
u} : }u
}u u}
}Avv }
}A}s < 0 < sup ùñ }Avv } < 0, @vv P Kn zt0u
v PKn }vv }
v ‰0
Soit tee1 , . . . , e n u la base canonique de Kn . On a alors @j P v1, nw, Aeej < 0 et on en déduit que
et donc A < O.
v PK n }vv } v PK n }vv }
v ‰0 v ‰0
}A}s }Bvv }
ď sup car }Au
u} ď }A}s }u u P Kn
u} @u
v PK n }vv }
v ‰0
}Bvv }
ď }A}s sup < }A}s }B}s .
v PKn }vv }
v ‰0
B. Annexes
Exercice B.5.8
n
x PC }x
x}1
x ‰0
b. Conclure.
˝
Correction
x}1 < 1. On a
R. 1 Soit x P Cn tel que }x
ˇ ˇ
ÿn ÿn ˇÿ n ˇ
ˇ ˇ
}Axx}1 < |pAx
xqi | < ˇ aij xj ˇ
i<1
ˇ
i<1 j<1
ˇ
˜ ¸
ÿn ÿ n ÿn ÿ n
ď |aij xj | < |xj | |aij |
i<1 j<1 j<1 i<1
˜ ¸
n
ÿ n
ÿ n
ÿ n
ÿ
ď max |aij | |xj | < max |aij | car }x
x}1 < |xj | < 1.
jPv1,nw jPv1,nw
i<1 j<1 i<1 j<1
On obtient donc
n
ÿ
sup }Ax
x}1 ď max |ai,j |.
x PCn jPv1,nw
i<1
x}1 <1
}x
Pour obtenir
n
ÿ n ˇ ÿ
ÿ n ˇ
|ai,k | < ˇ ai,j yj ˇ
i<1 i<1 j<1
B. Annexes
b. D’après la proposition/définition des normes matricielles suboordonnées, on a
}A}1 < sup }Ax
x}1 .
x PCn
x}1 <1
}x
[Link]
}A}1 < max |ai,j |.
jPv1,nw
i<1
˛
Exercice B.5.9
Q. 1 Montrer que
n
ÿ
sup }Ax
x}8 ď max |ai,j |.
x PCn iPv1,nw
j<1
x}8 <1
}x
b. Conclure.
˝
Correction
R. 1 Soit x P Cn tel que }x
x}8 < 1. On a
ˇ ˇ
ˇÿn ˇ
ˇ ˇ
}Ax
x}8 < max |pAxxqi | < max ˇ ai,j xj ˇ
iPv1,nw iPv1,nw ˇj<1
ˇ
n
ÿ
ď max |ai,j ||xj |
iPv1,nw
j<1
ÿn
ď max |ai,j | car |xj | ď max |xi | < }x
x}8 < 1.
iPv1,nw iPv1,nw
j<1
On obtient donc
n
ÿ
sup }Ax
x}8 ď max |ai,j |.
x PCn iPv1,nw
j<1
x}8 <1
}x
n
ÿ n
ÿ
|ak,j | < max |ai,j |.
iPv1,nw
j<1 j<1
On a, pour tout y P Cn ,
ˇ ˇ ˇÿn
ˇ
}Ayy }8 < max ˇpAyy qi ˇ < max ˇ ai,j yj ˇ.
iPv1,nw iPv1,nw
j<1
B. Annexes
ˇÿn ˇ ÿ n
ˇ ak,j yj ˇ < |ak,j |.
j<1 j<1
et donc
n
ÿ n
ÿ
}Ayy }8 < |ak,j | < max |ai,j |.
iPv1,nw
j<1 j<1
Exercice B.5.10
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 .
B. Annexes
Q. 2 a. Démontrer que les p¼i , v i qiPv1,nw sont les éléments propres de B où v i est le i-ème vecteur
colonne de U.
b. En déduire que tvv 1 , . . . , v n u est une base orthonormée de Cn .
˝
[Link]
n
ÿ
Dp³1 , . . . , ³n q P Cn , tels que x < ³i v i .
i<1
Q. 3 a. Montrer que
n
ÿ
xx
x, x y < |³i |2 < 1.
i<1
b. Montrer que
2
sup }Avv }2 ď ÄpA˚ Aq.
v PCn
v }2 <1
}v
d. En déduire que
def }Axx}2 a
}A}2 < sup < ÄpA˚ Aq.
n
x PC }x
x}2
x ‰0
˝
UU˚ < I ùñ }A}2 < }UA}2 < }AU}2 < }U˚ AU}2 .
Correction
R. 1 a. Il faut montrer que B < B˚ . Or on a
` ˘˚ ` ˘˚
B˚ < A˚ A < A˚ A˚ < A˚ A < B.
xBu u, u y < ¼ xu
u, u y < x¼u u}22 .
u, u y < ¼ }u
xBu u, B˚u y .
u, u y < xu
xBu
u, u y < xu uy
u, Bu
2
< xu uy < ¼ xu
u, ¼u u, u y < ¼ }u
u}2 .
On a donc
B. Annexes
2 2
u}2 < ¼ }u
¼ }u u}2
et comme }u
u}2 ‰ 0 (u
u est un vecteur propre) on obtient ¼ < ¼, c’est à dire ¼ P R.
c. On a
u, u y < xA˚ Au
xBu u, u y
< xAu uy par propriété du produit scalaire
u, Au
B.5. Normes
2
< }Au
u}2 .
u}22
}Au
¼< ě 0.
u}22
}u
On obtient alors
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 . On peut noter que v i ‰ 0 car U est inversible.
b. On a ¨ ˛
¨ ˛ v ˚1
˚ v ˚2 9
˚ 9
U < ˝ v1 . . . vn ‚ et U˚ < ˚ ..
9
˚ 9
˝ . ‚
v ˚n
On a donc
¨ ˚ ˛
v 1 v1 v1 ˚ v 2 . . . v1 ˚ v n
˚v ˚2 v1 v ˚2 v 2 . . . v ˚2 v n 9
˚ 9
U˚ U < ˚ . .. .. 9
˝ .. . . ‚
v ˚nv1 v ˚nv 2 ˚
. . . v nv n
et donc
@pi, jq P v1, nw2 , pU˚ Uqi,j < v ˚i v j < xvv i , v j y .
Comme U est unitaire, on a U˚ U < I et donc
On en déduit alors
@pi, jq P v1, nw2 , xvv i , v j y < ¶i,j .
tvv 1 , . . . , v n u est donc une base orthonormée de Cn .
B. Annexes
i<1
ÿn
< |³i |2 .
i<1
x}22 < xx
De plus }x x, x y < 1.
b. On a
[Link]
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
On en déduit alors
2
sup }Avv }2 ď ÄpA˚ Aq.
v PCn
v }2 <1
}v
c. Pour démontrer que l’on a en fait égalité il suffit de trouver un vecteur la vérifiant, c’est à dire un
vecteur w P Cn , }w
w }2 < 1, tel que
w }22 < max ¼i
}Aw
iPv1,nw
où les ¼i sont positifs ou nuls (valeurs propres de B. Pour celà on note k P v1, nw l’indice tel que
¼k < maxiPv1,nw ¼i . En choisissant w < 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¼k v k , v k y < ¼k < ÄpA˚ Aq.
def }AUxx}2
}AU}2 < sup .
x PCn }x
x}2
x ‰0
x, on a x < U˚y car U-1 < U˚ (U étant unitaire). Comme U est inversible on
En posant y < Ux
a
␣ ˚ (
U y , @yy P Cn zt0u < Cn zt0u
}AUxx}2 }Ayy }2
sup < sup ˚
.
x PC n }x
x}2 y PC }U y }2
n
x ‰0 y ‰0
B.6. Normes
De plus, on a
2 2
}U˚y }2 < xU˚y , U˚y y < xyy , UU˚y y < xyy , y y < }yy }2
B.6 Listings
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++){ 14
return x ; 26
} 27
B. Annexes
#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) ;
[Link]
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
// 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
#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>
B.6.1 Codes sur la méthode de dichotomie/bissection
3.9 Fonction RSLFactLU permettant de résoudre, par une factorisation LU, le système linéaire
Axx < b où A est une matrice de Mn pKq, dont toutes les sous-matrices principales sont
inversibles, et b P Kn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
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.22) . . . . . . . . 80
3.12 Fonction FactLUcolL permet de calculer la colonne i de L à partir de (3.23) . . . . . . . 80
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. . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
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 . . . . . . . . . . . . . . 84
3.15 Fonction RSLCholesky permettant de résoudre, par une factorisation de Cholesky posi-
B.6.1 Codes sur la méthode de dichotomie/bissection
źn
t ´ xj
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
j<0,j‰i i
x ´ xj
ÿn
1
4.6 Fonction polyLp permettant de calculer L1i pxi q < . . . . . . . . . . . . . 144
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. . . . . . . . . . 158
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 . . . . . . . 167
5.3 Fonction QuadElemGen retourne la valeur de I < pb ´ aq j<0 wj f pxj q. . . . . . . . . . 168
ř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 168
5.5 Fonction GaussLegendre retournant le tableau des points t et le tableau des poids w . . 176
ş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. . . 177
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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
A.1 Exemple de boucle «pour» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
A.2 Exemple de boucle «tant que» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
A.3 Exemple de boucle «répéter ...jusqu’à» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
A.4 Exemple d’instructions conditionnelle «si» . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
A.5 Exemple de fonction
řn : Résolution de l’équation du premier degré ax ` b < 0. . . . . . . . 193
A.6 Calcul de S < k<1 k sinp2kxq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
źk
A.7 Calcul de P < sinp2kz{nqk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
n<1
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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
[Link] OF ALGORITHMS
[Link] OF ALGORITHMS
normale, 204
norme
invariance par transformation unitaire, 99, 211
matricielle non subordonnée, 100, 212
matricielle subordonnée, 96, 211
vectorielle, 95, 209
permutations, 204
polynôme caractéristique, 205
produit, 202
produit scalaire, 200
projection orthogonale:matrice, 201
projection orthogonale:opérateur, 201
[Link]
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.