Académique Documents
Professionnel Documents
Culture Documents
- Help : donne en ligne les informations nécessaires sur n’importe quelle commande
MATLAB
+ : addition
- : soustraction
* : multiplication
.* : multiplication élément par élément
/ : division à droite
TP1 Commande numérique
Abs : module
sqrt : racine carré
real : partie réelle ; imag : partie imaginaire
angle : la phase ; conj : conjugué
rem : reste de la division entière
ceil : quotient de la division entière +1 ; round : quotient de la division entière
exp, log, log10,…
MATLAB peut exécuter une séquence d’instructions dans un fichier appelé M (M-File), avec
une extension .m. Il y a deux types de fichiers M : les fichiers de commandes et les fichiers de
fonctions. Un fichier de commandes est une séquence d’instructions MATLAB. Les fichiers
fonctions fournissent une extensibilité à MATLAB.
On peut afficher un message ou une valeur à l’écran avec l’instruction disp : Exemple : disp
(‘ceci est une introduction à MATLAB’) affiche « ceci est une introduction à MATLAB » sur
l’écran. On peut faire entrer une valeur avec l’instruction
X = input (‘valeur de x=’)
affiche sur l’écran « valeur de x= »
En fait, toute variable de Matlab est une matrice (scalaire : matrice 1x1, vecteur : matrice 1xN
ou Nx1). On peut spécifier directement une matrice sous la forme d'un tableau avec des
crochets, l'espace ou la virgule sépare deux éléments d'une même ligne, les points virgules
séparent les éléments de lignes distinctes.
TP1 Commande numérique
Les vecteurs et les matrices sont les deux modes usuels de représentation des données.ils
peuvent être définis de plusieurs manières :
a = [0 2.5 8] ou [0,2.5,8] est une matrice 1 ligne, 3 colonnes ;
a = [0 ; 2.5 ; 8] une matrice 3 lignes, 1 colonne. Un point virgule termine une ligne.
A(i,j) : élément de la matrice A de ligne i, colonne j.
A(:,j) : correspond à la colonne n°j
A(i,:) : correspond à la ligne n°i
X=[1 5 9 13 17] ou [1:4:17] (début:pas:fin)
A.^2 donne le carré des éléments de A
Certaines fonctions génèrent des matrices :
zeros (m,n) : génère une matrice m*n de zéros.
ones (m,n) : génère une matrice m*n de 1.
eyes (m,n) : identité.
Les éléments d'une matrice peuvent ensuite être référencés par leurs indices, on utilise alors
des parenthèses et non des crochets. Le mot-clé end peut être utilisé en indice pour signifier le
dernier élément.
On peut effectuer les opérations d’addition, de soustraction, de multiplication sur les vecteurs
et les matrices, s’ils ont bien sûr les dimensions adéquates, en utilisant les symboles +, -, * .
Le tableau suivant donne quelques fonctions de base pour le calcul matriciel :
>> size(x)
>> length(x) % longueur
Les opérations usuelles sont définies de façon naturelle pour les matrices :
>> 2*A % Produit par un scalaire
>> A*B % Produit de deux matrices (de dimensions cohérentes)
>> A^p % Elève la matrice carrée A à la puissance p
>> inv(A) % Inversion d'une matrice carrée inversible (message d'alerte éventuel)
>> A.*B % Produit élément par élément de deux matrices.
Attention : A*A est différent de A.*A.
>> X = A\B % Donne la solution de A*X = B (équivalent à X = inv(A)*B)
>> X = B/A % Donne la solution de X*A = B (équivalent à X = B*inv(A))
3. Générer une matrice quelconque 5*5 et son déterminant, sa trace, son inverse, sa
taille, ses valeurs propres, son rang et sa longueur.
M1 M2
Pour définir une matrice M M par bloc, il faut d’abord définir les matrices
M3 M 4
M1, M2, M3 et M4 puis écrire:
On peut créer une boucle en utilisant for……end. On peut aussi réaliser des boucles for
imbriquées. Boucle for simple:
a(i,j)=i*j
end
end
5. Taper sur matlab les deux boucles suivants et indiquez quel est le rôle de chaque
code
III.4. Ponctuation % :
tout ce qui suit cette instruction est considéré comme commentaire et ne sera donc pas
exécuté. ; : le résultat d’une instruction MATLAB est affiché à l’écran, sauf si ce signe
termine l’instruction.
Exemple :
III.5. Variables
Avec MATLAB, il n’est plus nécessaire de dimensionner les variables avant de les utiliser.
Les variables sont conservées en mémoire jusqu’à ce que l’ordre d’effacement clear soit
exécuté. On peut avoir une idée sur les variables en mémoire ainsi que leurs dimensions par
l’ordre whos.
axis [xmin xmax ymin ymax] : définit les valeurs des axes.
Grid : trace une grille sur le graphique
Hold on/off : permet ou interdit la superposition des courbes
Figure : ouvre une nouvelle figure
Subplot (m,n,e) : subdivise la figure en m lignes et n colonne et trace la courbe dans l’élément
e.
Legend : affiche, dans un cadre, en face du style de chaque courbe le texte correspondant.
Ils permettent la sauvegarde d’un ensemble de commandes et leur exécution. Ils permettent
aussi d’écrire et de sauvegarder des fonctions. Exemple :
a. Impulsion de Dirac :
0 pour t 0
(t )
1 pour t 0
1. Soit le programme suivant qui représente une fonction de dirac (impulsion de dirac) avec
un échelle de temps t0 entre -10s et 20s en utilisant la fonction zeros.
TP1 Commande numérique
3. Utiliser la commande subplot afin de tracer les quatre courbes les unes en dessous des
autres.
Soit les deux signaux sign(t) et u(t) donnés par les fonctions suivantes :
1 pour t 0
sign(t )
1 pour t 0
0 pour t 0
u (t )
1 pour t 0
1. Modifier le programme Matlab précédent pour générer et représenter graphiquement les
signaux sign(t) et u(t). (Utiliser la commande ones).
2. Faire les changements nécessaires au programme précédent pour représenter les
impulsions suivantes : x1(t)= 2u(t), x2(t)= u(t + 3) et x3(t)= u(t-4).
3. Utiliser la commande subplot afin de tracer les trois courbes les unes en dessous des
autres
Une autre classe de signaux très utile en traitement du signal et en automatique sont les
signaux sinusoïdaux de la forme :
2
x(t) A cos t
T