0% ont trouvé ce document utile (0 vote)
158 vues14 pages

TP - Matlab - 02 (3) Adel Yousfi

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1/ 14

TP 

: outils logiciel 2eme année CIP


TP N0 2 scripts et graphisme sous Matlab

1. Objectifs
 apprendre à écrire des scripts.
 savoir faire une représentation 2D et 3D.
2. Les scripts.

2.1 ouvrir un script

Un script est une suite de commande Matlab. Autrement dit, un script est un ensemble des instructions
(commandes) Matlab qui joue le rôle de programme principal.

Pour lancer un script aller à l’onglet « File », « new » et puis « M-file ».

Une fois, vous cliquer sur « M-file », la fenêtre suivante apparait :

TP préparé par : Beji Mohamed Page 1


TP : outils logiciel 2eme année CIP
C’est dans cette fenêtre qu’on peut écrire l’ensemble des instructions Matlab.Il est en effet beaucoup plus simple
de modifier des instructions dans un script que de retaper un ensemble d'instructions MATLAB dans la fenêtre de
commandes.

Exercice 1

Ouvrir un nouveau script et taper le programme suivant :

a=2 ;

b=5 ;

c=(a+b)/2 ;

disp (c)

2.2 nommer et sauvegarder un script

Unefois, vous écrivez le programme vous devez le sauvegarder et lui donner un nom (dans notre exemple, on va
le nommé : programme).

- Cliquer sur « file » puis « save as »

Remarques importantes :

 Le script doit avoir une extension de la forme « .m ».


 Dans l’appellation des scripts,  Il faute éviter :
 D’utiliser les caractères désignant un opérateur spécifique à Matlab tel que « -», « ; », « * »,…etc.
 D’utiliser le nom d’une fonction Matlab telle que : sqrt, sin, cos,…etc.
 D’utiliser deux mots séparées (par exemple : program st, program 1).

2.3 Exécution d’un script

Pour exécuter un script, on écrit tout simplement son nom dansla fenêtre de commandes puis on clique sur entrer.

TP préparé par : Beji Mohamed Page 2


TP : outils logiciel 2eme année CIP

Le nom du script.

Si le script contient une (des) erreur(s), la ligne contenant l’erreur ainsi le type d’erreurs sont affichées dans la
fenêtre des commande.

Exercice :

Soit M, la matrice définie par :

12 24 36 58
2 6 8 10 ¿
7 9 11 13

La sous matrice M1

Ecrire un script Matlab qui permet d’extraire :

 L’élément situé dans la troisième ligne et la quatrième colonne.


 Le vecteur L3 contenant tous les éléments de la troisième ligne.
 Le vecteur C4 contenant tous les éléments de la quatrième colonne.
 La sous matrice M1du matrice M, constitué à partir de l’intersection de la deuxième et la troisième
colonne avec la deuxième et la troisième ligne.
 La matrice M2 dont ses lignes sont celles de la matrice M mais afficher en sens inverse.

7 9 11 13
M 2= 2 6 8 10
12 24 36 58

 Mettre tous les éléments de la deuxième ligne égaux à deux.

Remarque : seule la matrice M qui est déclarée manuellement.


TP préparé par : Beji Mohamed Page 3
TP : outils logiciel 2eme année CIP
3. Graphisme sous « Matlab »

3.1 Importance de la représentation graphique

Comme il est indiqué dans le TP No 1, MATLABest un logiciel conçu pour les calculs scientifiques. Ceci signifie
que Matlab va aider l’utilisateur (ingénieur, étudiant, comptable,…) à résoudre un problèmelié à un phénomène
naturel ou bien physique. Autrement dit, les observations (données) d’un expert ou bien d’un utilisateur sont
enregistrées souvent sous forme des chiffres. Représenter ses observations sous forme d’un tableau ne permet pas
à l’utilisateur de mieux voir la variation de ces données. Tandis que, si ces données sont représentées
graphiquement, l’utilisateur peut non seulement voir la variation mais il peut aussi sélectionner les régions
d’intérêt et les régions ou les événements pertinents se produisent.

120

100

une variation importante

80

60

40

20

0
0 5 10 15 20 25 30 35 40 45 50

3.2 Représentation graphique 2D

3.2.1 tracer un graphe.

Pour tracer un graphe en 2D, on fait appel à la fonction Matlab « plot ».

TP préparé par : Beji Mohamed Page 4


TP : outils logiciel 2eme année CIP
Exemple :

Soit F, un vecteur défini par : F= [1 20 14 12 10 11 25 26 14 45 23 45 1 20 14 12 10 11 25] 

Pour représenter graphiquement le vecteur F, on peut taper tout simplement : plot (F).

b blue . point - solid

g green o circle : dotted

r red x x-mark -. dashdot

c cyan + plus -- dashed

m magenta * star (none) no line

y yellow s square

k black d diamond

w white v triangle (down)

^ triangle (up)

< triangle (left)

> triangle (right)

p pentagram

h hexagram

Pour tracer, la fonction y définie par : y ( t ) =sin ⁡(0.3 πt)

 Il faut tout d’abord déclarer le vecteur t


 Taper en suite la formule de y. [c.à.d.: y=sin ⁡(0.3 πt)]. Remarquez vous que nous avons écris seulement
y et non pat y(t).
 Finalement tracer le graphe de y(t) en utilisant la fonction « plot ».
y(x)
1
cos

0.5

0
y

-0.5

-1
0 1 2 3 4 5 6 7
 temps

TP préparé par : Beji Mohamed Page 5


TP : outils logiciel 2eme année CIP

y(x)
1 Max
sin
0.8

0.6

0.4

0.2

0
y

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
temps

y(x) y(x)
1 Max 1
sin cos

0.5 0.5

0 0
y

-0.5 -0.5

-1 -1
0 5 10 0 5 10
temps temps

clear all;
clc;
t= [0 : pi/100 :2* pi] ;
y= (0.3*pi*t) ;
plot(t, y)

Une fois, vous exécutez votre programme, une fenêtre contenant le graphe de la fonction mathématique apparait.

TP préparé par : Beji Mohamed Page 6


TP : outils logiciel 2eme année CIP

Le graphe de y(t)

L’axe

des cordonnées

L’axe des abscisses

3.2.2 Quadrillage, titres, couleurs, trait.

a) quadrillage :

* ajouter la commande suivante au programme précédant : grid

* Sauvegarder les modifications. ( file save)

* exécutez votre programme.

Que remarquez-vous ? Quel est le rôle de la fonction « grid » ?

b) titres :

1- le titre principal.

* ajouter au programme précédent la commande suivante : title(‘le graphe de la fonction y(t)’)

* Sauvegarder les modifications.

* exécutez votre programme.

Quel est le rôle de la fonction « title » ?

2- les titres des axes :

* ajouter au programme précédant les commandes suivantes :

xlabel(‘le temps t’)

ylabel(‘la fonction y’)

TP préparé par : Beji Mohamed Page 7


TP : outils logiciel 2eme année CIP
* Sauvegardez les modifications.

* exécutez votre programme.

Quel est le rôle des deux commandes « xlabel »  et « ylabel »?

c) les couleurs

* remplacer l’expression plot(t, y) par l’expression plot (t, y,’r’) 

* Sauvegardez les modifications.

* exécutez votre programme.

Que remarquez-vous ?

d) le type de trait

* remplacez l’expression plot (t, y,’r’) par l’expression plot (t, y,’+r’) 

* Sauvegardez les modifications.

* exécutez votre programme.

Que remarquez-vous ?

Remarques importantes

1. Pour qu’on puisse écrire plot(t,y), il faut que les vecteurs t et y soient de la même taille.
2. Il faut écrire correctement les commandes.
3. La représentation graphique doit permettre de visualiser les détails de la fonction tracée.
4. On peut faire un ZOOM pour agrandir une région du graphe.
5. Pour savoir plus sur les différents types de trait et de couleurs tapez : help plot

3.2.3 tracer deux graphes

a) tracer deux graphes dans deux fenêtre graphiques séparées

Pour tracer deux graphes dans deux fenêtres graphiques séparées, on peut taper : fenêtre(n) ou n représente le
numéro de la fenêtre graphique

Exemple

clear all;
clc
t= [0 : pi/100 : 2*pi] ;
y=sin (0.3*pi*t) ;
y1=cos(0.3*pi*t);
figure(1)
plot(t, y)
grid
TP préparé par : Beji Mohamed Page 8
TP : outils logiciel 2eme année CIP
title('le graphe de la fonction y(t)')
xlabel('le temps t')
ylabel('la fonction y')
figure(2)
plot(t, y1)
grid
title('le graphe de la fonction y1(t)')
xlabel('le temps t')
ylabel('la fonction y1')

b) tracer deux graphe dans la même fenêtre graphique.

b-1 En utilisant la fonction « hold »


On peut tracer deux ou plusieurs graphes dans la même fenêtre graphique en utilisant la fonction « hold ».
Exemple

clear all;
clc
t= [0 : pi/100 : 2*pi] ;
y=sin (0.3*pi*t) ;
y1=cos(0.3*pi*t);
plot(t, y)
grid
hold
plot(t, y1,’r’)

Conseil 

Lorsqu’on trace deux graphes dans une même fenêtre, il est conseillé d’utiliser deux couleurs différentes ou
bien deux types de trait différents.

b-2 En utilisant la fonction « subplot »

La deuxième méthode pour tracer plusieurs graphes dans une même fenêtre consiste à utiliser la fonction
« subplot ». Cette fonction permet de subdiviser la fenêtre graphique utilisée en plusieurs sous -fenêtres.

Chacune de ces sous -fenêtres se comporte comme une fenêtre à part.

La syntaxe de cette commande est la suivante :

Subplot(n,m,k) avec

n : nombre de lignes.

m : nombre de colonnes.

k : la position du graphe.

TP préparé par : Beji Mohamed Page 9


TP : outils logiciel 2eme année CIP

1 3 5

2 4 6

Exemple

clear all;
clc
t= [0: pi/100: 2*pi];
y=sin (0.3*pi*t) ;
y1=cos (0.3*pi*t);
y2=sin (0.3*pi*t)+cos (0.3*pi*t);
y3=sin (0.3*pi*t)-cos (0.3*pi*t);
subplot(2,2,1);plot(t, y)
grid
subplot(2,2,2);plot(t, y1)
grid
subplot(2,2,3);plot(t, y2)
grid
subplot(2,2,4);plot(t, y3)
grid

3.3 Représentation graphique 3D

3.3.1 En utilisant la fonction « plot3 »

La commande « plot3 » est similaire à la commande « plot » sauf qu’on ajoute un troisième axe Z.

Exemple

t = 0:0.1:10*pi;
x = exp(-t/20).*cos(t);
y = exp(-t/20).*sin(t);
z = t;

TP préparé par : Beji Mohamed Page 10


TP : outils logiciel 2eme année CIP
plot3(x,y,z);
xlabel('x');
ylabel('y');
zlabel('z');
grid

Une fois le tacé apparait, vous pouvez modifier la rotation des axes. Ceci est possible soit en utilisant la flèche
(figure) soit en tapant la commande « view » dans le programme.

Fléché de rotation

Exemple (le reste du programme de l’exemple est dans la page suivante)

t = 0:0.1:10*pi;
x = exp(-t/20).*cos(t);
y = exp(-t/20).*sin(t);
z = t;
subplot(2,2,1);plot3(x,y,z);
xlabel('x');
ylabel('y');
zlabel('z');
view(-10,10);
title('Default plot3');
grid
subplot(2,2,2);plot3(x,y,z,'og');
xlabel('x');
ylabel('y');
zlabel('z');
view(-9,56);
title('Az=-10, El=10');
grid
subplot(2,2,3);plot3(x,y,z,'xb');
xlabel('x');
ylabel('y');
zlabel('z');
view(0,90);
title('Az=0, El=90');
grid
subplot(2,2,4);plot3(x,y,z,'dr');
xlabel('x');
ylabel('y');
zlabel('z');
view(90,0);

TP préparé par : Beji Mohamed Page 11


TP : outils logiciel 2eme année CIP
title('Az=90, El=0');
grid

3.3.2 En utilisant la fonction « Mesh  »

Pour tracer une fonction à deux variables ; c à d une fonction de la forme z=f(x,y) ; on suit les étapes suivantes
 on définit un maillage régulier, c à d on va construire deux matrice X et Y dont leurs colonnes sont
identiques et prennent la valeur des deux vecteurs x et y. ceci est possible en utilisant la commande
« meshgrid ».Pour mieux comprendre cette notion du maillage essayer l’exemple suivant.
Exemple :

x = [-1 0 1];
y = [9 10 11 12];
[X,Y] = meshgrid(x,y)

 on donne la formule permettant de définir la matrice Z

Z= f(X,Y)
 on utilise la commande « mesh » pour tracer le graphe 3D.

Exemple

2 2

On veut tracer la fonction f définie :( x , y )→ x e−x − y définie dans le domaine [-2,2]x[-2,2].

x=[-2:0.2:2];
y=[-2:0.2:2];
[X ,Y]=meshgrid(x,y);
Z=X.* exp(-X.^2-Y.^2);
mesh(X, Y, Z)

y(x)
1 Max
sin

0.8

0.5
0.6
0.4

0.3
0.4

0.2

0.2 0.1

0 -0.1
y

-0.2

-0.2 -0.3

-0.4

-0.4
-0.5
2
1.5
-0.6 1 2
0.5
1
0
-0.8 -0.5 0
-1
-1
-1.5
-2 -2
-1
0 2 4 6 8
temps

3.3.3 En utilisant la fonction « surf »

TP préparé par : Beji Mohamed Page 12


TP : outils logiciel 2eme année CIP
La commande « surf » permet de tracer une surface paramétrée d’équations
x=g 1(u , v)

{ y=g2 (u , v )
z=g3 (u , v )

On suit les mêmes étapesque la commande « mesh ».

Exemple

On veut tracer le graphe du système d’équations suivant

x=v cos (u)


{ y=v sin ⁡(u)
z=2u

Sur le domaine [0,2 π ] x [0,2]

v=[0:0.2:2*pi];
u=[0:0.2:2];
[U,V] = meshgrid(v, u);
X = V.*cos(U);
Y = V.*sin(U);
Z = 2*U;
surf(X,Y,Z)

Remarques

 ils existent d’autres commandes pour faire une représentation 3D telles que « meshz », « waterfall »,…
etc.
 Utiliser la commande « help » pour avoir l’aide sur ces commandes.

3.4 Représentations spécifiques

Exemple 1 : la commande « bar »

a = [1 2 3 4 5 6 7];
b = [85 93 87 91 95 71 98];
bar(a,b);
xlabel('a')
ylabel('b')

Exemple 2 : la commande « hist »

TP préparé par : Beji Mohamed Page 13


TP : outils logiciel 2eme année CIP

y = -2*log(rand(1,5000));
x = 0.2:0.4:10;
hist(y,x);

Exemple 3 : la commande « pie »

pourcentage = [31 36 18 8 7];


h = pie(pourcentage);

Remarque : remplacer la commande « pie » par « pie3 ». Que ce passe t il ?

TP préparé par : Beji Mohamed Page 14

Vous aimerez peut-être aussi