• Aucun résultat trouvé

Analyse Numérique

N/A
N/A
Protected

Academic year: 2022

Partager "Analyse Numérique"

Copied!
71
0
0

Texte intégral

(1)

Cours du module

Analyse Numérique

SMAI S4

www.al3abkari-pro.com

(2)

1 Résolution de systèmes linéaires Méthode direct 3

1.1 Position du problème : . . . . 3

1.2 Méthode de Gauss . . . . 5

1.2.1 Elimination de Gauss sur un exemple : . . . . 5

1.2.2 Algorithme d’élimination . . . . 7

1.2.3 Matrice élémentaire de Gauss . . . . 8

1.2.4 Elimination da Gauss avec changement de Pivot . . . 10

1.2.5 Méthode de Gauss avec pivot total . . . 13

1.2.6 Factorisation LU . . . 13

1.3 Méthode de Choleski . . . 16

1.3.1 Description de la méthode . . . 17

1.3.2 Théorème : Décomposition de Choleski . . . 18

2 Méthodes itératives pour la résolution des systèmes linéaires 22 2.1 Rappels : normes, rayon spectral . . . 22

2.2 Méthodes itératives : . . . 26

2.2.1 Définitions et propriétés . . . 26

2.3 Description des méithodes classiques . . . 29

www.al3abkari-pro.com

(3)

3.1 Rappels et notations : . . . 33

3.2 Méthode de Newton et méthode de la corde . . . 39

3.2.1 Méthode de Newton (ou Newton-Raphson) : . . . 39

3.3 Méthode de dichotomie : . . . 43

3.4 Méthode de la fausse position (Fegula Falsi) . . . 45

4 Problèmes d’interpolation 47 4.1 Position du problème : . . . 47

4.2 Interpolation de LAGRANGE . . . 48

4.3 Interpolation d’une fonction continue par un polynôme . . . 50

4.4 Existance et unicité de l’interpolant . . . 51

5 Dérivation et intégration numérique 58 5.1 Dérivation numérique . . . 58

5.1.1 Dérivée première : . . . 58

5.1.2 Dérivées d’ordre supérieure : . . . 60

5.2 Intégration numérique. . . 60

5.3 Poids d’une formule de quadrature. . . 65

www.al3abkari-pro.com

(4)

Résolution de systèmes linéaires Méthode direct

1.1 Position du problème :

Dans ce chapitre, nous considérons un système d’équations linéaires d’ordre n de la forme

Ax=b (1.1)

Ici A est une n×n matrice régulière de coefficients ai j, 1 i, jn, donnés, b est un vecteur colonne à n composantes bj, 1 jn, données et x est un vecteur colonne à n composantes xj, 1 jn, inconnues. Dans la suite, nous utiliserons les notations matricielles standards, i.e

a1,1 a1,2 . . . a1,n

a2,1 a2,2 . . . a2,n

. . .

. . .

. . .

an,1 an,2 . . . an,n

, b =

b1 b2 . . . bn

, b=

x1 x2 . . . xn

Le système (4.1) peut s’écrire explicitement sous forme d’un système de n équations à n inconnues x1,x2, ...,xn:

2/2015

www.al3abkari-pro.com

(5)

a1,1x1+a1,2x2+...+a1,nxn=b1 a2,1x1+a2,2x2+...+a2,nxn=b2

. . .

an,1x1+an,2x2+...+an,nxn=bn

(1.2).

Définition 1.1 : On dira que la matrice A est triangulaire supérieure (respectivement triangulaire inférieure) siai j=0pour tout couple

(i,j) tel que 1 j<in (respectivement 1 i < jn).

Définition 1.2 : Si A est une matrice triangulaire supérieure (respect. triangulaire inférieure), on dira que les systèmes (1.1)et

(1.2) sont triangulaires supérieurs (resp. triangulaire inférieurs).

Supposons un instant que la matrice Asoit triangulaire supérieure nous constatons alors que le déterminant de la matrice A est le produit des valeurs diagonales aii et, puisque A est supposée régulière ; nous avonsaii6=0, 1 in. Ainsi, quitte à diviser chaque équation de (1.2) par le terme de la diagonale, il n’est pas restrictif de supposer que aii=1, 1 in. Dans ce cas, la matrice est une matrice triangulaire avec des valeurs 1 dans sa diagonale et, de

(1.2), nous déduisons successivement les inconnues xn,xn1, ...,x1.

En effet, nous avons :

xn=bn/an,n

et pour i =n1,n2, ....3, 2, 1 :

xi=bi/aiinj=i+1(ai jxj)/aii.

www.al3abkari-pro.com

(6)

Dans le cas où la matrice A est régulière mais non nécessairement triangulaire supérieure, la méthode d’élimination de Gauss aura pour but de transformer le système Ax=b en un système équivalent triangulaire supérieure avec des valeurs 1 sur la diagonale.

1.2 Méthode de Gauss

1.2.1 Elimination de Gauss sur un exemple :

Soit le système linéaire c est une matrice triangulaire :

A =

4 8 12 3 8 13 2 9 18

et b =

4 5 11

(1.3)

Le système Ax=b devient dans ce cas :

4x1+8x2+12x3=4 3x1+8x2+13x3=5 2x1+9x2+18x3=11

(1.4)

Première étape,

ça consiste à diviser la première équation de (1.4) par a11=4

(appelé pivot) pour obtenir :

x1+2x2+3x3=1. (1.5)

Ensuite nous soustrayons 3 fois (1.5) à la deuxième équation de (1.4) et 2 fois l’équation (1.5) à la troisième équation de (1.4) :

Nous obtenons un système équivalent à (1.4) qui est

www.al3abkari-pro.com

(7)

x1+2x2+3x3=1 2x2+4x3=2 5x2+12x3=9

(1.6)

Deuxième étape,

nous divisons la deuxième équation (1.6) par 2 (le deuxième pivot). Nous obtenons :

x2+2x3=1 (1.7)

Et par la suite :

x1+2x2+3x3=1 x2+2x3=1

2x3=4

(1.8)

qui est équivalent au système (1.4).

Dernière étape,

finalement, il suffit de diviser la troisième équation par le troisième pivot, qui est ici 2, pour obtenir :

x1+2x2+3x3=1 x2+2x3=1

x3=2

(1.9)

De (1.9) , il est facile de déduire successivement les inconnues

x1,x2,x3 :

x3=2 x2=3 x1=1.

www.al3abkari-pro.com

(8)

1.2.2 Algorithme d’élimination

Nous présentons maintenant un algorithme qui, effectué par un ordinateur, permet de réaliser l’élimination dont, le mécanisme a été décrit dans la section précédente. Pour réaliser cet objectif, nous appelons A(i)la matrice et b(i) le second membre obtenus avant la ieme` étape de l’élimination. Ainsi le tableau A(i)a la forme suivante :

A(i) =

a(111) a(121) a(131) a(141) . . . a(1i1) . . . a(1n1)

0 a(222) a(232) a(242) . . . a(2i2) a(2n2)

0 0 a(333) a(343) a(3i3) a(3n3)

0 0 0 a(444) a(4i4) a(4n4)

0 0 0 0 . .

0 0 . .

.a(ii1,i1)1 .

0 a(iii) a(ini)

. .

. .

. .

0 a(nii) a(nni)

,(1.10)

Avec A(1)= A, et Ax =b

La ieme` étape de l’élimination consistera à passer du tableau

A(i) au tableau A(i+1) et du tableau b(i+1) par opération suivante :

ieme` étape. Nous divisons la ieme` ligne de A(i) par le ieme` pivot a(iii) (supposé différent de zéro), puis on remplace la ligne L(ji+1) par la ligne

L(ji+1)=L(ji)mjiL(ii), j=i+1,i+2, ...,n ou,` mji = a(jij)/a(iii) (1.11)

Nous faisons de même avec le second membre :

b(i+1)

j0 =b(ii)mjib(ii) (1.12)

www.al3abkari-pro.com

(9)

1.2.3 Matrice élémentaire de Gauss

Soient les matrices élémentaires de Gauss

M1=

1 0 0

m21 1 0

m31 0 1 .

. . .

. . . 0

mn1 0 0 1

,

kieme colonne`

Mk =

1 0 0 0

0 . . .

0 . . .

. . 0 . .

. 1 . . .

. mk+1,k .1 .

. . . . .

. . . 0 .

. . 1 0

0 mn,k 0 0 1

←−−−−−−−−−

ki`

mi,k=a

(k) ik

a(k)kk i=k+1,k+2, ...,nen supposant quea(kkk) 6=0,

En posantek= (0, ..., 1, 0, ..., 0)Tetmk= (0, 0, ...,mk+1,k, ....,mn,k)T,on obtient

Mk= I+mkeTk et on vérifie que Mk est inversible et queMk1= ImkekT

24/2015 eme ligne (1.13)

www.al3abkari-pro.com

(10)

Remarque : Matriciellement, dans l’algorithme d’élimination la première étape est équivalente au produit matriciel A(2)= M1A(1).

L’étape finale est alors donnée par :

A(n)=U = Mn1Mn2...M2M1A(1),A(1) = A.

Evidemment, l’étape finale n’est accessible par ce procédé que si tous les pivotsa(iii) sont tous non nuls.

Définition : 1.3 : Ak est la sous matrice principale d’ordre k de A si Ak est lak×kmatrice de coefficientai j, 1i,j kn.

Nous avons le résultat suivant.

Théorème1 : Si toutes les sous-matrices principales Ak de la matrice de départ A sont régulières, k=1, 2, ...,n, alors les pivots obtenus successivement dans l’élimination de Gauss sont tous non nuls. Inversement si tous les pivots obtenus au cours de l’élimination de Gauss sont non nuls, alors toutes les sous-matrices principales de A sont régulières.

detAi=a(111)×a(222)×...×a(iii) (1.14)

Il est également facile de vérifier que les opérations faites sur la matrice Aimpliquent, si Ai est la sous-matrice principale d’ordre

i de A :

www.al3abkari-pro.com

(11)

detA1=detA(11) detA2=a(111)detA(22) detA3=a(111)a(222)detA(33) .

. .

detAi=a(111)a(222)...a(ii1,i1)1detA(ii) .

. .

(1.15)

Nous concluons de (1.14) et (1.15) que si detAi 6= 0 pour tout

i =1, 2, ...n alors les valeurs a(111),a(222), ...a(ii1,i1)1, ..,a(nnn)sont non nulles.

1.2.4 Elimination da Gauss avec changement de Pivot

Comme nous venons de le voir, l’algorithme d’élimination donné dans la section précédente ne peut être exécuté que si les pivots successifs sont non nuls, c’est à dire si toutes les sous- matrices principales de A sont régulières. Il est évident qu’il est impossible de traiter par cet algorithme le système suivant :

0x1+x2+3x3=1 5x1+2x2+3x3=4

6x1+8x2+x3=1

(1.16)

Car, dans ce cas, on ne peut pas diviser la première ligne par le premier pivot qui est nul (la première sous-matrice principale est donc singulière !). On voit immédiatement que les choses se présentent mieux si on échange la première et la troisième ligne pour obtenir

www.al3abkari-pro.com

(12)

6x1+8x2+x3=1 5x1+2x2+3x3=4

0x1+x2+3x3=1

(1.17)

En effet, maintenant nous pouvons diviser la première ligne par le pivot 6.

Cette manière de faire s’appelle” pivotage partiel” ; elle consiste à échanger deux équations dont le but d’avoir le plus grand pivot possible en valeur absolue.

Le problème peut se poser même avec un pivot trop petit.

Pour éviter de diviser par des pivots trop petits pouvant conduire à des solutions absurdes.

Exemple : soit à résoudre le système

1010x1+x2=1 x1x2=0

;

La solution exact estx1=x2=1/(1+1010)'1.

Cependant, si on suppose que les calculs sont effectués en virgule flottante, avec mantisse à 9 chiffres, la résolution du système par la méthode de Gauss donne des résultats différents selon qu’on l’applique avec ou sans pivot

(i) Si on applique la méthode de Gauss sans pivot on obtient

m21=1010 et

1010x1+x2=1 (−11010)x2=1010

Ce qui donne x1'0,x2'1 à cause des arrondis des résultats avec neuf premiers chiffres significatifs.

(ii) Si on adopte la stratégie du pivot partiel qui consiste à mettre en première ligne celle dont le coefficient de x

1 est le plus grand en module alors on permute les lignes pour obtenir

www.al3abkari-pro.com

(13)

x1x2=0 1010x1+x2=1

Pour lequel m21=1010 et qui conduit à la solution approchée

x2'1 et x1=x2.

En conclusion, on peut adopter automatiquement la stratégie du pivot partiel, c’est à dire à chaque étape k :

choisir a(iii)=maxki

a(kik)

.

Matriciellement, cette opération revient à multiplier la matrice

A(i) par une matrice de permutationPkl avant d’appliquer l’élimination de Gauss. L’étape finale est données par A(n)=U= Mn1Pi1iMn2...M2P2iM1P1iA

où les Mi sont des matrices élémentaires de Gauss et les Pkl des matrices de permutations (elle échange les lignes k et l) pour

lk.

Si à une étape k on n’a pas besoin de pivoter, l’écriture reste valable avec Pkl= II est la matrice identité.

k... l

Pkl=

1 0 0

0 1 0

0 0 1 0

0 0 1 0

.. . . . Pkk =0 1 . Pkl =1 . .

0 0

. 1

Plk =1 Pll =0 . .

0 1

←−−−−−−−−−

kieme ligne` (1.18)

Remarque : PklA échange les lignes k et l alors que APkl échange les colonnes k et l. on a encore :Pkl= Pkl1=PTkl.

www.al3abkari-pro.com

(14)

Définition 1.4 : Une matrice de permutation est un produit de matrices de permutation.

1.2.5 Méthode de Gauss avec pivot total

On pourrait aussi adopter la stratégie du pivot total qui consiste, à chaque étape k, à prendre a(iii)=maxk>i,j>i

a(k ji)

. Ce qui reviendrait à multiplier la matrice A(i) par deux matrices, de permutation

P et Q l’une à droite pour permuter les lignes et l’autre pour permuter les colonnes.

1.2.6 Factorisation LU

Tout va donc très bien pour ce système, mais supposons qu’on ait à résoudre 3089 systèmes avec la même matrice A mais 3089 seconds membresb différents (par exemple on peut vouloir calculer la réponse d’une structure de génie civil à 3089 changements

différents). Il serait un peu dommage de recommencer les opérations ci-dessous 3089 fois, alors qu’on peut en éviter une bonne partie.

Comment faire ?

L’idée est de ”factoriser” la matrice A , c’est à dire comme un produit A= LU,L est triangulaire inférieure et U triangulaire supérieure.

On reformule alors le système Ax =b sous forme LUx=b et on

résout maintenant deux systèmes faciles à résoudre car triangulaires

Ly =b et Ux =y.

La factorisation LU de la matrice A découle immédiatement de l’algorithme de Gauss.

www.al3abkari-pro.com

(15)

Théorème : Décomposition LU d’une matrice Soit A Mn(IR)

une matrice inversible, il existe une matrice de permutation P telle que, pour cette matrice de permutation, il existe un et un seul couple (L,U)L est une matrice triangulaire inférieure de termes diagonaux tous égaux à 1 etU est une matrice triangulaire supérieure, vérifiant

PM= LU

*Preuve : L’existence de la matrice P et les matrices L,U peut s’effectuer en s’inspirant de l’algorithme ”LUavec pivot partiel”.

En effet, chaque étapeipeut s’écrire A(i)=Mi1P(i1)A(i1)A(1)= A,P(i1) est la matrice de permutation qui permet le choix du pivot

partiel, et Mi1 est une matrice élémentaire de Gauss (matrice d’élimination qui effectue les combinaisons linéaires de lignes permettant de mettre à zéro tous les coefficients de la colonne

i situés en dessous de la ligne i. Pour simplifier, raisonnons sur une matrice 4×4 (le raisonnement est le même pour une matrice

n×n.

En appliquant l’algorithme

M3P(3)M2P(2)M1P(1)A=U

Les matricesP(i+1) etMi+1 ne permutent pas .Prenons par exemple

M(2)=

1 0 0 0

0 1 0 0

0 a 1 0

0 b 0 1

P(3)=P34=

1 0 0 0

0 1 0 0

0 0 0 1

0 0 1 0

www.al3abkari-pro.com

(16)

On vérifie facilement que M2P(2)6= P(2)M2,mais par contre, comme la multiplication à gauche par P(i+1) permute les lignes i+1 et i+k, pour k1 et que la multiplication à droite permute les colonnes

i+1 et i+kdeMi, La matrice Mi=P(i+1)MiP(i+1) est encore une matrice triangulaire inférieure avec la même structure que Mi : On a juste échangé les coefficients extra diagonaux des lignes i+1 et

i+k. On a donc

P(i+1)Mi=

MiP(i+1) car P(i+1).P(i+1)= I.

Dans l’exemple précédent, on effectue le calcul

P(3)M2P(3)=

1 0 0 0

0 1 0 0

0 b 1 0

0 a 0 1

=

M2

qui est une matrice triangulaire inférieure de coefficient tous égaux à 1, et comme P(3)P(3)= I, on donc

P(3)M2=

M2P(3)

Pour revenir à notre exemple où n=4 on peut donc écrire

M3

M2P(3)

M1P(2)P(1)A=U

Mais par le même raisonnement que précédemment, on P(3)M1=

M1P(3)

M1 est encore une matrice triangulaire inférieure avec des 1 sur la diagonale. On en déduit que

M3M2

M1P(3)P(2)P(1)A=U,

www.al3abkari-pro.com

(17)

soit encorePA =LUP= P(3)P(2)P(1) est bien une matrice de permutation et L= (M3

M2

M1)1 est une matrice triangulaire inférieure avec des 1 sur la diagonale.

Le raisonnement pour n=4 se généralise facilement à n arbitraire.

Dans ce cas, l’échelonnement de la matrice s’écrit

Mn1P(n1)Mn2P(n2)...M2P(2)M1P(1)A=U

Et se transforme en

Fn1Fn1...F1P(n1)P(n2)...P(1)A =U

Fi est une matrice triangulaire inférieure avec des 1 sur la diagonale.

On a ainsi démontré l’existence.

2. Unicité : Pour montrer l’unicité du couple (L,U) à P donnée, supposons qu’il existe une matrice P et des matrices L1 et L2 triangulaires inférieures et U1 U2 triangulaires supérieures telles que PA= L1U1 = L2U2.

Dans ce cas, on a L21L1 =U2U11,or la matrice L21L1est une matrice triangulaire inférieure avec des 1 sur la diagonale, et la matrice

U2U11 triangulaire supérieure, on en déduit que L21L1 = U2U11 = I

et donc L1= L2 et U1=U2.

1.3 Méthode de Choleski

On va maintenant étudier la méthode de Choleski, qui est une méthode directe adaptée au cas où la matrice A est symétrique définie positive (s.d.p). On rappelle qu’une matrice A Mn(IR) de coefficients (ai j)ni,j=1est symétrique si AT=A, où AT désigne la

www.al3abkari-pro.com

Références

Documents relatifs

Bousculé, apostrophé, harcelé, l'auditeur ne sait plus si le bulletin météorologique qui annonce la neige a trait à la journée d'hier ou à celle de demain ; et il se retrouve en

Une première méthode de résolution de ce système consiste à lui appliquer l’algorithme du pivot de Gauss : en utilisant des “pivots”, on effectue des opérations sur les lignes

11-2 Elaborer les documents climatologiques 11-3 Valider les données saisies. 11-4 Archiver la donnée climatologique 11-5 Réaliser un produit climatologique 11-6 Livrer le

No utilizar este asiento si falta alguna pieza o hay piezas rotas, y utilice solamente piezas de recambio autorizadas por Maisons du Monde.. Recomendaciones de limpieza

(f) Comptez le nombre d’op´ erations ´ el´ ementaires (i.e. additions, soustractions, multliplications, divisions) n´ ecessaires pour calculer la d´ ecomposition LU de M..

Ainsi, l’existence d’une factorisation LU poss´edant les propri´et´es ´enonc´ees dans le th´eor`eme est donc ´etablie, puisque toutes les matrices P (k) ont pu ˆetre

Dans cette partie, on suppose que A admet une décomposition LU et on voit comment mettre en œuvre une méthode pratique de calcul des matrices L

Cette décomposition fait apparaître, en plus d’une matrice triangulaire inférieure de coefficients dia- gonaux tous égaux à 1 et d’une matrice triangulaire supérieure, une