Initiation à Matlab
AMIN BOUKDIR
FSTB
16 mai 2024
(Cycle Ingénieur) 16 mai 2024 1 / 25
Plan
1 Présentation de Matlab
2 Ouverture de Matlab
3 Visualisation graphique
4 Boucles et branchements
5 Les m-files
(Cycle Ingénieur) 16 mai 2024 2 / 25
MATLAB (Matrix Laboratory) est un logiciel de calcul matriciel à syntaxe
”simple” (relativement à des langages évolués comme C, C++).
MATLAB est un interpréteur de commandes : les instructions sont interprétées et
exécutées ligne par ligne (pas de compilation avant de les exécuter).
MATLAB est un Logiciel qui permet, de manière interactive :
• de faire des calculs matriciels.
• d’analyser les données.
• de visualiser les résultats en 2D et 3D...
(Cycle Ingénieur) 16 mai 2024 3 / 25
Présentation de Matlab
Il existe deux modes de fonctionnement :
• mode interactif : MATLAB exécute les instructions au fur et à mesure
qu’elles sont données par l’usager.
• mode exécutif : MATLAB exécute ligne par ligne un fichier ”.m”
(programme en langage MATLAB).
(Cycle Ingénieur) 16 mai 2024 4 / 25
Les différentes fenêtres
(Cycle Ingénieur) 16 mai 2024 5 / 25
Les variables
▶ La variable x a été définie très simplement sans avoir à préciser le type de
donnée qu’elle contient ni sa taille.
▶ Toutes les variables sont créées avec double précision à moins d’indication et
ce sont des matrices.
▶ Pour avoir une information sur une variable x : ”whos x”.
▶ Pour effacer la variable x de l’espace de travail, taper ”clear x”.
▶ Pour effacer toutes les variables de l’espace de travail taper ”clear all”.
(Cycle Ingénieur) 16 mai 2024 6 / 25
Les matrices
Pour créer un vecteur A (matrice à 1 ligne ou 1 colonne) contenant des nombres
régulièrement espacés d’un pas p, commençant par le nombre a et finissant par b,
il suffit de taper :
A=a:p:b
Exemples :
• Vecteur commençant par 0 et allant jusqu’à 10 :
A = 0 : 10
• vecteur commençant par 3 et finissant par 15 par pas de 3 :
A = 3 : 3 : 15
• Pour transformer un vecteur ligne en vecteur colonne ou inversement, il suffit
d’utiliser le caractère ’ (apostrophe) après le vecteur à transformer.
(Cycle Ingénieur) 16 mai 2024 7 / 25
Eléments d’une matrice
Chaque élément d’une matrice est accessible à condition de spécifier sa place dans
la matrice. Pour cela, il suffit de donner le numéro de ligne et de colonne entre ().
Exemples :
▶ Si on a A = [1 5 2 6] alors A(1, 2) = 5 (1ère ligne, 2ème colonne).
▶ Si on a A = [1 5 6 ; 2 3 6] alors A(2, 2) = 3 (2ème ligne, 2ème colonne).
▶ La variable end permet de récupérer les dernier élément d’un vecteur. Si on a
A = [1 5 2 6] alors A(end) = 6.
(Cycle Ingénieur) 16 mai 2024 8 / 25
Eléments d’une matrice
Pour récupérer plusieurs éléments d’une matrice, il suffit de préciser l’ensemble des
numéros de lignes et de colonnes des éléments à prélever.
En particulier, pour récupérer l’ensemble des éléments d’une ligne ou d’une
colonne on utilise le caractère ’ :’.
Exemples : A = [1 2 4 ; 2 6 8 ; 3 5 4].
▶ Pour récupérer les 2 premiers éléments de la 2ème ligne : A(2, [12]) = [2, 6].
▶ pour récupérer la 3ème ligne :A(3, :) = [354].
▶ pour récupérer la 2ème colonne :A(:, 2) = [2; 6; 5].
(Cycle Ingénieur) 16 mai 2024 9 / 25
Opérations sur les matrices
▶ addition : A + B.
▶ soustraction :A − B.
▶ multiplication : A ∗ B et B ∗ A.
▶ inversion : inv (A).
▶ transposition : transpose(A) ou A′ .
Opérateurs (élément par élément) :
▶ .∗ : Multiplication élément par élément.
▶ ./ : Division élément par élément.
▶ .∧ Puissance élément par élément.
(Cycle Ingénieur) 16 mai 2024 10 / 25
Opérations sur les matrices
Les matrices particulières :
▶ La matrice identité de dimension n : eye(n).
▶ La matrice de zéros de dimension m × n : zeros(m,n).
▶ La matrice de uns de dimension m × n : ones(m,n).
▶ La matrice vide : A = [ ].
(Cycle Ingénieur) 16 mai 2024 11 / 25
Opérations sur les matrices
Etude des matrices :
▶ valeurs propres : eig (A).
▶ rang : rank(A).
▶ trace : trace(A).
▶ déterminant : det(A).
▶ diag(A) : créer la diagonale de la matrice A.
▶ tril(A) : partie triangulaire inferieure de A.
▶ triu(A) : partie triangulaire superieure de A.
(Cycle Ingénieur) 16 mai 2024 12 / 25
Visualisation graphique
a) Affichage des valeurs d’un vecteur
Pour afficher les valeurs d’un vecteur A = [1 6 3 5 7 9 12], il suffit de taper
plot(A). On obtient la figure suivante.
En abscisse, la valeur représentée correspond au numéro de l’échantillon.
En ordonnée, la valeur représentée est l’élément de A associé au numéro
d’échantillon mentionné en abscisse.
(Cycle Ingénieur) 16 mai 2024 13 / 25
Visualisation graphique
b) Affichage de plusieurs vecteurs.
Si on veut afficher un vecteur A et un vecteur B sur une même fenêtre, il faut
activer le mode hold dans l’éditeur de commande en tapant : hold on.
Exemple : A = [1 6 3 5 7 9 12] et B = [2 3 8 3 6 4 8]
hold on
Plot(A,’+-’), plot(B,’o-’)
(Cycle Ingénieur) 16 mai 2024 14 / 25
Visualisation graphique
b) Affichage de plusieurs vecteurs.
Si on veut afficher un vecteur A et un vecteur B sur une fenêtre séparée en 2 sous
fenêtres, il faut utiliser la commande subplot( ).
Exemple : A = [1 6 3 5 7 9 12] et B = [2 3 8 3 6 4 8]
subplot(2,1,1), plot(A,’+-’)
subplot(2,1,2), plot(B,’o-’)
(Cycle Ingénieur) 16 mai 2024 15 / 25
Visualisation graphique
c) Affichage des valeurs d’un vecteur en fonction d’un autre vecteur.
Si on veut afficher un vecteur A en fonction d’un autre vecteur X , il suffit de
taper : plot(X,A).
Matlab interprète le premier vecteur comme celui correspondant à l’axe des
abscisses et le second vecteur comme celui correspondant à l’axe des ordonnées.
Exemple : Soient les vecteurs X = [1 5 79 11 13 15] et A = [1 6 3 5 7 9 12], il
suffit de taper : plot(X, A,’+’) pour tracer A en fonction de X . On obtient la
figure suivante.
(Cycle Ingénieur) 16 mai 2024 16 / 25
Visualisation graphique
(Cycle Ingénieur) 16 mai 2024 17 / 25
Visualisation graphique
d) Labels, grilles et légendes.
En mode de commande, on peut paramétrer les propriétés d’un graphique :
▶ pour mettre un label sur l’axe des x : xlabel(’texte à afficher’)
▶ pour mettre un label sur l’axe des y : ylabel(’texte à afficher’)
▶ pour mettre un titre à la figure : title(’texte à afficher’)
▶ pour rajouter un quadrillage : grid on
▶ pour afficher une légende : legend(’courbe 1’,’courbe 2’...)
(Cycle Ingénieur) 16 mai 2024 18 / 25
Visualisation graphique
d) Labels, grilles et légendes. Exemple :
≫ X = [1 5 7 9 11 13 15] ;
≫ A = [1 6 3 5 7 9 12] ;
≫ plot(X, A,’+’) ;
≫ hold on
≫ Y = [2 4 6 8 10 12 14] ;
≫ B = [2 10 6 5 9 7 12] ;
≫ plot(Y,B,’o’) ;
≫ xlabel(’temps’)
≫ ylabel (’Valeurs’)
≫ title(’Essai de graphique superposé’)
≫ grid on
≫ legend(’signal A’, ’signal B’) ;
(Cycle Ingénieur) 16 mai 2024 19 / 25
Visualisation graphique
On obtient la figure suivante :
(Cycle Ingénieur) 16 mai 2024 20 / 25
Boucles
(Cycle Ingénieur) 16 mai 2024 21 / 25
Conditions
(Cycle Ingénieur) 16 mai 2024 22 / 25
Operateurs logiques
(Cycle Ingénieur) 16 mai 2024 23 / 25
Scripts
(Cycle Ingénieur) 16 mai 2024 24 / 25
fonctions
(Cycle Ingénieur) 16 mai 2024 25 / 25