1. Objectifs
apprendre à écrire des scripts.
savoir faire une représentation 2D et 3D.
2. Les scripts.
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.
Exercice 1
a=2 ;
b=5 ;
c=(a+b)/2 ;
disp (c)
Une fois, vous écrivez le programme vous devez le sauvegarder et lui donner un nom (dans notre exemple, on va
le nommé : programme).
Remarques importantes :
Pour exécuter un script, on écrit tout simplement son nom dans la fenêtre de commandes puis on clique sur
entrer.
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 :
12 24 36 58
2 6 8 10 ¿¿
7 9 11 13
La sous matrice M1
7 9 11 13
M 2= 2 6 8 10
12 24 36 58
Comme il est indiqué dans le TP No 1, MATLAB est un logiciel conçu pour les calculs scientifiques. Ceci
signifie que Matlab va aider l’utilisateur (ingénieur, étudiant, comptable,…) à résoudre un problème lié à 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
80
60
40
20
0
0 5 10 15 20 25 30 35 40 45 50
Exemple :
Pour représenter graphiquement le vecteur F, on peut taper tout simplement : plot (F).
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.
Le graphe de y(t)
L’axe
des cordonnées
a) quadrillage :
b) titres :
1- le titre principal.
c) les couleurs
Que remarquez-vous ?
d) le type de trait
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
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
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')
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.
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.
Subplot(n,m,k) avec
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
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;
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
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');
TP préparé par : N.Dib, R.Benali & O.Behadada Page 9
TP : Informatique 2eme année ST
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);
title('Az=90, El=0');
grid
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)
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)
x=g 1(u , v)
{ y=g2 (u , v )
z=g3 (u , v )
Exemple
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.
a = [1 2 3 4 5 6 7];
b = [85 93 87 91 95 71 98];
bar(a,b);
xlabel('a')
ylabel('b')
y = -2*log(rand(1,5000));
x = 0.2:0.4:10;
hist(y,x);