Professional Documents
Culture Documents
Anne 2011-2012
1
MATLAB
MATLAB signifie MATrix LABoratory. Cest un logiciel de calcul numrique cr en 1984. Il permet de faon interactive de faire des calculs matriciels; de simuler des systmes; danalyser des donnes; de visualiser les rsultats en 2D et 3D MATLAB inclut un ensemble de fonctions (fichiers .m) Plusieurs fonctions prdfinies pour analyser et reprsenter des donnes MATLAB peut tre intgr avec du code C ou FORTRAN ;
2
MATLAB
En MATLAB, il existe deux modes de fonctionnement : mode interactif : MATLAB excute les instructions au fur et mesure quelles sont donnes par lutilisateur mode excutif : MATLAB excute ligne par ligne un programme en langage MATLAB crit dans un fichier .m Fichiers .m : ce sont des programmes ( en langage MATLAB (crits par lutilisateur) ; Fichiers .dat : ce sont des fichiers de donnes en langage MATLAB Un programme est une suite dinstructions Les instructions contiennent des oprateurs, des mots-clefs ou des fonctions
Dmarrer MATLAB
cliquer sur licne Matlab sur le bureau ou dans le groupe Matlab du menu Dmarrer/Programmes. voici ce que vous devez voir apparatre
Donnes
Les instructions sont excutes au fur et mesure quelles sont entres par l utilisateur Historique des commandes soit sous forme de squences dexpressions ou scripts enregistres dans des fichiers-texte appels m-files et excutes depuis la fentre de commande ;
5
Commandes systme
pwd : nom du rpertoire courant cd : changer de rpertoire dir, ls : contenu du rpertoire courant mkdir : crer un nouveau rpertoire delete : effacer un fichier copyfile : copier un fichier
Tapez : i ou j
>> i = 0 + 1.0000 i
Remarque : En MATLAB il ny a pas dinstructions pour dclarer une variable. Une nouvelle variable est dfinie en donnant son nom 8 et sa valeur numrique
% nombre complexe
Tapez : s
>> s =
2.5000 - 8.0600i
9
% vecteur ligne
Tapez : A = [1 ; 2 ; 3 ; 4]
>> A = 1 2 3 4
% vecteur colonne
Tapez : A (4)
>> ans 4
% on accde la composante 4
10
Tapez : size(A)
>> ans 2 3
% dimensions de la matrice A
Tapez : A
>> ans 1 2 3
% matrice transpos de A
6 5 7
11
Matrice Unit : ones(nlin ,ncol) (tous les lments valent 1) Tapez : unite = ones( 2,2)
>> unite 1 1 1 1
12
Matrice alatoire randn(nlin,ncol) (moyenne =0, cart type =1) Tapez : y = randn( 1000,1) % matrice remplie % alatoirement
13
inv(A) : renvoie linverse de la matrice carre A trace(A) : renvoie trace de la matrice carre A rank(A) : renvoie le rang de la matrice carre A
16
(A ) = max
i = 1, n
A 1 = max
j
a
i =1
n
ij
A = max
i
a
j =1
ij
17
Manipulation de matrices
Extraction de sous -matrices
A ( 2 , 5 ) Extraction dun lment A (: , 5 ) Extraction dune colonne
18
1) Oprations matricielles
Les oprations matricielles usuelles sont dfinies par : + - * / ^
A+B : addition
[aij + bij ]
A/ B : division
[ A * B 1 ]
aij / bij
gal (x==y) diffrent de (x~=y) strictement plus petit que (x <y) strictement plus grand que (x >y) plus grand ou gal (x >= y) plus petit ou gal (x <= y)
Oprateurs logique
et logique (x & y) ou logique (x |y) non logique (~y)
22
Exercices
Exercice 1
On note :
1 u1 = 2 , 3
5 u2 = 2 , 1
1 u3 = 3 7
u2
u3
Exercice 2
On note :
2 3 A= 6 5 ,
2 3 4 B = 7 6 5 2 8 7
Calculer les dterminants, inverses, valeurs propres et vecteurs propres des matrices A et B
23
0.5000
1.000
1.500
2.000
2.5000
3.000
Formats daffichage
Il existe plusieurs types de format d'affichage dans Matlab. Voici ceux que l'on utilise le plus couramment.
format short % format par dfaut cinq chiffres format long % format long 15 chiffres
Formats d affichage
Exemple
Suivant le format pi, scrira : format short format long format short e format long e 3.1416 3.14159265358979 3.1416e+000 3.141592653589793e+000
26
Commandes Graphiques(1)
Les donnes peuvent tre traces en utilisant des commandes graphiques puissantes. plot(x,y) : trac cartsien en coordonnes X-Y normal affiche le vecteur y en fonction du vecteur x semilogx(x,y) : trac en chelle semi-logarithmique (abscisse) semilogy(x,y) : trac en chelle semi-logarithmique (ordonne) stairs(x,y) : graphe en escalier stem(x,y) : graphe de raie bar(x,y) : graphe en barres
27
Exemple
On veut tracer la courbe suivante :
Tapez le programme suivant : X= 0 : 10 : 100 ; Y= [ 4 4 6 9 13 17 22 30 37 51 56 ] ; figure(1) plot( X,Y); xlabel(Ouverture de la vanne (%)); ylabel(Dbit en m3/h); title(Caractristique dune vanne); grid
29
Graphique multiple
On peut tracer plusieurs graphiques dans la mme fentre en utilisant linstruction subplot pour diviser la fentre en plusieurs parties diviser la fentre en deux parties (2 x 1)
30
Exemple
On veut tracer la courbe suivante : Tapez le programme suivant : X= 0 : 10 : 100 ; Y= [ 4 4 6 9 13 17 22 30 37 51 56 ] ; figure(2) subplot(211), plot(X); subplot(212) plot(Y) ; grid
31
Exemple
figure1
figure2
32
Commandes Graphiques
Exercice 1
visualiser la courbe suivante : >> x = 0:pi/100:2*pi; >> y = sin(x); >> plot(x,y) >> xlabel(temps); ylabel(amplitude)
33
Commandes Graphiques
Exercice 2
visualiser les courbes : >> x = 0:pi/100:2*pi; >> y = sin(x); >> plot(x,y) >> xlabel(temps); ylabel(amplitude) >> t = 0:pi/100:2*pi; >> y1=sin(t); >> y2=sin(t+pi/2); >> plot(t,y1,t,y2) >> grid on
34
Commandes Graphiques
Exercice 3
visualiser les courbes : >> plot(sin(pi*(0:0.2:10))) >> plot(sin(pi*(0:0.2:10)),g) >> hold on >> plot(sin(pi*(0:0.2:10)),*r) >> title(cosinus); >> xlabel(temps); ylabel(amplitude)
35
Scripts et fonction
On dfinit la fonction myfunction de la manire suivante: function [vars1 ,, varsn,]=myfunction(vare1,,varen) O : squence dinstructions
vars1,,varsn sont les variables de sortie de la fonction vare1,,varen sont les variables dentre de la fonction squence dinstructions est le corps de la fonction Il est impratif que la fonction ayant pour nom myfunction soit enregistre dans un fichier de nom myfunction.m On l'utilise sous Matlab en tapant : [vars1 ,, varsn,] = myfunction(vare1,,varen)
37
Instruction conditionne : IF
Linstruction conditionn a la forma suivante Syntaxe : if expression logique squence dinstructions 1 else squence dinstructions 2 O : end expression logique est une expression dont le rsultat peut tre vrai ou faux squence dinstruction 1 est le traitement effectuer si expression logique est vraie squence dinstruction 2 est le traitement effectuer si expression logique est faux
40
Exemple
On veut tracer la fonction suivante :