Cours 2
Cours 2
Cours 2
MATLAB
1. Les vecteurs :
Un vecteur est une liste ordonnée d’éléments. Si les éléments sont arrangés
horizontalement on dit que le vecteur est un vecteur ligne, par contre si les éléments sont
arrangés verticalement on dit que c’est un vecteur colonne.
Pour créer un vecteur ligne il suffit d’écrire la liste de ses composants entre crochets [et]
et de les séparés par des espaces ou des virgules comme suit :
Pour créer un vecteur colonne il est possible d’utiliser une des méthodes suivantes :
1. écrire les composants du vecteur entre crochets [et] et de les séparés par des
points-virgules (;) comme suit :
>> U = [ 4 ; -2 ; 1 ] % Création d’un vecteur colonne U
U =
4
-2
1
4
-2
1
1
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
Si les composants d’un vecteur X sont ordonnés avec des valeurs consécutives, nous
pouvons le noter avec la notation suivante :
Par exemple :
>> X = 1:8 % on peut aussi écrire colon(1,8)
X =
1 2 3 4 5 6 7 8
>> X = [1:8]
X =
1 2 3 4 5 6 7 8
Si les composants d’un vecteur X sont ordonnés avec des valeurs consécutives mais avec un
pas (d’incrémentation/décrémentation) différente de 1, nous pouvons spécifier le pas avec
la notation :
Par exemple :
>> X = [0:2:10] % le vecteur X contient les nombres pairs < 12
X =
0 2 4 6 8 10
>> X = [-4:2:6] % on peut aussi écrire colon(-4,2,6)
X =
-4 -2 0 2 4 6
>> X = 0:0.2:1 % on peut aussi écrire colon(0,0.2,1)
X =
0 0.2000 0.4000 0.6000 0.8000 1.0000
2
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
L’accès aux éléments d’un vecteur se fait en utilisant la syntaxe générale suivante :
nom_vecteur ( positions )
positions : peut être un simple
numéro, ou une liste de numéro
Les parenthèses (et) sont utilisées ici (pour la consultation). (un vecteur de positions)
Les crochets [et] sont utilisés uniquement pendant la création.
Exemples :
>> V = [5, -1, 13, -6, 7] % création du vecteur V qui contient 5 éléments
V =
5 -1 13 -6 7
eme
>> V(3) % la 3 position
ans =
13
eme ere
>> V(4:-2:1) % de la 4 pos jusqu'à la 1 avec le pas = -2
ans =
-6 -1
eme
>> V(3:end) % de la 3 position jusqu'à la dernière
ans =
13 -6 7
3
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
>> V(2) = [] % Supprimer le deuxième élément
V =
8 13 -6 7 -3 0 0 5
eme eme
>> V(3:5) = [] % Supprimer du 3 jusqu’au 5 élément
V =
8 13 0 0 5
Avec deux vecteurs 𝑢 �⃗ et 𝑣⃗, il est possible de réaliser des calcules élément par élément en
utilisant les opérations suivantes :
Exemple avec :
L’opération Signification >> u = [-2, 6, 1] ;
>> v = [ 3, -1, 4] ;
>> u+2
ans =
0 8 3
+ Addition des vecteurs >> u+v
ans =
1 5 5
>> u-2
ans =
-4 4 -1
- Soustraction des vecteurs >> u-v
ans =
-5 7 -3
>> u*2
ans =
-4 12 2
>> u.*2
.* Multiplication élément par élément ans =
-4 12 2
>> u.*v
ans =
-6 -6 4
>> u/2
ans =
-1.0000 3.0000 0.5000
>> u./2
./ Division élément par élément ans =
-1.0000 3.0000 0.5000
>> u./v
ans =
-0.6667 -6.0000 0.2500
>> u.^2
ans =
4 36 1
.^ Puissance élément par élément >> u.^v
ans =
-8.0000 0.1667 1.0000
L’écriture d’une expression tel que : u^2 génère une erreur car cette expression réfère a une
multiplication de matrices (u*u doit être réécrite u*u' ou u'*u pour être valide).
4
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
La taille d’un vecteur (le nombre de ses composants) peut être obtenue avec la fonction
length comme suit :
>> length(X) % la taille du vecteur X
ans =
4
2. Les matrices :
Une matrice est un tableau rectangulaire d’éléments (bidimensionnels). Les vecteurs sont
des matrices avec une seule ligne ou une seule colonne (monodimensionnels).
Pour insérer une matrice, il faut respecter les règles suivantes :
• Les éléments doivent être mises entre des crochets [ et ]
• Les espaces ou les virgules sont utilisés pour séparer les éléments dans la même ligne
• Un point-virgule (ou la touche entrer) est utilisé pour séparer les lignes
Cette matrice pout être écrite en Matlab avec une des syntaxes suivantes :
>> A = [1,2,3,4 ; 5,6,7,8 ; 9,10,11,12] ;
>> A = [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12] ;
>> A = [1,2,3,4
5,6,7,8
9,10,11,12] ;
>> A=[[1;5;9] , [2;6;10] , [3;7;11] , [4;8;12]] ;
5
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
Le nombre d’éléments dans chaque ligne (nombre de colonnes) doit être identique dans
toutes les lignes de la matrice, sinon une erreur sera signalée par Matlab. Par exemple :
>> X = [1 2 ; 4 5 6]
Error using vertcat
CAT arguments dimensions are not consistent.
Une matrice peut être générée par des vecteurs comme le montre les exemples suivants :
>> B = [x' y' z'] % B est formée par les vecteurs colonnes x, y et z
B =
1 5 4
2 10 8
3 15 12
4 20 16
L’accès aux éléments d’une matrice se fait en utilisant la syntaxe générale suivante :
6
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
ème ème
>> A(2,3) % l’élément sur la 2 ligne à la 3 colonne
ans =
7
ère
>> A(1,:) % tous les éléments de la 1 ligne
ans =
1 2 3 4
ème
>> A(:,2) % tous les éléments de la 2 colonne
ans =
2
6
10
ème ème
>> A(2:3,:) % tous les éléments de la 2 et la 3 ligne
ans =
5 6 7 8
9 10 11 12
7
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
Les dimensions d’une matrice peuvent être acquises en utilisant la fonction size.
Cependant, avec une matrice A de dimension m × n le résultat de cette fonction est un
vecteur de deux composants, une pour m et l’autre pour n.
>> d = size(A)
d =
3 4
Ici, la variable d contient les dimensions de la matrice A sous forme d’un vecteur. Pour
obtenir les dimensions séparément on peut utiliser la syntaxe :
En Matlab, il existe des fonctions qui permettent de générer automatiquement des matrices
particulières. Dans le tableau suivant nous présentons-les plus utilisées :
La fonction Signification
zeros(n) Génère une matrice n × n avec tous les éléments = 0
zeros(m,n) Génère une matrice m × n avec tous les éléments = 0
ones(n) Génère une matrice n × n avec tous les éléments = 1
ones(m,n) Génère une matrice m × n avec tous les éléments = 1
eye(n) Génère une matrice identité de dimension n × n
magic(n) Génère une matrice magique de dimension n × n
rand(m,n) Génère une matrice de dimension m × n de valeurs aléatoires
8
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
Exemple :
>> A=ones(2,3)
A =
1 1 1
1 1 1
>> B=zeros(3,2)
B =
0 0
0 0
0 0
>> B=B+3
B =
3 3
3 3
3 3
>> A*B
ans =
9 9
9 9
>> B=[B , [3 3 3]'] % ou bien B(:,3)=[3 3 3]’
B =
3 3 3
3 3 3
3 3 3
>> B=B(1:2,:) % ou bien B(3,:)=[]
B =
3 3 3
3 3 3
>> A=A*2
A =
2 2 2
2 2 2
9
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
>> A.*B
ans =
6 6 6
6 6 6
>> A*eye(3)
ans =
2 2 2
2 2 2
Voici quelques fonctions parmi les plus utilisées concernant les matrices:
10
Université de Skikda 20 août 55
Niveau : 2eme année LMD Sciences et Techniques Chapitre N°02
Cours : Langage Par : Z.Mansouri
>> B=[1,2,3;4,5,6;7,8,9]
B =
1 2 3
4 5 6
7 8 9
>> tril(B)
ans =
1 0 0
4 5 0
7 8 9
tril Renvoie la partie triangulaire inferieure >> tril(B,-1)
ans =
0 0 0
4 0 0
7 8 0
>> tril(B,-2)
ans =
0 0 0
0 0 0
7 0 0
>> triu(B)
ans =
1 2 3
0 5 6
0 0 9
>> triu(B,-1)
ans =
triu Renvoie la partie triangulaire supérieure 1 2 3
4 5 6
0 8 9
>> triu(B,1)
ans =
0 2 3
0 0 6
0 0 0
11