9.5 Chapitre 5
327
d’où xn 3n!. Il est intéressant de rappeler que la formule de Cramer (voir
Section 5.2) requiert environ 3(n + 1)! opérations pour résoudre un système
linéaire d’ordre n avec une matrice pleine.
Solution 5.2 On utilise les commandes MATLAB suivantes pour calculer
les déterminants et les temps de calcul :
t = []; NN =3:500;
for n = NN
A = magic (n ); tt= cputime ; d= det( A ); t =[t , cputime - tt ];
end
Les coefficients du polynôme aux moindres carrés de degré 3 qui approche les
données NN=[3:500] et t sont :
c = polyfit (NN ,t ,3)
c =
1.4055e-10
7.1570e-08 -3.6686e-06
3.1897e-04
Si on calcule le polynôme aux moindres carrés de degré 4,
c = polyfit (NN ,t ,4)
on obtient les coefficients suivants :
c =
7.6406e-15
1.3286e-10
7.4064e-08 -3.9505e-06
3.2637e-04
Le coefficient de n
4 est donc proche de la précision machine, et les autres sont à
peu près inchangés par rapport à la projection sur P3. On déduit de ce résultat
que dans MATLAB le temps CPU nécessaire au calcul du déterminant d’une
matrice d’ordre n croît en n
3 .
Solution 5.3 En notant Ai la sous-matrice principale de A d’ordre i, on a :
detA1 = 1, detA2 = ε, detA3 = detA = 2ε + 12. Par conséquent, si ε = 0 la
seconde sous-matrice principale est singulière et la factorisation de Gauss de
A n’existe pas (voir Proposition 5.1). La matrice A est singulière si ε = −6.
Dans ce cas, la factorisation de Gauss existe et donne
L =
⎡
⎣
1 0
0
2 1
0
3 1.25 1
⎤
⎦ , U =
⎡
⎣
1 7
3
0 −12 −4
0 0
0
⎤
⎦ .
Remarquer que U est singulière (comme on pouvait s’y attendre puisque A est
singulière) et le système triangulaire supérieur Ux = y admet une infinité de
solutions. On ne peut pas appliquer l’algorithme de remontée (5.10) pour les
mêmes raisons.
Solution 5.4 Considérons l’algorithme 5.13. A l’étape k =1, on effectue n − 1
divisions pour calculer les termes l i1 , i = 2, . . . , n. Puis, (n−1)
2 multiplications
et (n − 1)
2 additions pour les nouveaux termes a
(2)
ij , i,j = 2, . . . , n. A l’étape
k =2, le nombre de divisions est (n − 2), celui de multiplications et d’additions
est (n − 2)
2 . A la dernière étape k =n − 1, on n’effectue plus qu’une seule
addition, une multiplication et une division. Ainsi, en utilisant les relations
Précédent

- 337/374

Suivant