0% ont trouvé ce document utile (0 vote)
257 vues8 pages

TD2 Corr

Ce document présente les exercices d'un TD d'analyse numérique matricielle. Il contient 4 exercices portant sur l'inversion de matrices par la méthode du pivot de Gauss, les matrices à diagonale strictement dominante, la résolution numérique d'EDO et la décomposition LU.

Transféré par

anh thu Tran
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
257 vues8 pages

TD2 Corr

Ce document présente les exercices d'un TD d'analyse numérique matricielle. Il contient 4 exercices portant sur l'inversion de matrices par la méthode du pivot de Gauss, les matrices à diagonale strictement dominante, la résolution numérique d'EDO et la décomposition LU.

Transféré par

anh thu Tran
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Sorbonne Université Année universitaire 2021–2022

Faculté des Sciences et Ingénierie LU3MA232


Licence de Mathématiques Analyse numérique

Travaux dirigés No 2
Analyse numérique matricielle

Exercice 1 – Pivot de Gauss


Inverser les matrices suivantes par la méthode du pivot de Gauss
   
4 0 0 4 2 1
A1 = 2 4 0 , A2 = 2 4 2 .
1 2 4 1 2 4

Exercice 2 – Matrice à diagonale strictement dominante


Soient n ≥ 1 et A ∈ Mn,n (R) représentée
P par ses coefficients (ai,j )1≤i,j≤n . On suppose que
pour tout i ∈ {1, ..., n}, |ai,i | > j6=i |ai,j |. Montrer que A est inversible.

Exercice 3 – Approximation numérique d’une EDO


On considère une EDO linéaire d’ordre 2 avec conditions initiale et finale sur I =]0, 1[
 00
y (t) = y(t) pour tout t ∈ I,
(1)
y(0) = 0, y(1) = 1.

1. Montrer que ce problème a au plus une solution. La déterminer.


2. On approche cette solution par la méthode d’Euler (explicite). Soit N ≥ 1, on décompose
[0, 1] en N intervalles et on pose tn = Nn pour n entre 0 et N . On pose h = N1 la longueur
d’un intervalle. Le schéma d’Euler s’écrit alors

y0 = 0, yN = 1, ∀n = 1, ..., N − 1, yn+1 − (2 + h2 )yn + yn−1 = 0.

2.1 Ecrire ce système sous la forme matricielle AY = B où Y = (y1 , ..., yN −1 )T .


2.2 Vérifier que A est inversible. (On pourra utiliser l’exercice 2.)
2.3 Chercher L et U tels que A = LU sous la forme
   
1 0 0 ... 0 a1 b 1 0 ... 0
l1 1 0 ... 0  0 a2 b2 ... 0 
 
 
L= 0 l2 1 ... 0
 et U =  ...
 .

 ...  0 0 ... aN −2 bN −2 
0 0 ... lN −2 1 0 0 ... 0 aN −1

2.4 En déduire la solution de AY = B. Quel est la complexité de ce calcul ?

1
3. Conditionnement : propriétés générales. Soit M une matrice carrée inversible d’ordre
kM xk
n > 0. On rappelle que kM kp = supkxkp =1 kM xkp = supx6=0 kxk p .
p

Pour 1 ≤ p ≤ +∞, on note par condp (M ) le nombre de conditionnement de M calculé


avec la norme matricielle k·kp (i.e. subordonnée à la norme p sur Rn ). Plus précisement,
condp (M ) = kM kp kM −1 kp .
3.1 Montrez que condp (M ) ≥ 1 et que ∀α 6= 0, condp (αM ) = condp (M ).
3.2 Soient x et x + δx les solutions des systèmes linéaires
M x = b,
M (x + δx) = b + δb.
Montrez que
kδxkp kδbkp
≤ condp (M ) .
kxkp kbkp
3.3 Soient x et x + δx solutions de
M x = b,
(M + δM ) (x + δx) = b.
Montrez que
kδxkp kδM kp
≤ condp (M ) .
kx + δxkp kM kp
4. Conditionnement : exemple de l’EDO. On se replace dans le cadre du problème de
Cauchy (1).
4.1 Vérifier que les vecteurs propres de A sont les vecteurs V k avec Vik = sin(kπ Ni )
associés respectivement aux valeurs propres λk = −h2 − 4 sin2 ( 2N kπ
) pour k =
1, ..., N − 1.
i |λi (M )|
4.2 Montrer que pour une matrice M symétrique et réelle cond2 (B) = max mini |λi (M )|

λi (M ) désignent les valeurs propres de M .
Calculer cond2 (A) et donner son équivalent quand N est grand.
4.3 Entre la méthode directe décrite en question 2, et une méthode itérative de type
gradient (à pas fixe ou conjugué), quelle méthode choisiriez-vous pour résoudre
AY = B ?
Exercice 4 – Application décomposition LU
Soit A la matrice définie par
 
2 −1 4 0
 4 −1 5 1
A= −2 2 −2 3 .

0 3 −9 4
1. Faire la décomposition A = LU , où L a ses éléments diagonaux égaux à 1.

2. Résoudre les systèmes linéaires Axi = ei , (1 ≤ i ≤ 4) où ei est le ième vecteur de la base


canonique de R4 .

2
Sorbonne Université Année universitaire 2021–2022
Faculté des Sciences et Ingénierie LU3MA232
Licence de Mathématiques Analyse numérique

Corrigé des travaux dirigés No 2

Corrigé 1 [Pivot de Gauss]


(1) On a
   
1
4 0 0 1 0 0 1 0 0 4
0 0  
    L1 L2 ← L2 − 2L1
2 4 0 0 1 0 ↔ 0 4 0 − 12 1 0 par L1 ← puis
   
    4 L3 ← L3 − L1
1 2 4 0 0 1 0 2 4 − 14 0 1
 
1
1 0 0 4
0 0
  L2 L3 L2
↔ 0 1 0 − 18 1
0  par L2 ← puis L3 ← −
 
4
  4 4 2
0 0 1 0 − 18 14

(2) On a
   
1 1 1
4 2 1 1 0 0 1 2 4 4
0 0  
  
3
 L1 L2 ← L2 − 2L1
2 4 2 0 1 0 ↔ 0 3 − 12 1 0 par L1 ← puis
   
   2
 4 L3 ← L3 − L1
3 15 1
1 2 4 0 0 1 0 2 4
−4 0 1
 
1 1 1
1 2 4 4
0 0

1 1 1
 L2 1 1
↔ 0 1 − 6 3 0  par L2 ← puis L3 ← L3 − L2
 
2
  3 3 2
0 0 1 0 − 16 13
 
1 1 1 1
1 2
0 4 24
− 12 
L1 ← L1 − L43
  
1 5 1 
↔ 0 1 0 − 6 12 − 6  par

  L2 ← L2 − L23
0 0 1 0 − 16 1
3
 
1 1
1 0 0 3
− 6
0

1 5 1
 L2
↔ 0 1 0 − 6 12 − 6  par L1 ← L1 −

  2
0 0 1 0 − 16 13

Corrigé 2 [Matrice à diagonale dominante] Il suffit de montrer que l’endomorphisme ca-


noniquement associé à A est injectif, i.e pour tout vecteur colonne X ∈ Mn,1 (R)

AX = 0 =⇒ X = 0.

3
Soit donc X = (x1 , ..., xn )T , que l’on suppose par l’absurde non nul, tel que AX = 0. Ainsi

 a1,1 x1 + ... + a1,n xn = 0
...
an,1 x1 + ... + an,n xn = 0

Soit i l’indice tel que |xi | est maximal i.e (et en particulier |xi | > 0 car X 6= 0). La i-ème
équation du système s’écrit X
ai,j xj = −ai,i xi
j6=i

Alors

X
|ai,i xi | = ai,j xj
j6=i
X
≤ |ai,j xj | par inégalité triangulaire
j6=i
X
≤ |xi | |ai,j | car |xi | > |xj | ∀i 6= j.
j6=i
P
Or par hypothèse, |ai,i | > j6=i |ai,j | donc on obtient |ai,i xi | < |xi ||ai,i |. On obtient ainsi une
contradiction. X est donc nécessairement nul, puis A est inversible.
Corrigé 3 [Approximation numérique d’une EDO]
1 Il s’agit d’une EDO linéaire d’ordre 2 dont le polynôme caractéristique est X 2 − 1 = 0.
Ce polynôme a deux racines distinctes : 1 et −1.
La solution générale est donc de la forme y(t) = λet + µe−t pour λ et µ deux réels.
Les conditions initiales et finales nous donnent alors

λ+µ=0
λe1 + µe−1 = 1
1 1
c’est-à-dire λ = e1 −e−1
et µ = − e1 −e −1 . D’où l’unique solution du problème y(t) =
et −e−t
e1 −e−1
2.1 Le schéma s’écrit sous forme matricielle
   
y1 0

−(2 + h2 ) 1 0 ... 0
 1 2
−(2 + h ) 1 ... 0   y2   0 
  
  .   . 
 ...   ..  =  .. 
 2

0 ... 1 −(2 + h ) 1
  
  yN −2   0 
0 ... 0 1 −(2 + h2 ) yN −1 −1
2.2 On voit que A est à diagonale dominante donc, par l’exercice 2, A est inversible
2.3 On cherche L et U sous la forme
   
1 0 0 ... 0 a1 b 1 0 ... 0
l1 1 0 ... 0  0 a2 b 2 ... 0 
   
L=  0 l2 1 ... 0 et U = 
  ... .

 ...   0 0 ... aN −2 bN −2 
0 0 ... lN −2 1 0 0 ... 0 aN −1

4
En développant A = LU on obtient
 
a1 b1 0 ... 0
a1 l1 b1 l1 + a2 b2 ... 0 
 
A=  0 a 2 l2 b 2 l2 + a 3 ... 0 .

 ... 
0 ... 0 aN −2 lN −2 bN −2 lN −2 + aN −1 .

Plus précisément
1
a1 = −(2 + h2 ), b1 = 1, et pour tout i, li = , bi = 1, et ai+1 = −(2 + h2 ) − bi li ,
ai
ou encore
1 1
Pour tout i, li = , bi = 1, et ai+1 = −(2 + h2 ) − avec a1 = −(2 + h2 ).
ai ai

2.4 On cherche à résoudre LU Y = B.


On commence donc par résoudre LX = B
   
x1 0

1 0 0 ... 0
l1  x2   0 
1 0 ... 0 
   

0  ..   .. 
 l2 1 ... 0  .  =  .  .

...    
 xN −2   0 
0 0 ... lN −2 1 xN −1 −1

On obtient directement    
x1 0

 x2   
   0
.. ..
 =  .
   

 .    .
xN −2   0 
xN −1 −1
Puis on résout U Y = X
   
y1 0

a1 1 0 ... 0
0 a2 1 ... 0 
 y2   0 
 
  
..  =  ..  .

 ... 
 .   . 
  
0 0 ... aN −2 1  yN −2   0 

0 0 ... 0 aN −1 yN −1 −1

On obtient
(−1)N −1
 
  QN −1
y1 i=1 ai
(−1)N −2
 
 y2   
QN −1
i=2 ai
   
 ..   ..
 . = .

   . 
yN −2   1 
 aN −1 aN −2 
yN −1
− aN1−1

5
Ainsi, pour résoudre le schéma, il faut d’abord calculer les ai (ce qui prend O(N )
opérations), puis calculer les N − 1 coefficients de Y . Ceux-ci se calculent de proche
en proche par la formule yn−k = − yn−k+1
an−k
. Cela se fait aussi en O(N ) opérations. Ainsi,
la complexité de l’algorithme est d’orde O(N )
3.1 On a I = AA−1 =⇒ 1 = kIkp = kAA−1 kp ≤ kAkp kA−1 kp = condp (A). De plus
condp (αA) = kαAkp kα−1 A−1 kp = |α||α−1 | kAkp kA−1 kp = condp (A).
3.2 On a Aδx = b + δb − Ax = δb. Ainsi, kδxkp = kA−1 δbkp ≤ |||A−1 ||| kδbkp . D’autre part,
kbk = kAxk ≤ |||A||| kxkp . Finalement, kδxkp kbkp ≤ |||A−1 ||| |||A||| kxkp kδbkp . On en
kδxkp kδbk
déduit que kxkp
≤ condp (A) kbk p .
p

3.3 On a Ax = b = (A+δA)(x+δx) ⇐⇒ Aδx = −δA(x+δx) ⇐⇒ δx = −A−1 δA(x+δx).


On en déduit
kδxkp ≤ A−1 δA p
kx + δxkp ≤ A−1 kδAkp kx + δxkp
kδAkp
= A−1 p
kAkp kx + δxkp
kAkp
kδxkp kδAk
et finalement, kx+δxkp
≤ condp (A) kAk p .
p

4.1 On vérifie
 
sin(kπ N1 )

−(2 + h2 ) 1 0 ... 0
 1 −(2 + h2 ) 1 ... 0  sin(kπ N2 ) 
  ..

AVk =  ...  
   . 
0 ... 1 −(2 + h2 ) 1  sin(kπ N −2 )
 
N

2
0 ... 0 1 −(2 + h ) N
sin(kπ N )−1
 
−(2 + h2 ) sin(kπ N1 ) + sin(kπ N2 )
 sin(kπ 1 ) − (2 + h2 ) sin(kπ 2 ) + sin(kπ 3 ) 
 N N N 
=
 .. 
. 
N −3 2 N −2 N −1
 
sin(kπ N ) − (2 + h ) sin(kπ N ) + sin(kπ N )
sin(kπ NN−2 ) − (2 + h2 ) sin(kπ NN−1 )

En remarquant que sin(kπ N0 ) = sin(kπ N


N
) = 0, on calcule pour tout j = 1, ..., N − 1

j−1 j j+1  j−1 j j+1



sin(kπ ) − 2 sin(kπ ) + sin(kπ ) = Im eikπ N − 2eikπ N + eikπ N
N N N   
ikπ j−1 ikπ N 1
ikπ N2
= Im e N 1 − 2e +e
   2
ikπ j−1 ikπ N 1
= Im e N 1−e
 j−1 1
 1 1
2 
= Im eikπ N eikπ N e−ikπ 2N − eikπ 2N
 j kπ 
= Im − eikπ N 4 sin2 ( )
2N
kπ j
= −4 sin2 ( ) sin(kπ ).
2N N

6
Ainsi
 
sin(kπ N1 )
 sin(kπ N2 )
 kπ 
..

AVk = − h2 − 4 sin2 ( )  .
 
2N  .
N −2

sin(kπ N )
sin(kπ NN−1 )

i |λi (A)|
4.2 On calcule cond2 (A) par cond2 (A) = max
mini |λi (A)|
. Les valeurs propres de A sont les λk =
2 2 kπ kπ
−h −4 sin ( 2N ), qui est maximal, en valeur absolue, lorsque sin( 2N ) est maximal, c’est-
(N −1)π
h2 +4 sin2 ( 2N )
à-dire pour k = N − 1, et minimal lorsque k = 1. D’où cond2 (A) = π
h2 +4 sin2 ( 2N )
=
1 (N −1)π
+4 sin2 ( 2N ) −1)π π2
N2
1 2 π
+4 sin ( 2N )
. On remarque alors que, puisque sin2 ( (N2N ) ∼ 1 et sin2 ( 2N
π
)∼ 4N 2
N2
lorsque N tend vers l’infini, cond2 (A) ∼N →∞ N 2 π24+1 .
4.3 La question 2 montre que la méthode directe nécessite de l’ordre de N calculs pour
obtenir la solution exacte, tandis que la question précédente montre que le condition-
nement se dégrade en N 2 (et donc le nombre d’itérations, qui coûtent chacune aussi
N , augmente). La méthode directe est donc à privilégier par rapport à une méthode
itérative dans cet exemple.

Corrigé 4 [Application décomposition LU] On pose


   
1 0 0 0 U11 U12 U13 U14
l21 1 0 0  0 U22 U23 U24 
L= l31 l32 1 0 U =  0
  
0 U33 U34 
l41 l42 l43 1 0 0 0 U44

En développant le produit matriciel LU on obtient


 
U11 U12 U13 U14
U11 l21 U12 l21 + U22 U13 l21 + U23 l21 U14 + U24 
LU = l31 U11 l31 U12 + l32 U22 l31 U13 + l32 U23 + U33

l31 U14 + l32 U24 + U34 
l41 U11 l41 U12 + l42 U22 l41 U13 + l42 U24 + l43 U34 l41 U14 + l42 U24 + l43 U34 + U44

étape 1 : U11 = 2 U12 = −1 U13 = 4 U14 = 0.


étape 2 : l21 = a411 = 2, l31 = a−2
11
= −1, l41 = 0.
étape 3 : U22 = 1, U23 = −3, U24 = 1.
étape 4 : l32 = 1, l42 = 3.
étape 5 : U33 = 5, U34 = 2.
étape 6 : l43 = 0.
étape 7 : U44 = 1.
Ainsi, on trouve    
1 0 0 0 2 −1 4 0
 U = 0 1 −3 1
 2 1 0 0  
L= −1 1 1 0 0 0 5 2
0 3 0 1 0 0 0 1

7
Soit        
1 0 0 0
0 1 0 0
e1 = 
0 e2 = 0 e3 = 1 e4 = 0
      

0 0 0 1
Résolvons l’équation Ax1 = e1 . Grâce à la décomposition LU on résout l’équation LU x1 =
e1 . Posons y1 = U x1 .
étape de descente : La résolution de l’équation Ly1 = e1 fournit
 
1
−2
y1 = 
3

étape de remontée : Résolvons l’équation U x1 = y1 On trouve


13
 

 5
 67 
− 
x=  59 

− 
 
5
6

La résolution des équations Ax2 = e2 , Ax3 = e3 , Ax4 = e4 fournit


   3     1    3
0 2
0 − 10
0 − 10
1 7 0  3  0 − 11 
y2 =   5   5
−1 x2 =  1  y3 = 1 x3 =  1  y4 = 0 x3 =  − 2  .
      
5 5
−3 −3 0 0 1 1

Vous aimerez peut-être aussi