27
ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

  • Upload
    gy-bour

  • View
    115

  • Download
    4

Embed Size (px)

Citation preview

Page 1: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ASI 3

Méthodes numériquespour l’ingénieur

Résolution de systèmes linéaires par des méthodes itératives :

Jacobi, Gauss Seidel, relaxation

Page 2: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Résoudre un système linéaire

6 2

8 2 3

0 3

6242

432

4321

421

321

xxx

xxxx

xxx

xxx

bAx

ii

n

ijjjiji

i a

xab

x

xxx

xxxx

xxx

xxx

AAdistbxA

xxxx

,1

324

4213

412

321

4321

~

soit

1

~2~61

~2~~38

3

~~0

2

~2~46

:essayait on si

~, exemplepar avec

~~~ que imaginons

solution presque"" une ~,~,~,~soit

Page 3: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Résoudre un système linéaire en itérant

ii

n

ijjjiji

i a

xab

x

xxx

xxxx

xxx

xxx

,1

324

4213

412

321

~

soit

1

~2~61

~2~~38

3

~~0

2

~2~46

Si Ax n’est pas encore égale à b, on recommence !

fin

)10 ( ),( quetant

,1

old

new

12-

ii

n

ijjjiji

i

new

a

xab

x

i.e.bAxdist

Page 4: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Osons itérer ! méthode de Jacobi

fin

)10 ( ),( quetant

,1

old

new

12-

ii

n

ijjjiji

i

new

a

xab

x

i.e.bAxdist

Soit D la diagonale de la matrice A, et G le reste :A = D+G

old1newoldnew

1,1

,11,

,,11,1

,121

111211

0

0

0

0

0

0000

0000

0000

0000

0000

GxbDxGxbDx

aaa

aa

aaaa

aa

aaa

G

a

a

a

D

nnnin

nnii

niiiiii

ii

ni

nn

ii

Page 5: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

6 2

8 2 3

0 3

6242

432

4321

421

321

xxx

xxxx

xxx

xxx

bAx

ii

n

ijjij

i

jjiji

i a

xaxab

x

xxx

xxxx

xxx

xxx

1

1

1

324

4213

412

321

~

soit

1

261

~238

3

~0

2

~2~46

Gauss Seidel

Page 6: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

méthode de Gauss-Seidel

fin

)10 ( ),( quetant

1

old1

1

new

new

12-

ii

n

ijjij

i

jjiji

i

new

a

xaxab

x

i.e.bAxdist

Soit E la triangulaire inférieure et F la supérieure de la matrice A :A = D+E+F

old1newoldnew

,1

,,1

,1

1112

1,1

1,

1,1

21

0000

00

000

00

0

0

00

000

00

0000

FxbEDxFxbxED

a

aa

a

aaa

F

aaa

a

aa

a

E

nn

niii

ii

ni

nnnin

ii

iii

Page 7: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

La relaxation

relaxation de paramètre:0

)1(

oldnewnew

r

oldnew

xxx

xx

tionextrapolla :2,1

quo status :1

tioninterpolla :1,0

old

oldold1

old

oldold1

1

1

1

par t multiplianen

1

xFDbxED

xFxbEDx

xGDbDx

D

xGxbDx

newr

newr

newr

newr

old1new

old1new

: SeidelGauss

)( :Jacobi

FxbEDx

xFEbDx

Page 8: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Résumé « algorithmique »

FDN

EDMxFDbxED

R

FN

EDMFxbxED

FEN

DMxFEbDx

bNxMx

1

1old1new1

oldnew

oldnew

oldnew

:

:elaxation

:

: SeidelGauss

:)(

:Jacobi

Page 9: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ConvergencePrincipes généraux

dxCI

xx

C

dCxx

xkk

*

*

0

1

0

: desolution la vers pour tout converge dessusci algorithmel' Alors

1 que telleesubordonné ematriciell norme une existe ilS':

donné,

Théorème

Éléments de démonstration- x* est un point fixe de l’algorithme-

0 ,1 si

* C *

*

00

1

011

k

kkkk

k

kkkk

kk

CCeCeCexxC

eCeedCxdCxxxe

Page 10: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ini

n

ii

n

i

pi

pp

n

ii

n

xxxxpxxxx

REynxnyxn

xnxn

xxn

xn

xnx

REn

,111

11

222

sup ; ; )1( ;

; exemples

)()()(

)()(

00)(

positivité 0)(

iant vérif)(

::norme

Normes matricielles

DéfinitionSoit A une matrice nxm, étant donnée une norme vectorielle,on appelle norme matricielle subordonnée, la norme matricielledéfinie par :

x

AxA

xRx n 0,max

xAxAx ~ ~:max ceest ~ Conséquence :

Page 11: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

x

Ax

Exemples

'

; max ; max

; tr :Frobénius de norme

1

11111

1

2

1

2

AA

aAaA

A'AaA

m

jij

ni

n

iij

mj

n

iij

m

jF

AxAxRx n 1,

max

Illustration 2d

12 x

x1

x2 x2

Ax

x1

2A

à utiliser pour le calcul !

Page 12: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Calculez les valeurs propres de

111

110

201

Et ses vecteurs propres ?

,31,31,1 321 ii

1

,

1

,

0

1

1

3

33

32

33

33

32

21

i

i

i

i

vvv

Page 13: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Rayon spectrale d’une matriceDéfinition : on appelle rayon spectrale d’une matrice carrée A, le nombre réel (A) tel que :

)(max,1

AA ini

Théorème : soit A une matrice nxm, alors :

AAA '22

Corollaire : si A est une matrice carrée symétrique nxn, alors :

AA 2

Remarque : en général, le rayon spectrale n’est pas une norme :

0,01 , 00

102

AAA

Page 14: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Convergence : le retourPrincipes généraux

dxCI

xx

C

dCxx

xkk

*

*

0

1

0

: desolution la vers pour tout converge dessusci algorithmel' Alors

1 que telleesubordonné ematriciell norme une existe ilS':

donné,

Théorème

Théorème : les points suivants sont équivalents : • C est une matrice convergente, (i.e. Ck tend vers 0)• (C)<1• 1C

Page 15: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Résumé « algorithmique »

FDN

EDMxFDbxED

R

FN

EDMFxbxED

FEN

DMxFEbDx

bNxMx

1

1old1new1

oldnew

oldnew

oldnew

:

:elaxation

:

: SeidelGauss

:)(

:Jacobi

Page 16: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Convergence

Théorème : Si A est une matrice à diagonale strictement dominante, alors la méthode de Jacobi converge.

Démonstration

11

max)(

, )( avec

)( :Jacobi

1,1

1

11k1k

k11k

n

jij

iinia

aFEDC

bDdFEDCdCxx

xFEbDx

Remarque : il en est de même pour la méthode de Gauss-Seidel

Page 17: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ConvergenceThéorème : soit une méthode itérative : Si A est une matrice symétrique définie positive telle que si A = M-N alors M+N’ est définie positive

Alors la méthode itérative est convergente

Démonstration

1max : donc aon

''''''

'''''

posons

' positive définie symétrique

1

1,

1221

22

2221

1

212121

2

AxxAAA

AA

AAA

AAA

A

NxMNMxAxMx

yNMyxAyyMyyyMyx

AyyAxyAyxxAyxAyxyxAxMx

AxMyAxMy

AxMxxAMMNxM

AxxxA

A

Théorème : Si A est une matrice symétrique définie positive, la méthode de la relaxation converge pour :

k1k bNxMx

20

Page 18: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

0 2

1

rayo

n sp

ectr

alrayon spectral de la matrice M-1N

Influence de w

Page 19: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Remarques

pratique :

• pas de preuve de convergence généralisée,

• on préfère la relaxation avec différents tests pour

• on préfère les méthodes directes,

• voir les méthodes semi directes pour les problèmes de grande taille (cf les méthodes « multigrilles »),

Page 20: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Conditionnement d’un système linéaire

2et 0002.0

0002.0 0

00

0

3

1

1

solutionsdeux examinons

3

3

20001.1

21

2

1

2

1

2

1

yxrr

bAyr

bAxr

y

yy

x

xx

x

xbAx

yx

Ty

Tx

Deux vecteurs très différents donnent des solutions très proches

x2

x11

1

3

Page 21: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Conditionnement : influence du second membre

7363)(:007.0,1.24

6.22 10 7.3 :

0.26

6.5

0.11

5.34

,

9.22

1.28

9.12

1.38

1

1

1

1

solution commeadmet ,

23

28

13

38

,

7187

74107

1651

1010108

41

3

Acond

x

x

b

bxxbb

xbA

~

singulièrenon ~ ~

)(~ avec ~

1

1

rAxx

ArAxxxxA

xxxxAAx

bbbr

Page 22: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

ConditionnementDéfinition : on appelle conditionnement d’une matrice carrée A, relatif à une norme subordonnée, le nombre réel (A) :

1 AAA

Remarque : 1 11 AAAAAI

Théorème : Si A est une matrice carrée, non singulière (régulière)

b

bA

x

x

bbxxAbAx

,

A

AA

xx

x

bxxAAbAx

,

Perturbation du second membre Perturbation de la matrice

Un problème est dit « bien conditionné » si (A) est proche de 1,

il est dit « mal conditionné » si (A) est grand (et mal posé si (A) est infini)

Page 23: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Conditionnement

b

bAA

x

x

bAxxAbbbxxA

bA

xxAbbAx

1

1

)2 )1

)2

11

)1

1 AAA

Remarque : si A est symétrique, si on note ses valeurs propres i

1

2

22

1

121

doncet

1

,,...,,...,,

n

nni

A

AA

Dans l ’exemple, 22.5) trouvéa(on 2.27 de ordrel' deest erreur l' de borne la

0037.0,7363

2

2

bA

bA

Page 24: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Comment améliorer le conditionnement ?

Ajouter un « chouia » sur la diagonale

1

2 nIA

Page 25: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

Itérations !A = randn(n);b= ones(n,1);x = A\b;err = A*x-b; norm(err)

ans = 2.8246e-013

dx = A\err;

err2 = A*(x-dx)-b;norm(err2)

ans = 6.4789e-014

xAbbxA

bxxA

bxAerr

bAgaussx

bAx

~~

~

~),(~

Page 26: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

TP - la relaxationLe but du TP est d’écrire un programme matlab résolvant un système linéaire par la méthode de la relaxation

x = relax(A,b,w,nite,err)

Pour ce faire, il faut étudier l’évolution du rayon spectal

- mettez vous par binôme- rédigez une page : recto : ce que vous avez fait verso ce que vous en pensez- a rendre pour le 8 décembre à 17h30 (publication du corrigé)

Indices : créer un problème test,

les fonction cputime et flops tril et triu pourraient vous simplifier la vie et diag(diag()) et eig aussi

defonction en 1 NM

Page 27: ASI 3 Méthodes numériques pour l’ingénieur Résolution de systèmes linéaires par des méthodes itératives : Jacobi, Gauss Seidel, relaxation

PropriétésDéfinition : on appelle quotient de Rayleigh la fonction qA(x)

xxAxx

xqA ''

)(

Théorème : si A est symétrique,

)(maxmax xqAx

ii

i est une valeur propre de A, vi est un vecteur propre de A.

iii vvA

Soit A une matrice carrée, on appelle polynôme caractéristique de A le polynôme défini par :

IAp det)(

Les n racines i de ce polynôme sont les valeurs propres de A, vi est un vecteur propre de A. Il existe n vecteurs vi tels que :