Académique Documents
Professionnel Documents
Culture Documents
Analyses Numériques
Document de base
Parcours Physique
Table des matières
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
.1 Qu’est-ce que l’analyse numérique ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
.1.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
.1.2 Objectifs de l’analyse numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
.1.3 Problèmes liés à l’analyse numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
.2 Les outils de l’analyse numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
.2.1 L’algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
.2.2 L’organigramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
IV EQUATIONS DIFFERENTIELLES 29
IV.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
IV.2 Dérivation numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
IV.3 Méthodes d’Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
IV.3.1 Méthode d’Euler du premier ordre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
IV.3.2 Étude générale des méthodes à un pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
IV.3.2.1 Consistance, stabilité, convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
IV.4 Méthodes de Runge-Kunta d’ordre 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
V Intégration numérique 34
V.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
V.2 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
V.3 Evaluation de l’erreur. Noyau de Peano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
.1.1 Définition
Définition .1.1 L’analyse numérique est une discipline à l’interface des mathématiques et de l’informatique. Elle
s’intéresse tant aux fondements qu’à la mise en pratique des méthodes permettant de résoudre, par des calculs
purement numériques, des problèmes d’analyse mathématique.
Définition .1.2 Plus formellement, l’analyse numérique est l’étude des algorithmes permettant de résoudre numé-
riquement par discrétisation les problèmes de mathématiques continues (distinguées des mathématiques discrètes).
Cela signifie qu’elle s’occupe principalement de répondre de façon numérique à des questions à variable réelle ou
complexe comme l’algèbre linéaire numérique sur les champs réels ou complexes, la recherche de solution numérique
d’équations différentielles et d’autres problèmes liés survenant dans les sciences physiques et l’ingénierie.
Définition .1.3 L’analyse numérique consiste à élaborer des processus qui permettent de résoudre des problèmes
concrets par la seule voie du calcul numérique, donc à l’aide d’un ordinateur.
Remarque .1.1 A la place d’une étude théorique complète d’un algorithme, il est pratique et plus rapide de
l’expérimenter.
L’analyse numérique recherche le passage d’un domaine continu, infini et théorique à un domaine discret,
borné et concret.
Pour les principaux problèmes, on peut retenir que :
¬ la représentation des nombres sur ordinateur n’est pas exacte ;
.2.1 L’algorithme
Un algorithme est un procédé de calculs qui permet de résoudre une série de problèmes d’un même type.
Le meilleur algorithme est celui qui donne la solution la plus précise avec un minimum d’opérations et en
utilisant le moins de place mémoire possible.
On peut distinguer deux types d’algorithmes :
¬ les algorithmes génériques
— fonctionnent dans un grand nombre de cas,
— n’utilisent que peu d’hypothèses à priori,
— ne sont généralement pas les plus efficaces (temps de calcul/précision), mais couvrent un large éventail
d’utilisations possibles
les algorithmes spécifiques
— ne fonctionnent que dans des cas bien précis,
— utilisent des hypothèses à priori, qui les rendent adaptés à des problèmes précis,
— sont généralement plus efficaces, à la fois en temps de calcul et en précision, certaines hypothèses étant
explicitement prises en compte dans l’algorithme utilisé.
.2.2 L’organigramme
Elle consiste à tracer la courbe représentative de f et à chercher l’intersection de la courbe avec l’axe des
abscisses.
Si la fonction f est plus compliquée pour son étude, on peut chercher à la décomposer comme somme de deux
fonctions. Dans ce cas, on cherche les points d’intersection des courbres représentatives des deux fonctions.
Corollaire I.1.1 Si une fonction continue f sur un segment [a, b] prend sur ce segment des valeurs de signes
contraires , càd si f (a).f (b) < 0, alors ce segment contient au moins une racine de l’équation f (x) = 0.
De plus, si la dérivée f 0 (x) existe et f 0 (x) est de signe constant sur [a, b], alors la racine est unique.
Technique de calcul
x0 = a
x1 = a + h
x2 = a + 2h
x3 = a + 3h
..
.
xn = a + nh = b
Cette méthode est attribuée à Isaac Newton (1642 - 1727) ; cependant, c’est Raphson qui publiait en 1960 la
formule itérative utilisée actuellement.
Soit une fonction continument dérivable f : [a; b] −→ R. On cherche à approcher (quand elle existe) la solution
de l’équation :
f (r) = 0.
f (x)
0 ≈ f (r) − f (x) + (r − x)f 0 (x) ⇐⇒ r = x − .
f 0 (x)
Pour approcher la racine r de l’équation f (r) = 0, on construit par récurrence la suite suivante :
— x0 ∈ [a; b] (x0 ”proche” de r ) ;
—
f (xn )
xn+1 = xn − 0 .
f (xn )
Théorème I.1.1 Soit f une fonction deux fois continument dérivable sur [a; b]. Soit r ∈]a; b[ une racine simple
de f (i.e. f (r) = 0 et f 0 (r) 6= 0.)
Alors il existe > 0 tel que la suite
— x0 ∈ [r − ; r + ]
— xn+1 = xn − ff0(xn)(xn)
converge vers r .
Précaution à suivre
— Il est indispensable de compter les itérations et de stopper le processus itératif s’il est jugé trop long.
— Il faut arrêter le processus itératif si f 0 (xn ) est nul ou si f (xn ) ou f 0 (xn ) est non défini.
Possibilité de non-convergence
4x3 − 7x2
φ(x) = =⇒ x1 = 1 et x2 = ∞.
6x2 − 14x + 8
Avantages et inconvénients
+ Avantages
— convergence rapide ;
— choix d’un seul point pour enclancher le processus ;
+ Inconvénients
— nécessité de calcul de la dérivée ;
— la méthode ne peut donner qu’une seule racine ;
— la non-assurance de la convergence de la méthode.
Dans certaines situations, la dérivée de f est très compliquée à calculer ou même voir impossible à expliciter.
On ne peut plus continuer par utiliser la méthode de Newton.
Dans la méthode de Newton-Raphson, on avait
f (xn )
xn+1 = xn −
f 0 (xn )
f (xn ) − f (xn−1 )
f 0 (xn ) =
xn − xn−1
Définition I.1.1 On dit que f est contractante de rapport k < 1 sur [a; b] si pour tout x, y ∈ [a; b] :
Propriété I.1.1 une fonction f continument dérivable sur [a; b], telle que |f 0 (x)| < k ≤ 1 pour tout x ∈ [a; b], est
contractante sur [a; b].
Théorème I.1.2 soit f une application contractante de rapport k < 1 sur [a; b], telle que f ([a; b]) ⊂ [a; b]. Alors
f admet un unique point l sur [a; b] tel que f (l) = l.
Exemple I.1.3 Montrer que la fonction cos admet un point fixe sur [ π6 ; π3 ] et donner une méthode pour le calculer.
I.2 Exercices
Exercice I.2.1 1. Pour chacune de ces méthodes, donner l’organigramme de type graphique ;
2. Donner ensuite l’organigramme du type texte pour ces mêmes méthodes ;
x0 donné
xn+1 = 2 − ln(xn )
x0 donné
xn+1 = exp(2 − xn ).
Qu’en déduisez-vous ?
4. Écrire la méthode de Newton pour l’équation proposée et proposer un bon choix de l’initialisation x0 .
√
Exercice I.2.6 valeur approchée de 2
Soit f la fonction :
x+2
f (x) = .
x+1
Montrer que
√
1. 2 est un point fixe de f .
2. Montrer que f est continument dérivable sur [1; 2] et que |f 0 | est majorée par un nombre k < 1.
√
3. En déduire une suite de valeurs approchées de 2
II.1 Introduction
On note A = (aij )m,n une matrice ayant m lignes et n colonnes et où les aij sont des nombres réels ; ce qui
équivaut à
a11 a12 a13 ... a1n
a21 a22 a23 ... a2n
. .. .. ..
.
. . . .
On définit par
Étant donné n variables indépendantes xi , on qualifie de linéaire toute équation du premier ordre définie par
a1 x1 + a2 x2 + · · · + an xn = bn .
soit
n
X
aij xj = bi , i = 1, 2, 3 . . . , m.
j=1
On pose AX = B où A est la matrice m lignes n colonnes, X et B sont les matrices colonnes suivantes :
a11 a12 a13 . . . a1n x1 b1
a21 a22 a23 . . . a2n x2 b2
A= .. .. .. , X = .. , B = .. .
..
. . . . . .
am1 am2 am3 . . . amn xn bm
Remarque II.3.1 + Si le nombre d’équations est supérieur au nombre d’inconnues alors il existe des solu-
tions dans des cas particuliers ;
+ Si le nombre d’équations est inférieur au nombre d’inconnues alors il peut y avoir une ou plusieurs solu-
tions ;
+ Un système est homogène si bi = 0 pour tout i ; il admet la solution xi = 0 pour tout i ;
+ Un système pour lequel detA = 0 est dit singulier.
Remarque II.3.2 Les matrices que nous considérerons dans la suite sont des matrices carrées.
Un système linéaire AX = B est dit mal conditionné lorsqu’une faible variation du vecteur B ou de la matrice A
entraı̂ne une grande variation de la solution X.
Soit A une matrice carrée d’ordre n. On suppose maintenant que le système AX = B possède la propriété
suivante :
det A 6= 0
Ces algorithmes sont basés sur la transformation (par éliminations successives des inconnues) de la matrice A ;
la matrice A devient alors soit diagonale soit triangulaire.
Principe :
La méthode de Gauss consiste à transformer un système linéaire AX = B en une suite de systèmes linéaires :
(A étant une matrice carrée)
ayant même solution que le système initial A(0) X = B (0) et tel que la matrice finale A(n) soit une matrice
triangulaire supérieure.
Le système final A(n) X = B (n) est alors résolu par la méthode de retour en arrière.
On a :
a 11 x 1 + a 12 x 2 + · · · + a 1n x n = b 1
F1 (x) = 0
a21 x1 + a22 x2 + · · · + a2n xn = b2
F2 (x) = 0
. . =⇒ .
.. ..
..
an1 x1 + an2 x2 + · · · + ann xn = bn
Fn (x) = 0
donc :
F1 (x) = a11 x1 + a12 x2 + · · · + a1n xn − b1
F2 (x) = a21 x1 + a22 x2 + · · · + a2n xn − b2
...
..
.
Fn (x) = an1 x1 + an2 x2 + · · · + ann xn − bn
On retranche à la itextme équation la première équation multipliée par le coefficient ai1 /a11 ; ce qui permet
d’éliminer l’inconnue x1 de toute les équations sauf de la première.
Le système devient alors :
(1) (1) (1) (1) (1)
F1 (x) = a11 x1 +a12 x2 + · · · + a1n xn − b1
F2(1) (x) = 0 (1) (1) (1)
+a22 x2 + · · · + a2n xn − b2
.. ..
. .
Fn(1) (x) = 0 (1) (1) (1)
+an2 x2 + · · · + ann xn − bn
avec
(1) (0) a21 (1) (0) a21
a22 = a22 − a11 a12 , · · · , a22 = a2n − a11 a1n
.. ..
. .
(1) (0) an1 (1) (0) an1
an2 = an2 − a11 , · · · , ann = ann − a11 a1n
(1) (0) a21 (1) (0) a21
b2 = b2 − a11 b1 , · · · , bn = bn − a11 b1
La première équation F1 (x) sert à éliminer x1 dans toutes les autres équations : c’est l’équation pivot et le coefficient
a11 est le pivot. De façon générale l’équation k sert à éliminer l’inconnue xk dans toutes les autres équations qui
suivent. Donc une deuxième étape servira à éliminer x2 dans les équations 3, 4, 5, . . . , n grâce au pivot a22 de
(1)
l’équation pivot F2 (x). Ainsi de proche à proche, on élimine successivement toutes les inconnues des équations
d’ordre supérieur à l’inconnue. La matrice finale est alors triangulaire supérieure.
Si nous considérons la matrice augmentée du système i.e la matrice à n ligne et n + 1 colonnes formée à partir
de la matrice A et du vecteur B, nous pouvons définir la démarche suivante :
i = 1, . . . , k
(k+1) (k)
aij = aij pour
j = 1, . . . , n + 1
i = k + 1, . . . , n
(k+1)
pour k = 1, . . . , n − 1 aij =0 pour
j = 1, . . . , k
(k) i = k + 1, . . . , n
(k+1) (k) aik (k)
aij = aij − (k) akj pour
akk j = k + 1, . . . , n + 1
Exemple II.4.1 On veut résoudre par la méthode de Gauss sans stratégie de pivot le système AX = B avec
2 6 2 8 16
1 4 2 2 5
A= et B =
1 1 2 4 9
1 1 1 1 2
On trouverra
..
2 6 2 8 . 16
..
(3) 0 1 1
−2 . −3
A
..
0 0 3 −4 . −5
..
0 0 0 −13/3 . −26/3
d’où la solution
−1
0
Xs = .
1
2
On doit remarquer que les pivots successifs akk ont été supposés non nuls dans l’algorithme précédent, alors
que ceux-ci interviennent comme diviseurs. Si l’un d’entre eux est nul, le processus doit doit être modifié :
lorsque le pivot akk = 0, on permute la ligne k correspondante avec l’une quelconque des lignes suivantes qui
possède un pivot non nul et on reprend le processus normal.
Stratégie du pivot partiel
Il se peut que le pivot, sans être nul, soit très petit en comparaison des autres éléments de la matrice A ;
on montre que c’est une cause importante d’erreur d’arrondi. Aussi pour une bonne précision des calculs, il est
préférable que les pivots successifs soient les plus grands possibles en valeur absolu. On peut donc rechercher parmi
les équations possibles, celle dont la valeur absolue du pivot est maximale et l’utiliser comme équation pivot.
Par suite, si l’on trouve un pivot maximal nul, c’est que tous les pivots possibles sont nuls, par conséquent, la
matrice est dite singulière (det(A) = 0).
Stratégie du pivot total
On peut aussi appliquer cette stratégie aux colonnes disponibles , c’est la tratégie du pivot total. Cette méthode
plus générale est cependant plus délicate à appliquer car une permutation des colonnes entraı̂ne une permutation
dans l’ordre des inconnues, changement dont il faudra tenir compte lors de l’utilisation de la méthode de retour
en arrière.
Remarque II.4.1 Il n’est pas nécessaire de stocker en mémoires toutes les matrices intermédiares A(k) . On se
sert en général de deux matrices déclarées.
Pour la résolution du système triangulaire, on ne se sert pas des éléments situés en dessous de la diagonale
principale de A(n) . Qu’on les ait ou non mis à zéro n’a donc aucune importance, ce qui simplifie encore la pro-
grammation.
La méthode de Gauss-Jordan constitue une variante de la méthode de Gauss : elle procède aussi par élimination
des inconnues mais lorsqu’une inconnue est éliminée, elle l’est de toutes les autres équations du système, i.e aussi
bien des équations précédentes que des équations suivantes par rapport au pivot utilisé. La matrice A du système
linéaire est alors transformée en une matrice unité I, de sorte que la solution s’obtient directement.
Considérons alors la matrice Aa carrée d’ordre n, à laquelle nous avons rajouté le second membre :
a11 a12 a13 . . . a1n a1,n+1
a21 a22 a23 . . . a2n a2,n+1
Aa = .. .. .. .. .
..
. . . . .
an1 an2 an3 ... ann an,n+1
Nous supposons aussi qu’il n’y a pas d’éléments nuls sur la diagonale. La méthode de Gauss-Jordan peut se résumer
en la succession d’étapes suivantes :
¬ On divise la première ligne par a11 ;
On multiplie la première ligne par ak1 et on la retranche terme à terme de la k textime ligne, pour k = 2, 3, . . . , n
.
L’élément ak1 est annulé sauf pour k = 1 ;
(1)
® On divise la deuxième ligne par a22 ; l’indice supérieur représente le nombre d’opérations effectuées sur
l’élément ;
(1)
¯ On multiplie la deuxième ligne par ak2 et on la retranche terme à terme de la k textime ligne, pour k =
1, 3, 4, . . . , n . Ce qui annule les termes de la deuxième colonne sauf la première ligne.
° On répète les étapes 3. et 4. pour les lignes j = 3, 4, . . . , n en faisant varier l’indice k de 1 à j − 1 puis de
j + 1 = n.
pour i = j + 1, . . . , n + 1
aji
aji =
pour j = 1, . . . , n ajj
pour k = 1, . . . , n(k 6= j)
aki = aki − aji akj
Remarque II.4.2 On peut introduire dans cette procédure, une stratégie de pivot qui évite la restriction du départ,
à savoir aucun terme sur la diagonale n’est nul.
Cette méthode est basée sur la transformation de la matrice A en produit de deux matrices en laissant le second
membre B intact. Ce qui a l’avantage de pouvoir utiliser, avec la même décomposition, plusieurs seconds membres,
sans allourdir considérablement les calculs.
On décompose la matrice A en produit de deux matrices L et R où :
— L est triangulaire inférieure avec des 1 sur la diagonale ;
— R est triangulaire supérieure.
On pose
1 0 0 ... 0 r11 r12 r13 . . . r1n
l21 1 0 . . . 0 0 r22 r23 . . . r2n
L= .. .. .. ..
R = ..
.. .. .
..
. . . . . . . .
ln1 ln2 ln3 ... 1 0 0 0 ... rnn
Ainsi le système initial AX = B est transformé en deux systèmes triangulaires plus simple à résoudre :
AX = B ⇐⇒ L(RX) = B
La résolution du premier système donne un vecteur Y qui devient le second membre du deuxième système dont le
vecteur solution est évidemment la solution cherchée.
Il faut donc maintenant déterminer les deux matrices L et R ; ceci peut se faire par identification avec la matrice
A une fois que le produit est fait. On trouve comme formule :
— pour i = 1, . . . , n r1i = a1i et li1 = ai1 /a11
— pour i = 2, . . . , n
i−1
X
pour j = i, . . . , n rij = aij − lik rkj
k=1
i−1
X
pour k = i + 1, . . . , n (i < n) lki = aki − lkj rji /rii .
j=1
On remarque que, pour la détermination des coefficients lij , on divise par les coefficients rii , si ceux-ci sont
nuls on ne peut pas décomposer la matrice A qui est alors singulière. Le système n’a donc pas de solution.
Les deux matrices L et R peuvent être stockées dans les cases mémoires occupées par la matrice A de départ,
les termes de la diagonale de L (qui sont égaux à 1) n’étant pas sauvegardés.
La méthode de Crout est une méthode plus économique en temps de calcul que les méthodes d’élimination.
Cette méthode ne s’applique que sur les matrices carrées symétriques et définies positives. C’est-à-dire que
toutes ses valeurs propres sont réelles et strictement positives.
Soit donc une matrice A symétrique et définie positive. On considère le système linéaire suivant :
AX = B.
A = LLt
Comme dans le cas de la méthode précédente, nous sommes ramenés à la résolution de deux systèmes triangulaires
simples
LY = B
.
L t X = Y
Si on appelle lij les termes de la matrice L, alors par identification des termes de la matrice LLt aux termes de la
matrice A, on trouve :
√
l11 = a11
li1 = ai1 /l11 pour i = 2, . . . , n
Pj−1 2 1/2
ljj = ajj − k=1 ljk pour j = 2, . . . , n
Pj−1
lij = aij − k=1 lik ljk /ljj pour j = 2, . . . , n; i = j + 1, . . . , n
Si la matrice A est symétrique mais non définie positive alors il existe au moins un indice j tel que
j−1
!
X
2
ajj − ljk < 0.
k=1
Puisqu’il faut prendre la racine carrée de cette quantité pour calculer lij , il est impossible de continuer et l’algo-
rithme s’arrête. Au total, la résolution d’un système linéaire par la méthode de Cholesky nécessite n extractions
de racines carrées et de l’ordre de n3 /3 opérations arithmétiques.
Remarque II.4.3 Il est possible de savoir si un système AX = B est bien ou mal conditionné en connaissant
son conditionnement, défini par :
cond(A) = kAkkA−1 k
où k.k est une norme matricielle quelconque. On a toujours cond(A) > 1, et plus ce nombre est grand plus la
résolution du système est difficile.
Définition II.4.1 On définit le conditionnement d’une matrice A symétrique définie positive comme le rapport
entre la valeur maximale et la valeur minimale des ses valeurs propres :
λmax (A)
cond(A) = .
λmin (A)
L’idée des méthodes itératives est de construire une suite de vecteurs X (k) qui converge vers le vecteur X,
solution du système AX = B,
X = lim X (k)
k−→∞
L’intérêt des méthodes itératives, comparées aux méthodes directes, est d’être simples à programmer et de nécessiter
moins de place en mémoire. En revanche le temps de calcul est souvent plus long.
Une stratégie est de considérer la relation de récurrence linéaire
où G est la matrice d’itération de la méthode itérative (dépendant de A) et g est un vecteur (dépendant de
B), tels que
X = GX + g.
Étant X = A−1 B, on obtient g = (I − B)A−1 B ; la méthode itérative II.1 est donc complètement définie par la
matrice G.
En définissant l’erreur au pas k comme
e(k) = X − X (k)
On démontre que limk−→∞ e(k) = 0 pour tout e(0) (et donc pour tout X (0) ) si et seulement si ρ(G) < 1, où ρ(G)
est le rayon spectral de la matrice G, défini comme
On remarque que si les éléments diagonaux de A sont non nuls, le système linéaire AX = B est équivalent à
n
1 X
xi = bi − aij xj i = 1, . . . , n.
aii
j=1,j6=i
Et dans ce cas, on a
A=D−E−F
avec
+ D : matrice diagonale
dii = aii , dij = 0 ∀ i 6= j
J = D−1 (E + F ) = I − D−1 A.
On peut montrer que cette méthode converge si la matrice A est inversible à diagonale dominante i.e :
n
X
|aii | ≥ kaij k.
j=1;j6=i
Notons que l’algorithme de Jacobi nécessite le stockage des deux vecteurs X (k) et X (k+1) .
Remarque II.4.4 + En pratique, la strice dominance n’est pas indispensable. L’inégalité large suffit pour
la plus par des matrices inversibles.
+ Si A est une matrice symétrique définie positive, alors la méthode de Gauss-Seidel converge (la méthode
de Jacobi pas forcément).
Exemple II.4.3 Utiliser les deux méthodes itérative pour résoudre le système suivant :
1 −1/2 1/2 x1 5/2
1/2 1 0 x2 = −1/2 .
−1/2 −1/2 1 x3 2
II.5 Exercices
Exercice II.5.2 Soit A une matrice symétrique définie positive. On considère sa factorisation de Cholesky A =
BB t . Montrer que tous les éléments de la diagonale de B sont non nuls.
Exercice II.5.4 1. Soit A une matrice définie positive. Montrer que son déterminant est positif.
2. On considère la matrice A définie par :
2 −1 0
A = −1 2 −1 .
0 −1 2
Exercice II.5.5 Soient α et β deux réels. Considérons les matrices symétriques suivantes
2 α 0 1 β β
Aα = α 2 α et Cβ = β 1 β
0 α 2 β β 1
1. Pour quelles valeurs de α la matrice Aα est-elle définie positive ? Donner la décomposition de Chlesky de
la matrice Aα .
2. Pour quelles valeurs de β la matrice Cβ est-elle définie positive ?
3. Écrire la matrice Gα de l’itération de Gauss-Seidel. Pour quelles valeurs de α la méthode converge ?
4. Écrire la matrice Gβ de l’itération de Gauss-Seidel. Pour quelles valeurs de β la méthode converge ?
λmax (A)
cond(A) = .
λmin (A)
1. Rappeler une condition suffisante de convergence pour les méthodes de de GAUSS-SEIDEL. Rappeler une
autre condition suffisante de convergence pour la méthode de GAUSS-SEIDEL. Les des systèmes vérifient-ils
ces conditions ?
2. Écrire la méthode de GAUSS-SEIDEL pour ces deux systèmes linéaires.
3. On illustrera les résultats théoriques de convergence/non-convergence de ces deux schémas en prenant
comme point de départ le vecteur (x1 , x2 , x3 ) = (0, 0, 0) et en calculant les 3 premiers itérés avec la méthode
de GAUSS-SEIDEL pour les système.
INTERPOLATION LINEAIRE
III.1 Introduction
On considère une fonction de R dans R, dont on connait les valeurs yi qu’elle prend sur n + 1 abscisses xi ,
i = 0, . . . , n.
Le problème de l’interpolation polynômiale est de déterminer un polynôme de degré inférieur ou égal à n, qui
prend les valeurs yi sur les n + 1 abscisses xi . On considère le polynôme de degré inférieur ou égal à n :
P(x) = α0 + α1 x + α2 x2 + · · · + αi xi + · · · + αn xn .
Les n + 1 relations P(xi ) = yi forment alors un système linéaire non homogène d’ordre n + 1. Il est bien évident
que ce système s’écrit matriciellement sous la forme :
x0 xn−1 xn−2
n
0 0 . . . . . . x0 1 αn y0
xn xn−1 xn−2 . . . . . . x 1 α y
1 1 1 1 n−1 1
. .. .. .. .. . .
.
. . . . . .. = ..
.. .. .. .. .. .. ..
. . . . . . .
xnn xn−1
n xn−2
n . . . . . . xn 1 α0 yn
φi (x) = δji , i, j = 0, . . . , n
Théorème III.3.1 Le problème d’interpolation P(xi ) = f (xi ), i = 0, . . . , n admet une solution et une seule,
donnée par la formule III.1.
Exemple III.3.1 Trouver le polynôme d’interpolation de Lagrange pour les points suivants :
xi 2 3 -1 4
yi 1 -1 2 3
Principe
Les n + 1 polynômes définis par
N0 (x) = 1
N1 (x) = (x − x0 )
N2 (x) = (x − x0 )(x − x1 )
..
.
Nn (x) = (x − x0 )(x − x1 ) . . . (x − xn )
sont linéairement indépendants et forment une base de l’espace vectoriel des polynômes de degré inférieur ou égal
à n. Ces polynômes s’appellent polynômes de Newton. Dans cette base, un polynome P(x) s’écrit :
Si ce polynôme est le polynôme d’interpolation de f (x) i.e P(xi ) = f (xi ), alors il vient que les αi sont solutions
du système linéaire
1 0 0 ...... 0 α y
.. 0 0
1 (x − x ) 0
1 0 .
α1 y1
= .
...
. . .
. . . ..
. . .
1 (x − x0 ) . . . ... ((xn − x0 ) . . . (xn − xn−1 )) αn yn
Les coefficients αi peuvent être déterminés à l’aide des différences divisées de la fonction f au lieu de les
déterminer par la résolution du système ci-dessus.
+ On appelle différence divisée d’ordre 1 les quantités :
+ Par convention on appelle différence divisée d’ordre 0 la valeur des fonctions notée :
+ Par récurrence, on définie les différences divisées d’ordre p en fonction des différences divisées d’ordre p-1 :
On peut montrer la commutativité des arguments, la différence divisée est donc invariante sous l’effet d’une
permutation des abscisses.
On montre que
α0 = f (x0 )
α1 = f [x0 , x1 ]
αp = f [x0 , x1 , . . . , xp ], p = 2, . . . , n
Soit f une fonction réelle d’une variable réelle dont on connait les valeurs yi qu’elle prend sur n + 1 abscisses
distinctes xi .
Posons P(x) = a0 xp + a1 xp−1 + · · · + ap un polynôme de degré p avec p < n. Considérons le vecteur résidus
R(ri ) de composantes ri = yi − P(xi ) pour i = 0, . . . , n. On rappelle que la norme euclidienne sur Rn est la norme
notée φ2 et définie pour tout vecteur X = (xi ) par :
n
!1/2
X
φ2 (x) = |xi | .
i=0
n
!1/2 !1/2
X X 2
2
φ2 (R) = |ri | = (yi − P(xi )) .
i=0 i=0
Une condition nécessaire pour que cette fonction admette un extremum au point P = (ai ) est que :
∂D
(a0 , a1 , . . . , ap ) = 0 k = 0, . . . , p
∂ak
ce qui conduit aux équations
n
X n
X
P(xi )xip−k = yi xip−k , k = 0, . . . , n
i=0 i=0
ou encore
n
X n
X n
X
a0 xpi xp−k
i + · · · + ap xp−k
i = yi xip−k , k = 0, . . . , n.
i=0 i=0 i=0
Ces p + 1 équations forment un système linéaire non homogène qui s’écrit sous la forme matricielle P A = B
avec
Pn 2p Pn Pn Pn Pn
x2p−1 p+1 p p
i=0 xi i ... ... i=0 xi i=0 xi a0 i=0 xi yi
Pn 2p−1 Pi=0
n 2p−2 P n p Pn p−1 Pn p−1
i=0 xi x ... ... i=0 xi i=0 xi a1 i=0 xi yi
i=0 i
.. .. .. .. .
.
..
. . . . . .
.. .. .. .. .. ..
. . . . . .
P =
.. .. .. ..
A=
.
B=
.
.. ..
. . . .
.. .. .. .. .
..
..
. . . .
.
Pn Pn Pn Pn Pn
i=0 xp+1 xpi ... ... x2i i=0 xi ap−1 xi yi
Pn i p Pni=0 p−1 Pi=0 Pi=0
n n
i=0 xi i=0 xi ... ... i=0 xi n+1 ap i=0 yi
On montre que P est symétrique et définie positive donc le système admet une unique solution. Puisque la
matrice P est symétrique et définie positive, le système peut être résolu par la méthode de Cholesky. Toutefois,
il est préférable d’utiliser la méthode de Gauss avec pivot total, car cette méthode est en générale plus précise.
D’autre part, le degré p du polynôme P(x) ne doit pas dépasser 10 car le système précédent est très souvent mal
conditionné.
Exemple III.4.1 Trouver le polynôme d’approximation de degré 2 avec les moindres carrés pour les points sui-
vants :
Soit f une fonction réelle d’une variable réelle dont on connait les valeurs yi qu’elle prend sur n + 1 abscisses
distinctes xi .
L’approximation polynômiale, bien que très employée, ne peut pas rendre compte de toutes les approximations.
Nous généralisons au cas de l’approximation par une fonction quelconque g. La forme de la fonction g est choisie
à rpiori. Des constantes sont donc à déterminer, par exemple : si
g(x) = a0 x2 sin(a1 x + a2 )
ou encore
GA = Y.
Puisque généralement les dérivées partielles sont fonction des paramètres ak , il faut donc se donner des valeurs
initiales pour ak et recalculer de nouvelles valeurs par la résolution du système.
En général, le système GA = Y n’a pas de solution numériquement puisque la matrice G est à n + 1 lignes et
p + 1 colonnes et p peut être différent de n. En multipliant à gauche par la matrice transposée de G, on obtient :
Gt GA = Gt Y.
√
Exemple III.4.2 On se donne à priori g(x) = a0 x + a1 . Montrer que a0 = 2 et a1 = 1.
III.5 Exercices
1
Exercice III.5.1 Soit f (x) = 1+x 2 . Déterminer le polynôme d’interpolation de Lagrange pour les points d’appui
Exercice III.5.3 La mesure de la tension aux bornes d’un dipôle a donné les valeurs suivantes
t(s) 0 3 4
U(V) -8.0 4 20
On suppose que cette tension varie suffisamment lentement pour qu’on puisse l’approximer par un polynôme de
degré faible. Estimez à partir de ces données l’instant t ol̀a tension devrait atteindre son maximum, ainsi que la
tension U en ce maximum.
3. Quand cette erreur prend elle sa valeur maximale pour x dans [1; 4] ?
4. Que faire pour réduire cette erreur ?
EQUATIONS DIFFERENTIELLES
IV.1 Introduction
Ici f est une fonction continue par rapport à chacune de ses variables.
alors le problème de Cauchy (IV.1) admet une solution globale et elle est unique.
ti = a + ih, i = 0, 1, . . . , n
Soit y : [a, b] −→ R de classe C 1 et a = t0 , t1 , ..., tn = b, n + 1 nœuds équirépartis dans [a, b]. On note
h = (b − a)/n la distance entre deux nœuds consécutifs. La dérivée y 0 (ti ) est donnée par
y(ti + h) − y(ti )
y 0 (ti ) = lim
h→0+ h
y(ti ) − y(ti − h)
= lim
h→0+ h
y(ti − h) − y(ti + h)
= lim
h→0+ 2h
Soit maintenant (Dy)i une approximation de y 0 (ti ). On appelle
1. différence finie progressive l’approximation
y(ti+1 ) − y(ti)
(Dy)P
i = , ; i = 0, ..., n − 1;
h
2. différence finie rétrograde l’approximation
y(ti ) − y(ti−1 )
(Dy)R
i = ; i = 1, ..., n;
h
3. différence finie centrée l’approximation
y(ti+1 ) − y(ti−1 )
(Dy)C
i = ; i = 1, ..., n − 1.
2h
Si y ∈ C 2 (R), pour tout t ∈ R, il existe un η entre ti et t tel que l’on a le développement de Taylor
y 00 (η)
y(t) = y(ti ) + y 0 (ti )(t − ti ) + (t − ti )2
2
4. Pour t = ti+1 on obtient pour la différence finie progressive
0 h 00
(Dy)P
i = y (ti ) + y (η).
2
ce qui conduit à une estimation du type
|y 0 (ti ) − (Dy)P
i | ≤ Ch,
où C = 1
2 maxt∈[ti ,ti+1 ] |y 00 (t)|.
5. Pour t = ti−1 on obtient pour la différence finie retrograde
0 h 00
(Dy)R
i = y (ti ) − y (η),
2
ce qui conduit à une estimation du type
|y 0 (ti ) − (Dy)R
i | ≤ Ch,
où C = 1
2 maxt∈[ti−1 ,ti ] |y 00 (t)|.
6. Pour t = ti+1 et t = ti−1 avec un développement d’ordre 2 (si y ∈ C 3 )
on obtient
0 y 000 (η1 ) + y 000 (η2 ) 2
(Dy)C
i = y (ti ) + h ,
12
et donc l’estimation suivante
|y 0 (ti ) − (Dy)C 2
i | ≤ Ch |
où C = 1
6 maxt∈[ti+1 ,ti+1 ] |y 00 (t)|.
L’erreur de troncature est d’ordre 1 pour les formules progressive et retrograde et d’ordre 2 pour la formule
centrée.
Soient 0 = t0 < t1 < ... < tn < tn+1 < ... une suite de nombres réels equirépartis. On note h = tn+1 − tn .
On notera par
Les méthodes à un pas sont les méthodes de résolution numérique qui peuvent s’écrire sous la forme
Définition IV.3.1 . L’erreur de consistance en relative à une solution exacte y est l’erreur
On dit que la méthode est consistante si pour toute solution exacte y la somme des erreurs de consistance relatives
P
à y, soit n |en |, tend vers 0 quand hmax tend vers 0.‘
Une autre notion fondamentale est la notion de stabilité. dans la pratique, le calcul récurrent des points yn est
entaché d’erreurs d’arrondis n . Pour que les calculs soient significatifs, il est indispensable que la propagation de
ces erreurs reste contrôlable.
Définition IV.3.2 On dit que la méthode est stable s’il existe une constante S ≥ 0 telle que pour toutes suites
(yn ), (ỹn ) définies par
on ait !
X
max |ỹn − yn | ≤ S |ỹ0 − y0 | + |n |
n
n
Définition IV.3.3 On dit que la méthode est convergente si pour toute solution exacte y, la suite (yn ) vérifie
En utilisant la formule des trapèzes, on trouve le schéma implicite suivant, appelé schéma de Crank-Nicolson ou
du trapèze :
h
yn+1 − yn = (f (tn ; yn ) − f (tn+1 , yn+1 )) , ∀ n ≥ 0.
2
Ce schéma est implicite. En le modifiant afin de le rendre explicite, on identifie la méthode de Heun :
h
yn+1 − yn = (f (tn ; yn ) − f (tn+1 ; yn + hf (tn ; yn ))) .
2
Ce deux méthode sont d’ordre 2 par rapport à h.
Si on utilise la méthode du point milieu on trouve
yn+1 − yn = hf tn+ 12 , yn+ 12 .
1
yn+ 12 = yn + f (tn ; yn ),
2
Les méthodes de Heun et d’Euler modifée sont des cas particuliers dans la famille des méthodes de Runge-Kutta
d’ordre 2. Il existe d’autres méthodes plus compliquées, comme par exemple la méthode de Runge-Kutta d’ordre
4 suivante, qui est obtenue en considérant la méthode d’intégration de Simpson.
h
yn+1 = yn + (K1 + 2K2 + 2K3 + K4 ) ,
6
où les Ki son calculés comme suit :
K1 = f (tn ; yn )
h h
K2 = f (tn + ; yn + K1 )
2 2
h h
K3 = f (tn + ; yn + K2 )
2 2
K4 = f (tn+1 , yn + hK3 ).
Intégration numérique
V.1 Introduction
Rb
On souhaite disposer d’un moyen d’évaluer numériquement I(f ) = a f (t)dt où f est une fonction continue sur
un intervalle [a, b] avec a < b. En effet, dans de nombreuses applications, cette intégrale ne se ramène pas à des
fonctions simples, et même si c’est le cas, on cherche une méthode simple et utilisable dans le cas général. Pour
cela, nous chercherons une approximation de I(f ), notée J(f ) sous la forme
n
X
J(f ) = (b − a) ωi f (ξi )
i=0
Pn
où les points ξi sont dans l’intervalle [a − b] et i=0 ωi = 1. Les ξi sont appelés les points d’intégration et les
coeffcients ωi les poids d’intégration.
Définition V.1.1 . On dit qu’une méthode de quadrature est d’ordre N si la formule approchée est exacte pour
tout f ∈ PN et inexacte pour au moins un f ∈ PN +1 .
Pn
On observera que les formules sont toujours exactes pour f (x) = 1 à cause de l’hypothèse i=0 ωi = 1. Par
linéarité, elles sont donc exactes au moins pour f ∈ P0 .
V.2 Exemples
1. Un seul point. On choisit un seul point ξ ∈ [a, b] et on remplace f sur [a, b] par le polynôme de degré 0 :
p0 (x) = f (ξ). On a alors
Z b
f (x)dx ≈ (b − a)f (ξ).
a
Voici les choix plus courants :
(a) ξ = a : méthode des rectangles à gauche (ordre 0) ;
(b) ξ = b : méthode des rectangles à droite (ordre 0) ;
(c) ξ = (a + b)/2 : méthode du point milieu (ordre 1) ;
2. Interpolation linéaire. On choisit ξ0 = a et ξ1 = b et on remplace f sur [a, b] par la fonction linéaire p1 qui
interpole f aux points a, b :
(x − a)f (b) − (x − b)f (a)
p1 (x) =
b−a
On obtient la formule suivante, dite méthode des trapèzes (ordre 1) :
Z b
f (a) + f (b)
f (x)dx ≈ (b − a) .
a 2
Après changement de variable, les coeffcients ωi sont inchangés, donc on obtient la formule
Z b n
X
f (x)dx ≈ (b − a) ωi f (ξi ).
a i=0
Si n est pair, les formules sont donc encore exactes pour f (x) = xn+1 , et plus généralement pour f ∈ Pn+1
par linéarité. On démontre en fait le résultat suivant que nous admettrons :
Proposition V.2.1 Si n est pair, l’ordre de la méthode de Newton-Cotes de rang n est n + 1, si n est
impair, l’ordre est n.
Ceci fait que, hormis le cas n = 1, les méthodes de Newton-Cotes ne sont utilisées que pour n pair :
(a) n = 1 méthode des trapèzes (ordre 1)
1
ω0 = ω1 = .
2
(b) n = 2 méthode de Simpson (ordre 3)
1 2
ω0 = ω2 = , ω1 = .
6 3
(c) n = 4 méthode de Boole-Villarceau (ordre 5)
7 16 2
ω0 = ω4 = , ω1 = ω3 = , ω2 = .
90 45 15
(d) n = 6 méthode de Weddle-Hardy (ordre 7)
41 9 9 34
ω0 = ω6 = , ω1 = ω5 = , ω2 = ω4 = , ω3 = .
840 35 280 105
Pour n ≥ 8 il apparaı̂t des coeffcients ωi < 0, ce qui a pour effet de rendre les formules beaucoup plus
sensibles aux erreurs d’arrondis. Les méthodes de Newton-Cotes ne sont donc utilisées en pratique que
dans les 4 cas ci-dessus.
Théorème V.3.1 . On suppose que la méthode est d’ordre N ≥ 0. Si f est de classe C N +1 sur [a, b], alors
Z b n Z b
X 1
E(f ) = f (x)dx − (b − a) ωi f (ξi ) = KN (t)f N +1 (t)dt,
a i=0
N ! a
où KN est une fonction sur [a, b], appelée noyau de Peano associé à la méthode, défnie par
Exercice V.3.2 L’évolution de la concentration de certaines réactions chimiques au cours du temps peut être
décrite par l’équation différentielle
1
y 0 (t) = − y(t).
1 + t2
Sachant qu’à l’instant t = 0 la concentration est y(0) = 5, déterminer la concentration à t = 2 à l’aide de la
méthode d’EULER implicite avec un pas h = 0.5.
Exercice V.3.3 On dispose de n + 1 points (xi ; yi ), i = 0,...,n. On suppose x0 < x1 < xn . On construit f
fonction d’interpolation entre x0 et xn tel que les points (xi ; yi ) soient reliés entre eux par des droites. Exprimer f
sur [x0 ; xn ].
par la formule des trapèzes (cas n = 1 des formules de Newton-Cotes fermé). On approxime ainsi cette intégrale
par la formule de quadrature suivante
(1)
(b − a) w0 f (a) + w1 (1)f (b)
avec Z b
(1) 1
wi = li (x)dx
b−a a
et li (x), polynôme de Lagrange nécessaire pour l’interpolation.
Calculer les poids w0 (1) et w1 (1)
Exercice V.3.6 1. Vérifier que la formule d’intégration numérique suivante est exacte pour des polynômes
φ: Z 1
1 1
φ(x)dx = φ − +φ .
−1 3 3
Quel est le degré maximum des polynômes φ pour que cela soit vrai ?
2. Vérifier que la formule d’intégration numérique suivante :
Z 1
2 1 1
φ(x)dx = 2 φ − +φ − φ(0)
−1 3 2 2
Exercice V.3.7 1. Écrire le polynôme d’interpolation de Lagrange P (x) d’une fonction f construite sur les
points :
−1, − 31 , 13 , 1.
2. Par intégration du polynôme obtenu, déduire la formule d’intégration approchée suivante :
Z 1
1 3 −1 3 1 1
f (x)dx ≈ f (−1) + f + f + f (1) .
−1 4 4 3 4 3 4