Accueil             felixchenier.com

Les opérations: additionner, multiplier, transposer, etc.

Évidemment, il ne sert à rien de manipuler des variables si on ne peut pas appliquer des opérations mathématiques sur ces variables. Heureusement, les opérations mathématiques standard sont faciles à réaliser. Il faut toutefois maîtriser quelques technicalités lorsqu'on fait des opérations sur des vecteurs ou sur des matrices.

Table of Contents

Addition et soustraction

Les additions et les soustractions sont les opérations les plus simples à comprendre. Le plus simple est l'addition ou la soustraction de deux doubles:

4 + 6
ans =

    10

Lorsqu'on additionne ou soustrait un double avec un vecteur ou une matrice, l'opération s'exécute entre le double et chaque élément du vecteur ou de la matrice:

4 + [1 2 3 4]
ans =

     5     6     7     8

4 - [1 ; 2 ; 3 ; 4]
ans =

     3
     2
     1
     0

Lorsqu'on additionne ou soustrait un vecteur avec un autre vecteur, ou une matrice avec une autre matrice, l'opération s'exécute entre chaque élément correspondant:

[1 2 3 4] + [1 2 3 4]
ans =

     2     4     6     8

[1 ; 2 ; 3 ; 4] - [1 ; 2 ; 3 ; 4]
ans =

     0
     0
     0
     0

[1 2 3 ; 4 5 6] + [1 1 1 ; 2 2 2]
ans =

     2     3     4
     6     7     8

Il est important toutefois que les deux vecteurs ou les deux matrices aient exactement la même taille, sinon une erreur est générée.

Multiplication

La multiplication fonctionne comme l'addition ou la soustraction lorsqu'on multiplie ensemble deux doubles, un double avec un vecteur, ou encore un double avec une matrice.

2 * 3
ans =

     6

2 * [1 2 3]
ans =

     2     4     6

2 * [1 2 ; 3 4]
ans =

     2     4
     6     8

Or, lorsqu'on multiplie deux vecteurs ensemble, ou une matrice et un vecteur, l'opération * correspond à une multiplication matricielle (produit scalaire), et non à une multiplication terme par terme.

[1 2 ; 3 4] * [1 ; 2]
ans =

     5
    11

Pour que la multiplication s'applique terme par terme, on doit précéder le * d'une point (.). Truc mnémotechnique: c'est donc une multiplication point à point.

[1 2 3 4] .* [1 2 3 4]
ans =

     1     4     9    16

Dans le programmation de tous les jours, il est beaucoup plus fréquent d'utiliser l'opération .* que l'opération *. Il faut simplement se rappeler de mettre le point lorsqu'on doit le mettre.

Division

La division se comporte exactement comme la multiplication, en ce sens que pour diviser chaque élément d'un vecteur ou d'une matrice par les éléments d'un autre vecteur ou d'une autre matrice, on doit précéder l'opérateur / d'un point (.).

[1 2 3 4] ./ [1 2 3 4]
ans =

     1     1     1     1

Puissance

Encore une fois, la puissance se comporte comme la multiplication et la division: si on utiliser seulement l'opérateur ^, alors il s'agit d'une multiplication matricielle.

[1 2 ; 3 4]^2
% est équivalent à:
[1 2 ; 3 4] * [1 2 ; 3 4]
ans =

     7    10
    15    22


ans =

     7    10
    15    22

Pour appliquer la puissance à chaque élément, on doit précéder l'opérateur ^ d'un point (.).

[1 2 ; 3 4].^2
% est équivalent à :
[1 2 ; 3 4] .* [1 2 ; 3 4]
ans =

     1     4
     9    16


ans =

     1     4
     9    16

Transposition

Un opérateur très pratique est l'apostrophe (') qui sert à transposer un vecteur ou une matrice. La transposition consiste à interchanger les lignes et les colonnes : une donnée à la position i,j se retrouve ainsi déplacée à la position j,i.

[1 2 3 ; 4 5 6]
[1 2 3 ; 4 5 6]'
ans =

     1     2     3
     4     5     6


ans =

     1     4
     2     5
     3     6

Pour des vecteurs, ça revient à changer un vecteur ligne pour un vecteur colonne, ou vice versa.

[1 2 3]
[1 2 3]'
ans =

     1     2     3


ans =

     1
     2
     3