Vous êtes sur la page 1sur 6

TD7 : Calcul matriciel avec excel

1

Table des matières

 

2

Rappels de math

2

3

Calcul matriciel avec excel

3

3.1 Sans fonction

3

3.2 Fonctions spécifiques

4

3.3 Autres fonctions utiles

4

4

Problèmes spécifiques des formules matricielles

5

4.1 Si la taille de la plage sélectionnée au départ est mauvaise

5

4.2 Pour

modifier une formule matricielle

5

4.3 Si on est bloqué (affichage du message « Impossible de modifier une partie de matrice »)

5

5

Autres utilisations des formules matricielles

6

5.1 Remplissage d’une plage avec la même valeur partout

6

5.2 Remplissage d’une plage avec des nombres aléatoires

6

5.3 Recherche dans un tableau à partir de plusieurs critères

6

2

Rappels de math

Dans un espace à deux dimensions, soient

A =

a

a

11

21

a

a

12

22

   

et

B

=

b

b

11

21

b

b

12

22

δ un nombre (entier ou réel),

deux matrices 2×2,

  1  ∑ v w 1  V = W =  
1 
v
w
1 
V
=
W =
 
et
deux vecteurs.
 
v
w
2   
2  
a b
a +
b
11
+
+   
11
12
12
La somme des matrices A et B, notée A+B est égale à
a b
a +
b
21
21
22
22
a
b
a
b
11
11
12
12
La différence entre la matrice A et la matrice B, notée A-B est égale à
a
b
a
b
21
21
22
22
  
a
11
12
La multiplication de la matrice A par le nombre δ, notée δ×A est égale à
a
a   
a
21
22
a
a
11 
21
La transposée de A, notée A T est égale à
 
a
La transposée de V, notée V T est égale à (v1
12  
a
22
v2)
Le déterminant de la matrice A, noté det(A) est égal à a11
a22
a12
a21
2
2
La norme du vecteur V, notée ||V|| est égale à
v1
+ v2
(la norme de V est aussi sa longueur)
Le produit scalaire des vecteurs V et W, noté V•W est égal à v1
w1 +
v2 w2
a
b
a
b
a
b
11
11 +
12
21
11
+ 12
Le produit matriciel des matrices A et B, noté A×B est égal à
a
b
a
b
a
b
 
21
11 +
22
21
21
+ 12
Attention ! A×B ≠ B×A
1
0
Soit la matrice identité, notée I, et égale à
 
   , on a A×I = I×A = A
0
1

et A×A -1 = A -1 ×A = I, quelles que soient les valeurs de A.

A -1 est l’inverse de A, ce n’est pas 1/A.

a

a

12

22

b

b

22

22

 

3

Calcul matriciel avec excel

3.1 Sans fonction

Dans un classeur excel, les matrices/vecteurs sont représentés par des plages de cellules.

Somme de 2 matrices (possible si celles-ci ont la même taille) :

Sélectionner une plage correspondant à la taille de la matrice résultat (soit la même taille que l’une ou l’autre des matrices à additionner)

Dans la barre de formule, taper =

Sélectionner la première matrice

Dans la barre de formule, taper +

Sélectionner la seconde matrice

Valider avec CTRL+MAJ+ENTREE

Remarque : si vous utilisez la fonction SOMME au lieu de l’opérateur +, cela ne fonctionnera pas. Vous obtiendrez un nombre correspondant à la somme des valeurs des 2 plages.

Différence entre 2 matrices (possible si celles-ci ont la même taille) : même principe que pour la somme sauf que l’on tape un – au lieu du +.

Multiplication d’une matrice par un nombre (matrice et nombre quelconques) :

Sélectionner une plage correspondant à la taille de la matrice résultat (soit la même taille que la matrice à multiplier)

Dans la barre de formule, taper =

Sélectionner le nombre

Dans la barre de formule, taper *

Sélectionner la matrice

Valider avec CTRL+MAJ+ENTREE

Remarque : Etant donné que la matrice résultat est obtenue sans recopie, il est inutile de bloquer des

coordonnées dans la formule.

Attention ! N’utilisez pas cette méthode pour calculer un produit de matrices ou l’inverse d’une matrice. Pour ces opérations, vous devez utiliser des fonctions spécifiques, décrites dans la section suivante.

3.2

Fonctions spécifiques

Transposée d’une matrice ou d’un vecteur quelconque (on considère qu’un vecteur est une matrice à 1 ligne ou 1 colonne) : Fonction TRANSPOSE

Sélectionner une plage correspondant à la taille de la matrice résultat (si la matrice de départ comprend x lignes et y colonnes, la matrice résultat comporte y lignes et x colonnes)

Dans la barre de formule, taper =TRANSPOSE(

Sélectionner la matrice

Dans la barre de formule, taper )

Valider avec CTRL+MAJ+ENTREE

Déterminant d’une matrice (possible si la matrice est carrée) : Fonction DETERMAT

Sélectionner une cellule (le déterminant d’une matrice est un nombre)

Dans la barre de formule, taper =DETERMAT(

Sélectionner la matrice

Dans la barre de formule, taper )

Valider avec CTRL+MAJ+ENTREE

Produit matriciel de 2 matrices A et B (A×B est possible si le nombre de colonnes de A est égal au nombre de lignes de B) : Fonction PRODUITMAT

Sélectionner une plage correspondant à la taille de la matrice résultat (la matrice A×B a le même nombre de lignes que A et le même nombre de colonnes que B)

Dans la barre de formule, taper =PRODUITMAT(

Sélectionner la première matrice

Dans la barre de formule, taper ;

Sélectionner la seconde matrice

Dans la barre de formule, taper )

Valider avec CTRL+MAJ+ENTREE

Remarque : la fonction PRODUITMAT n’admet que 2 paramètres. Pour calculer A×B×C, il faut imbriquer 2

fonctions PRODUITMAT.

Inverse d’une matrice (possible si la matrice est carrée et que son déterminant est non nul) : Fonction INVERSEMAT

Sélectionner une plage correspondant à la taille de la matrice résultat (la même taille que la matrice de départ)

Dans la barre de formule, taper =INVERSEMAT(

Sélectionner la matrice

Dans la barre de formule, taper )

Valider avec CTRL+MAJ+ENTREE

3.3 Autres fonctions utiles

Il n’y a pas de fonction spécifique pour calculer une norme ou un produit scalaire. Toutefois, le produit scalaire de 2 vecteurs peut être obtenu facilement avec une fonction SOMMEPROD (cf cours TD4) et la norme d’un vecteur peut être obtenue en combinant une fonction SOMMEPROD et une fonction RACINE.

4

Problèmes spécifiques des formules matricielles

4.1 Si la taille de la plage sélectionnée au départ est mauvaise

Une fois la formule validée, on ne peut pas ajouter ou supprimer des lignes ou des colonnes à la plage résultat. Pour modifier la taille de cette matrice résultat, il n’y a pas d’autre solution que de

Resélectionner la plage sélectionnée au départ

En effacer le contenu

Sélectionner une nouvelle plage de la bonne taille

Retaper la formule et la revalider avec CTRL+MAJ+ENTREE

Remarque : avant d’effacer le contenu de la plage, on peut copier la formule de la barre de formule pour la

coller dans la nouvelle plage.

4.2 Pour modifier une formule matricielle

Resélectionner la plage sélectionnée au départ

Modifier la formule dans la barre de formule

Revalider avec CTRL+MAJ+ENTREE

4.3 Si on est bloqué (affichage du message « Impossible de modifier une partie de matrice »)

Appuyer sur la touche

autant de fois que nécessaire pour reprendre la main.

Echap
Echap

5

Autres utilisations des formules matricielles

On peut utiliser une formule matricielle pour remplir rapidement une plage de cellules ou pour faire des recherches dans un tableau à partir de plusieurs critères.

5.1 Remplissage d’une plage avec la même valeur partout

Sélectionner la plage à remplir

Dans la barre de formule, taper la valeur souhaitée

Valider avec CTRL+MAJ+ENTREE

5.2 Remplissage d’une plage avec des nombres aléatoires

Pour cela, on utilisera la fonction ALEA, combinée éventuellement avec une autre fonction, selon que l’on veut des nombres entiers ou réels. La formule =ALEA() permet d’obtenir un nombre réel compris entre 0 inclus et 1 exclu. La formule =ALEA()*x + y permet d’obtenir un nombre réel compris entre y inclus et (x+y) exclu (Par exemple, la formule =ALEA()*40 + 10 permet d’obtenir un nombre réel compris entre 10 inclus et 50 exclu). La formule =ENT(ALEA()*x + y) permet d’obtenir un nombre entier compris entre y inclus et (x+y) exclu. Etc… Pour remplir une plage avec des nombres aléatoires entiers compris entre 0 inclus et 100 inclus :

Sélectionner la plage à remplir

Dans la barre de formule, taper la formule =ENT(ALEA()*101)

Valider avec CTRL+MAJ+ENTREE

5.3 Recherche dans un tableau à partir de plusieurs critères

Ceci se fait à l’aide de plusieurs fonctions SI utilisées sur certaines plages. La méthode sera expliquée dans le TD suivant.