0% ont trouvé ce document utile (0 vote)
354 vues5 pages

TP Vecteurs et Matrices en Matlab

Ce document présente différentes commandes et fonctions Matlab pour la manipulation de vecteurs et de matrices. Il décrit comment créer, modifier et effectuer des opérations sur des vecteurs et matrices, ainsi que l'indexation et les fonctions usuelles comme ones, zeros et eye.

Transféré par

Badr el houmili
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)
354 vues5 pages

TP Vecteurs et Matrices en Matlab

Ce document présente différentes commandes et fonctions Matlab pour la manipulation de vecteurs et de matrices. Il décrit comment créer, modifier et effectuer des opérations sur des vecteurs et matrices, ainsi que l'indexation et les fonctions usuelles comme ones, zeros et eye.

Transféré par

Badr el houmili
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

Outils Matlab

Année universitaire 2021-2022


Y. TAHIR

TP N° 2 : Vecteurs & Matrices

Activité 1 (création de vecteurs et de matrices)


1. Vecteur ligne
Pour définir un vecteur ligne on commence par un crocher ouvrant ‘[‘ puis la liste de composantes du
vecteur séparées par un séparateur en fin on termine par un crochet fermant ‘]’. Le séparateur des
composantes du vecteur ligne peut être un espace ou bien une virgule.
Créer les vecteurs lignes suivantes :
>> vect1 = [ 2 3 4 2 5 ]
>> vect2 = [ 12 32 45 10 12 23 ]
>> vect3 = [ 23,42 , 5 ]
2. Vecteur colonne
Pour définir un vecteur colonne on suit la même démarche que dans le cas du vecteur ligne sauf que
dans le cas du vecteur colonne le séparateur doit être un point-virgule ou bien ‘entrer’. C’est à dire on
commence par un crocher ouvrant ‘[‘ puis la liste de composantes du vecteur séparées par point-virgule
ou bien ‘entrer’ puis on termine par un crochet fermant ‘]’.
Créer les vecteurs colonnes suivantes :
>> vect1 = [ 2
3
4
2
5 ]
>> vect1 = [ 12
32
45
10
12
23 ]
Tester encore
>> A=[1,3,5], B=[2,4,1], C=[1,1;1,2]
A =
1 3 5
B =
2 4 1
C =
1 1
1 2
>> [A,B],[A;B]
ans =
1 3 5 2 4 1
ans =
1 3 5
2 4 1
3. Chaine de caractère
La chaîne de caractères est un vecteur ligne. Pour le créer, on entre les caractères en commençant et
en terminant par les quotes (’).
4. Matrice
Pour créer une matrice on suit la même démarche précédente on sépare les colonnes par des espaces ou
des virgules et on sépare les lignes par des points-virgules ou bien ‘entrer’.
Créer les matrices suivantes :
3 2 4 4 12 24 𝐴 𝐵 𝐵
A= 4 2 4 B = 40 2 5 C= 𝐵 𝐴 𝐵
1 3 1 4 53 31 𝐵 𝐵 𝐴

Activité 2 : Vecteurs usuels


1. x = [1 3 5] % création d’un vecteur ligne dont les composantes sont 1, 2 et 3
2. x = [Link] % vecteur ligne comportant les valeur de 0 jusqu’à 10
3. x = 1:0.5:4 % on précise le pas0,5, les valeurs serons : 1 1,5 2 2,5 …….4
4. x = 10:-1:0 % le pas peut prendre une valeur négative : 10 9 8 7 …..0
5. x = 1:10 % si on ne précise pas le pas, Matlab prend 1 comme valeur par défaut
6. x = [1 3 5]
y = [x 6 8 10] % y est un vecteur composé par la concaténation des composantes
% du vecteur x et les éléments 6 , 8 , 10
% concaténation horizontale : on utilise espace ou virgule
z = [x;1:3] % concaténation des vecteurs x et 1:3,
% concaténation verticale : on utilise entrer ou point-virgule
7. linspace(a,b,n) % subdivision de l’intervalle [a b] en n points équidistances
8. logspace(a,b,n) %subdivision de l’intervalle [10 a 10b] en n points équidistances
9. linspace(a,b) % si on précise pas n Matlab prend par default n=100
10. logspace(a,b) % si on précise pas n Matlab prend par default n=50
11. length(x) % langueur du vecteur x
12. size(X) % taille de la matrice x
13. numel(x) % nombre d’éléments de x (vecteur ou matrice)

Activité 3 : Matrices usuelles


1. ones (n) % matrice carrée d’ordre n, dont tous les éléments valent 1
2. ones (n,m) % matrice de taille n X m, dont tous les éléments valent 1
3. ones ([n,m]) % matrice de taille n X m, dont tous les éléments valent 1
En particulier :
4. ones(1,n) % vecteur ligne de longueur n dont tous les éléments valent 1
5. ones(m,1) % vecteur colonne de longueur m dont tous les éléments valent 1
De même pour :
6. zeros (n) % matrice carrée d’ordre n dont tous les éléments valent 0
7. zeros (n,m)
8. zeros ([n,m])
9. zeros (1,n)
10. zeros (m,1)
Encore :
11. eye (n) % matrice unitaire d’ordre n
12. eye (n,m
13. eye ([n,m])
Encore :
14. rand(n) % matrice carrée d’ordre n d’éléments entre 0 et 1 générés d’une manière aléatoire.
15. rand(n,m)
16. rand([n,m])
17. rand(1,n)
18. rand(m,1)
Encore :
19. randi(m,n) % matrice carrée d’ordre n d’éléments entiers entre 0 et m générés d’une manière
aléatoire.
20. randi(m) % nombre entier générés d’une manière aléatoire entre 0 et m.
21. randi(m,a,b) % matrice de taille axb d’éléments entre 0 et m générés d’une manière aléatoire.
Encore :
22. randn(m,n) % matrice de taille mxn dont les éléments suivent la loi normale.
23. randn(m) % matrice crée d’ordre n dont les éléments suivent la loi normale.
24. randn(1,n) % vecteur ligne de taille n les éléments suivent la loi normale.
Encore :
25. magic(n) % matrice carrée d’ordre n dont les éléments sont entre 1 et n 2 et la
% somme des chaque ligne, colonne, diagonale, etc. égale à n 2

Activité 4 : Indexation de vecteurs et de matrices


26. x = [10 20 30 40 50 60 70 80 90]
y = x(3) % lecture de l’élément 3 du vecteur x
x(4) = 17 % modification (écriture) de l’élément 4 du vecteur x
x(2 :5) % de l’élément 2 à l’élément 5 de x
x(3:5)=[] % suppression des élément de 3 à 5 de x
%l’affectation du vecteur nul (ou vide) [] de la position 3 à 5  la suppression
x*y’ % produit scalaire des vecteurs(lignes de même taille) x et y
x’*y % produit scalaire des vecteurs(colonnes de même taille) x et y
sum(x.*y) % produit scalaire des vecteurs(colonnes de même taille) x et y
27. A = [1 2 3 ; 4 5 6 ; 7 8 9]
y = A(3,2) % lecture de l’élément de la 3 ème ligne et la 2 ème colonne de A
z = A(5) % une autre manière d’indexation des éléments de A

28. A(3,2) = 11 % écriture dans la matrice A


29. A(5) = 12 % écriture dans la matrice A

Atelier 4 : Fonctions et Opérations sur les matrices


1. M = ones(3,3)
x= M(5,5) % accès en lecture d’une valeur qui n’existe pas  le système renvoie une erreur
M(5,5) = 10 % accès en modification  le système complète la matrice par des 0

Tester encore :
2. M = zeros(3)
M(5,5) = 0
3. M = ones(3,5)*77
4. rand(3,4)
M(:) = 77 % renvoie la matrice sous forme d’un vecteur ligne
5. M = repmat(M,3,5) % répéter la matrice M
Tester encore :
6. M = 77
M = M(ones(3,5));
7. M = ones(5)*77;
8. M = zeros(5);
M(:) = 77;
9. M = repmat(77,5,5);
10. M = M(:,end:-1:1) % inverser les colonnes de la matrice M
11. n = 5;
M = toeplitz([1 3 zeros(1,n-2)],[1 2 zeros(1,n-2)]);
12. M = [1 2 ; 3 4];
M = kron(M,ones(2,3));
13. M = [8 4 ; 1 7]
M = kron(M, eye(2,3))
14. rot90(M) % rotation de la matrice M
15. rot90(A,3)
16. fliplr(M) % Retourner la matrice de la gauche à la droite (inverser les colonnes)
17. flipud(M) % Retourner la matrice haut en bas (inverser les lignes)
18. flipud(fliplr(M))
19. fliplr(A)
20. reshape(A,4,3)
21. reshape(A,6,2)
22. reshape(A,2,6)
23. reshape(flipud(B),8,2)
24. triu(B) % renvoie la matrice triangulaire supérieure de la matrice B
25. tril(B) % renvoie la matrice triangulaire inferieure de la matrice B
tester encore :
26. triu(B,-1)
27. tril(A,2)
28. diag(M) % renvoie la diagonale de la matrice A
29. diag(rot90(B))
30. rank(A) % renvoie le rang de la matrice A
31. inv(A) % renvoie l’inverse de la matrice A
32. det(A) % renvoie le déterminant de la matrice A
33. trace(A) % trace de A
34. poly(A) % polynôme caractéristique de A
35. eig(A) % valeurs propres de A
36. [U,D]=eig(A) % calcul à la fois les vecteurs propres et les valeurs propres de A

Exercices

Exercice 1
Calculer le factoriel des de n dans les cas suivants :

n= 10 ; n=20 ; n= 100 ; n=500 ; n=1000

Indication : utiliser la syntaxe « a:b » et la fonction prod().

Exercice 2:
Considérant les trois vecteurs 𝑢1 , 𝑢2 𝑒𝑡 𝑢3 , et la matrice A ci-dessous

1) Structures Matlab
a) Entrer ces données (les trois vecteurs et la matrice) sous Matlab.
b) Calculer u1 + 3u2 − u3/5.
c) Calculer le produit scalaire entre les vecteurs : u1 et u2.
d) Calculer le produit Au1.
2) Commandes Matlab ; Trouver les commandes Matlab permettant de :
a) Calculer ∥ 𝑢1 ∥2, ∥ 𝑢1 ∥1 et ∥ 𝑢1 ∥∞ (indication : utiliser la fonction norm)
b) Déterminer les dimensions de la matrice A, en extraire le nombre de colonnes (indication : utiliser
la fonction size)
c) Calculer le déterminant et l’inverse de A (indication : utiliser les fonctions det et inv).
3) Résolution de systèmes linéaires
Proposer deux méthodes permettant de résoudre le problème A⃗x = ⃗u1, et déterminer les commandes
Matlab associées.

Vous aimerez peut-être aussi