Académique Documents
Professionnel Documents
Culture Documents
5
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Créer des matrices et des vecteurs
Il existe différentes méthodes pour créer automatiquement des
matrices (où des vecteurs) :
Exemples :
fonctions renvoyant une matrice identité de taille N : eye(N),
une matrice de 1 : ones(N,M)
une matrice de 0 : zeros(N,M)
la commande A = [] définit une matrice vide
>> eye(2) >> ones(2,4) >> zeros(3,2)
ans = ans = ans =
1 0 1 1 1 1 0 0
0 1 1 1 1 1 0 0
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024 0 0 6
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Créer des matrices et des vecteurs
7
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Créer des matrices et des vecteurs
Autres exemples :
Un vecteur constitué de 10 valeurs équidistantes entre 1 et 5
>> V = linspace(1,5,10)
Vecteur contenant des valeurs allant de 1 à 7 avec un pas de 1
>> V = 1:7
Vecteur contenant des valeurs allant de -10 à 12 avec un pas de 2
>> V = -10:2:12
Matrices (2x3) contenant des variables aléatoires générées selon
les lois de probabilité uniforme ou normale
>> rand(2,3) >> randn(2,3)
8
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Accéder aux éléments d’une matrice
>> A = [1 3; 4 2]
A=
1 3
4 2
L’accès aux valeurs se fait grâce aux parenthèses en précisant
d’abord la ligne puis la colonne :
>> A(2,1)
ans =
4
NB : En MATLAB, la numérotation des lignes et des colonnes
commence par 1. Par contre en C où sous Python elle
commence par 0. 9
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Accéder aux éléments d’une matrice
Autre méthode de numérotation des éléments d’une matrice :
numérotation unique
>> A = [1 3 7; 5 4.4 2; 6 9.1 8; 1.5 3.2 9]
A=
11.3 53 97 Cette numérotation est moins utilisée
25 64.4 102
36 79.1 118
41.5 83.2 129
>> A(6)
ans =
4.4000
10
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Accéder aux éléments d’une matrice
On peut également extraire des sous-matrices B et C dans une
matrice initiale A.
Soit la matrice A
>> A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16; 17 18 19 20]
A=
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
17 18 19 20
11
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Accéder aux éléments d’une matrice
1 2 3 4 >> B=A(2:4,2:4) ou B=A(2:4,2:end)
5 6 7 8 B=
9 10 11 12 6 7 8
13 14 15 16 10 11 12
17 18 19 20 14 15 16
1 2 3 4 >> C=A(:,2:3) ou C=A(1:end,2:3)
5 6 7 8 C=
9 10 11 12 2 3
13 14 15 16 6 7
17 18 19 20 10 11
14 15
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
18 19 12
Chapitre 2 : Vecteurs et Matrices
2.1 Déclarer, Accéder aux éléments d’une matrice,
Concaténer des matrices
Concaténer des matrices
A= B= C=
1 2 3 4 6 7 8 21 2 3
5 6 7 8 10 11 12 22 6 7
9 10 11 12 14 15 16 23 10 11
13 14 15 16 14 15
17 18 19 20 18 19
>> find(B<7)
ans =
2
4
7
17
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
>> find(C==8)
ans =
7
10
16 18
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
19
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
Inverse un critère
~ : et (exemple : ~ ((lat < 30) & (lat > -30)))
20
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
Nous pouvons ensuite influencer ces matrices, en utilisant ses
numéros d’index.
Exemple 1
>> A = [10 1.2 5; 6 7 8; 14 15 9];
>> n=find(A>=10);
>> A(n)=0
A=
0 1.2000 5.0000
6.0000 7.0000 8.0000
0 0 9.0000
21
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
Nous pouvons ensuite influencer ces matrices, en utilisant ses
numéros d’index.
Exemple 2 :
>> A = [10 1.2 5; 6 7 8; 14 15 9];
>> A(find(A>=10))=0
A=
0 1.2000 5.0000
6.0000 7.0000 8.0000
0 0 9.0000
22
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
Nous pouvons ensuite influencer ces matrices, en utilisant ses
numéros d’index.
Exemple 3 :
>> A = [10 1.2 5; 6 7 8; 14 15 9];
>> A(find(A>=10))=NaN
A=
NaN 1.2000 5.0000
6.0000 7.0000 8.0000
NaN NaN 9.0000
23
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.2. Taille d’une matrice & Filtrage de matrices
Filtrage de matrices
Nous pouvons ensuite influencer ces matrices, en utilisant ses
numéros d’index.
Exemple 4 :
>> A = [10 1.2 5; 6 7 8; 14 15 9];
>> n=find(A>=10);
>> A(n)=A(n)-2
A=
8.0000 1.2000 5.0000
6.0000 7.0000 8.0000
12.0000 13.0000 9.0000
24
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : vecteurs et matrices
2.1 Déclarer, Accéder aux éléments d’une matrice, Concaténer des
matrices
2.2. Taille d’une matrice & Filtrage de matrices
2.3. Opérations sur les matrices
26
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations de base sur les matrices
Inversion d’une matrice (si son inverse existe) inv(A)
Mettre une puissance à chaque élément de la matrice A.^3
sqrt(A)
exp(A)
cos(A)
sin(A)
tan(A)
acos(A)
...
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
27
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Somme des éléments d’une matrice :
1) Le long des colonnes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9]
A=
10 1 5
6 7 8
14 15 9
>> B=sum(A,1)
B=
30 23 22
28
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Somme des éléments d’une matrice :
2) Le long des lignes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9]
A=
10 1 5
6 7 8
14 15 9
>> B=sum(A,2)
B=
16
21
38
29
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Somme des éléments d’une matrice :
3) Le long des colonnes et des lignes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9];
>> B=sum(A,2);
>> C=sum(B,1)
C=
75
Ou
>> A = [10 1 5; 6 7 8; 14 15 9];
>> C=sum((sum(A,2)),1)
C=
75
30
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Moyenne des éléments d’une matrice le long des lignes (B) et des
colonnes (C) d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9]
A=
10 1 5
6 7 8
14 15 9
>> B=mean(A,2) >> C=mean(B,1)
B= C=
5.3333 8.3333
7.0000
12.6667
31
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Moyenne des éléments d’une matrice le long des colonnes et
des lignes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9];
>> C=mean((mean(A,2)),1)
C=
8.3333
32
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Moyenne des éléments d’une matrice le long des colonnes et
des lignes d’une matrice
>> A = [10 NaN 5; 6 7 8; NaN 15 9];
>> C=mean((mean(A,2)),1)
C=
NaN
34
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Maximum (max) et minimum (min) d’une matrice :
2) Le long des lignes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9];
>> B=max(A, [], 2)
B=
10
8
15
35
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Trier une matrice :
1) Le long des colonnes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9];
>> B=sort(A,1)
B=
6 1 5
10 7 8
14 15 9
36
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Opérations avancées sur les matrices
Trier une matrice :
1) Le long des lignes d’une matrice
>> A = [10 1 5; 6 7 8; 14 15 9];
>> B=sort(A,2)
B=
1 5 10
6 7 8
9 14 15
37
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Des constantes prédéfinies
>> pi
ans =
3.1416
% Pour afficher davantage de décimales :
>> format long
>> pi
ans =
3.141592653589793
38
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Des constantes prédéfinies
1. imaginaire pour définir les nombres complexes (i ou j)
>> i ou >> j
ans =
0.0000 + 1.0000i
2. Not-A-Number : résultat numérique d’une opération non-
définie
>> 0/0
ans =
NaN
39
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
Autres opérations avancées sur les matrices
1) Calculer l’écart-type
>> sigma=sqrt(sum((x-xbarre).^2)/(N-1)) % version pédestre
>> sigma=std(x) % version rapide
2) Calculer le vecteur dx = {xi+1 − xi} pour i = {1, 2, ..., N −
1}.
i.e : vecteur des différences entre deux él èments cons ecutifs de x
dx=x(2:end)-x(1:end-1) % version pédestre
dx=diff(x) % version rapide
3) Calculer la médiane de la série x
median(x)
40
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
EXERCICE1 :
1. Définir un vecteur t qui contient 51 valeurs équidistantes
entre −25 et 25 ;
2. Calculer le vecteur x = t2 ;
3. Calculer le vecteur y qui contient t3 mais dans l’ordre
inverse ;
4. Représenter x et y en fonction de t ;
5. Calculer la somme des éléments pairs de x ;
6. Calculer la somme des éléments positifs de y.
41
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
EXERCICE1 : correction
1.
t=linspace(-25,25,51);
2.
x=t.^2;
3.
y=t(end:-1:1).^3;
ou
y=fliplr(t).^3;
42
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
Chapitre 2 : Vecteurs et Matrices
2.3. Opérations sur les matrices
EXERCICE1 : correction
4.
figure
subplot(2,1,1)
plot(t,x)
xlabel(’t’); ylabel(’x’);
subplot(2,1,2)
plot(t,y)
xlabel(’t’); ylabel(’y’);
5.
sum(x(fix(x/2)==x/2))
ou
sum(x(mod(x,2)==0))
ou
sum(x(find(rem(x,2)==0)),2)
6.
sum(y(y>0))
43
Cours Dr. DIENG : Logiciel Matlab 2020 - 2024
MERCI
44