Vous êtes sur la page 1sur 20

Université des sciences et technologie houari Boumediene

Faculté: mathématique Département: analyse


Module: informatique Section :2eme licence mathématique

MATLAB
I. introduction à matlab:
1. Pourquoi matlab:
Mat (rix) lab(oratory) est un logiciel puissant doté à la fois d'un langage de
programmation haut niveau et d'outil dédiés au calcul numérique et à la
visualisation numérique. Développé en c par la société mathworks, matlab
était destinée initialement à faire du calcul matriciel simplement.
Actuellement, matlab recouvre d'autre domaine d'application de
l'informatique scientifique :
 Visualisation graphique 2D et 3D.
 Résolution d'équation aux dérivées partielle
 Optimisation
 Simulation

Le système matlab se divise en deux parties:

 Le noyau matlab, qui comprend:


 .l'environnement de travail offrant plusieurs facilité pour la
manipulation des données. Son interpréteur permet de tester
rapidement ses propres programmes matlab.
 Le système graphique matlab.
 Le langage de programmation matlab.
 Une librairie de fonction mathématique matlab.
 Un système d'interface facilitant l'exécution de programme C ou
fortran sous matlab.
 Une collection de toolboxes (boites d'outils) regroupant un ensemble
de fonction spécifiques.
2. Présentation de matlab
Si on lance matlab on remarque plusieurs fenêtres, parmi lesquelles on a :

Command Window: cette fenêtre permet l'utilisation directe des différentes


fonctions de matlab.

Command history : dans cette fenêtre on trouve l'ensemble des fonctions matlab
déjà applique.

Page 1
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Workspace: dans cette fenêtre on trouve des informations sur tous les variables
qui sont utilisés

Pour ajouter d'autre fenêtre on choisit le menu desktop puis la fenêtre qu'on veut
ajouter.

II. Notion de base


1. les opérations élémentaires
Les opérations élémentaires sous matlab sont : +, -, *, /, \ et ^.
Exemple:
Dans la fenêtre " command Windows" tapé les instructions suivants:
>> 2+5
>> 2-5
>> 2/5
>> 2\5
>> 2^5.
Question : quelle est la différence entre / et \? .
2. les variables matlab:
Un seul type de données existe sous matlab c'est le type matrice. Tout doit être
considéré comme des matrices un nombre est une matrice de taille 1*1; une
chaine de caractères est une matrice de taille 1*n. par conséquent les variables ne
sont pas besoin d'être déclares.
Le nom d'un variable peut être composé de lettre ou de lettre et chiffre.
Remarque: matlab fait la distinction entre minuscule et majuscule.

Page 2
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Exemple:
Dans la fenêtre " command Windows" tapé les instructions suivants:
>>A=2
>> a=3
>> a1= 4.
Question: Vérifier la fenêtre "Workspace". Quelle sont vous remarque?
Matlab fournit des fonctions permettant de lister les variables de l'environnement
de travail:
Who : liste le nom des variables courantes.
Whos : précise pour chaque variable courante: son nom, sa dimension, sa classe.
D'autres fonctions permettant de supprimer les variables:
Clear var: permet d'effacer la variable var de l'environnement de travaille.
Clear all: permet d'effacer toutes les variables de l'environnement de travaille.
Clc: effacer la fenêtre " command Windows"
Exemple:
Tester les 4 commandes précédentes.
2.1. Manipulation de chaine de caractère:
Une chaine de caractère est un tableau de caractères, une donnée de type
chaine de caractères (char) est représentée sous la forme d'une suite de
caractères encadre d'apostrophes simple('), il est possible de manipuler
chaque lettre de la chaine en faisant référence à sa position dans la chaine.
Exemple:
>>ch1='bon'
>>ch2='jour'
>>ch =[ch1,ch2]
>>ch(1), ch(7), ch(1:3)
>>ch3='soi'
>>ch=[ch(1:3),ch3,ch(7)]
>>ap='aujourd''hui'
3. variables spéciales
_

Il existe 7 fonctions (variables) spéciales qui sont :


Pi: 3.14
EPS : 2.2204 e-16 c'est une distance entre deux réelles informatiques
conséquence consécutives, cette valeur peut être modifié ; cette valeur est utilisée
au niveau des tests d'arrêt d'algorithme.
Inf: nombre infini.

Page 3
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
NAN (not a numbre): n'est pas un nombre. C'est par exemple le résultat de
l'opération 0/0.
Realmin: plus petit nombre flottant.
Realmax: plus grand nombre positif.
I,j: nombre complexe.
Exemple :
>>pi
>>eps
>>1/0
>>0/0
>>realmax
>>realmin
>>i
4. Les nombre complexe
Pour introduire un nombre complexe il suffit d'écrire a+bi ; a+b*i ou bien
a+b*sqrt (-1).
On peut aussi utiliser la forme exponentielle da la manière suivant: r*exp
(m*i).sachant que r représente l'argument et m l'ongle.
Pour déterminer la partie réelle d'un nombre complexe z, la partie imaginaire,
le conjugue, l'argument ou bien l'ongle on utilise respectivement les
fonctions : real(z), imag(z), conj(z), abs(z) et angle(z).
Exemple
» Z1=3+4*i
» Z2=5+2*sqrt(-1).
» Z=Z1+Z2
» Real(Z)
» Imag(Z)
» Conj(Z1)
» Abs(Z)
» Angle(Z)
5. Les commentaires
Pour ajouter un commentaire il suffit de taper % avant la phrase qu'on veut
l'écrire.
Exemple : >> z=3i+2 % z est un nombre complexe

Page 4
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
6. Mode d'affichage
Les résultats numériques sont affichés avec un format défini par défaut pour la
modifier on à deux possibilités:
 Sélectionne le menu file puis choisir Preferences.
 Utilise l'une des commande suivant: format short, format short e,
format short g, format long, format long e, format long g, format bank,
format rat, format hex,
Exemple :
» a=sqrt(2)/1000
» format long e
» a
Application: continuer à tester les différents modes d'affichage possible.
III. Manipulation des matrices et vecteurs
1. Vecteurs
On définit un vecteur ligne en donnant la liste des ses éléments entre crochets ([ ]),
les éléments sont séparer par un espace ou une virgule.

Pour définir un vecteur colonne il suffit de remplacer les virgules par des points
virgules.

Il est inutile de définir la taille de vecteur car elle sera établie de manière
automatique.

Pour transformer un vecteur linge X en vecteur colonne et réciproquement on


tape X'.

Length: cette commande est utilisée pour obtenir la taille de vecteur.

Exemple:
» A1= [1 2 3]
» A2= [4, 5, 6]
» A= [A1, A2] % concaténation de A1 et A2.
» Lenght (A) % afficher la taille de A.
» X1= [1;4;5]
» X2= [5;9;8]
» X=[X1;X2]
» X(2) % affiché un élément de vecteur x

Page 5
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
» X2= [X1, X2] % construire une matrice a partir de 2 vecteurs.
» B= [0:5:100] %afficher tout les multiple de 5 inférieur ou
égale à 100 dans un vecteur.
» B2= [0:0.2:2] % construit un vecteur tel que ses élément sont
des termes successif compris entre 0 et 2 d'une suite
arithmétique de raison 0.2

Remarque: contrairement au c++, il n'y a pas d'indice 0 dans les vecteurs et les
matrices en MATLAB

2. Les matrices
Les matrices suivent la même syntaxe que les vecteurs. Les composantes des
lignes sont séparées par des virgules et chaque ligne est séparée de l'autre
par un point virgule.
Un élément d'une matrice est référence par le numéro de la ligne et de la
colonne, A(i, j) présente le ieme élément de jeme colonne.
Exemple
» A1= [1 2 3;4 5 6] % la matrice A1 est de taille 2*3
» A2= [1 2; 3 4; 5 6; 8 9] % la matrice A2 est da taille 3*2
» A1(2,3) % accéder à l'élément de la 2eme ligne et 3eme
colonne
» A2 (1, 2)=15 % modifier la valeur d'un élément de la matrice.
» A3= [7 8 9 ; 10 11 12];
» A= [A1, A3] %concaténation de deux matrice.
» B= [A1; A3] % concaténation de deux matrice

Question: quelle est la différence entre les deux opérations de concaténation


précédent.

» B (:,2) % affiche la deuxième colonne de la matrice B


» B (3, :) % affiche la troisième ligne de la matrice B
» B (3, :)=[ 2 5 9]; % modifier les valeurs de colonne 3 de matrice B
» B(3,:)=[] % supprimer la troisième ligne de B
» B(:,3)=[] % supprimer la troisième colonne de A
» A (i:j,:); % sous matrice des lignes i à j
» A (i:j,k:l); % sous matrice des lignes i à j colonnes k à l

2.1 Fonction de base


ones(i,j): crée un tableau de i lignes j colonnes contenant des 1
zeros(i,j): crée un tableau de i lignes j colonnes contenant des 0

Page 6
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
eye(i,j): crée un tableau de i lignes j colonnes avec des 1 sur la diagonale
principale et 0 ailleurs
rand (i, j): donner une matrice de taille i*j qui suite la lois uniforme
randn (i, j): donner une matrice de taille i*j qui suite la lois normal
toeplitz(u): crée une matrice de Toeplitz symétrique dont la première ligne
est 1 élements du vecteur u
diag(u): crée une matrice carrée avec le vecteur u sur la diagonale et 0 ailleurs
diag(U): extrait la diagonale de la matrice U
triu(A): renvoie la partie supérieure de A
tril(A) : renvoie la partie inférieure de A
linspace(a,b,n): crée un vecteur de n composantes uniformément réparties de a à b
A\b: résolution du système linéaire Ax=b.
cond(A): conditionnement d'une matrice (norme euclidienne)
det(A): déterminant d'une matrice
rank(A): rang d'une matrice
inv(A) : inverse d'une matrice
pinv(A): pseudo inverse d'une matrice
svd(A): valeurs singulières d'une matrice
norm(A): norme matricielle ou vectorielle
trace(A):la somme des éléments de diagonale de la matrice A
magic(A)
U': prend le transposé de u
U*V: multiplication matricielle
U+V: addition matricielle
U-V: soustraction matricielle
U.* V: multiplication des tableaux u et v terme à terme
U./V: division du tableau u par le tableau v terme à terme
find(C(A)): indices des composantes du tableau A vérifiant la condition C(A)
sum(X): somme des éléments de X
prod(X): produit des éléments de X
mean(X):moyenne des éléments de X
Exemple:
» Ones(3)
» Zero(4,5)
» Eyse(3,2)
» Rand(3)
» Randn(2,3)
» toeplitz([1 2 3])
» diag([ 2 5 8])
» A=[ 1 2 3 ; 4 5 6; 10,8,9]
» Diag(A)
» Triu(A)
» Tril(A)
» linspace(5,7,20)

Page 7
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
» b=[ 5; 6; 7]
» A\b
» A1=[1 2 3; 4 5 6; 7 8 9]
» Det(A)
» Det(A1)
» Rank(A)
» Rank(A1)
» Inv(A)
» Pinv(A1)
» A1+B
» B-A1
» A1.*B
» A1*B
» A./B
» A.*B

Exercice1
On note u et v les nombres complexes
u = 11 - 7i v = -1 + 3i.
Calculer les modules de u et de v, les produits ; , la partie réelle et la partie
imaginaire de u3 + v2.

Exercice2
On note A, B et C les matrices suivantes

1. Calculer les matrices AB; BA et ABT.


2. Calculer les matrices D = I- BBT.
3. Calculer les déterminants des matrices A, B, C, D et E = AAT.
4. Calculer les inverses des matrices A, B, C, D et E = AAT.
5. Calculer les valeurs propres de la matrice E.
6. Déterminer les vecteurs propres de la matrice A.
Exercice3
Si on pose

Que font les instructions suivantes


 V=[1, 2, 4, 7];
 A(V)=A(V) + 0.01;

Page 8
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
 B(V)=abs(B(V));
 A (1 :2; 2:3)

IV. Les polynômes


1- Declaration
Pour définir un polynôme p(x)= anxn+an-1xn-1+……+a1x+a0 nous utilisons
la commande:
>> p=[ an an-1 …………………… a1 a0]
Exemple
P(x)=2x2+3x+1
>>P=[2 3 1]
S(x)= x3-x+2
>>S=[1 0 -1 2]
2- Operations polynomials sous MATLAB

Deconv : Cette fonction permet de faire une division polynomiale.


Exemple
P1(x)=2x5+3x+1
» P1=[2 0 0 0 3 1]
P2(x)=2 x4+1
» P2=[1 0 0 0 1]
PD=deconv(P1, P2)
Remarque:
Dans le cas général, la division peut ne pas donner un résultat exact,
il existe alors le quotient Q et le reste R qui peuvent être calculé
comme suit:
» [Q, R] = deconv (P1, P2)
Pour sommer ces deux polynômes on doit les définir comme s'ils sont de même
degré.
Exemple
Soit les deux polynômes p(x) et s(x) définissent comme suit
P(x)=x3-x+1, S(x)= x2+3x-4
» P= [1 0 -1 1];
» S= [0 1 3 -4];
» P+S
3- Racines d’un polynôme
Les racines d’un polynôme P sont données par la fonction roots
Exemple
P(x)= x4-3x2+x
>> P=[1 0 -3 1 0]

Page 9
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
>> racines = roots(P)

4- constRuction d’un polynôme


Poly(R): cette fonction permet de construire un polynôme P(x) dont ces
racines R sont données.
Exemple
Construire le polynôme P tel que ces racines sont : 1 0 -2
>>P=poly([1 0 -2])

5- evaluation d’un polynôme


polyval(p, x): cette fonction permet d’évaluer le polynôme p(x) pour un
ensemble donné de valeurs de la variable x, exprimé sous forme de
vecteur.
Exemple
P(x)=2x2-3x+1
» P=[2 -3 1]
» x=[1 2 3]
» VSOL=polyval(P, x)
6- déRivée d’un polynôme
Polyder(p): calcul la dérivée du polynôme p(x)
Exemple
P(x)=2x2-3x+1
» P= [2 -3 1]
» derivee=polyder(P)

Question: comment calculer le produit de deux polynômes.


Exercice 4 :
Soit le polynôme p(x) défini par : p(x)= 2x2-2x-1
Calculer les valeurs de p en -1 et 1
Calculer p’ et tracer la courbe de f sur l’intervalle [0, 10]

Exercice 5 :
Soit le polynôme p(x) défini par : p(x)= 2x2-2x-1
1- Evaluer le polynôme p(x) sur l’intervalle x=[0, 1] avec le pas=0,01
2- Calculer la dérivée de p et tracer sur le même graphique le polynôme et sa
dérivée sur l’intervalle x.
Exercice 6:
Entrer les polynomes p=2x5-x2+5x et q=x2+1s
Calculer les racines de p et q
Calculer p’
Calculer le produit p.q
Calculer le quotient et le reste de la division de p par q

Page
10
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Calculer les valeurs de p en 0 et -1
Tracer la courbe d’équation y=p(x) sur [-10, 10]
Exercice 7 :
Construire les polynômes p et q tel que :
Les racines de p=[2 3] et les racines de q=[-1 1]
Calculer p’
Calculer le produit p.q
Calculer le quotient et le reste de la division de q par p
Calculer les valeurs de p en 3 et -1
Tracer la courbe d’équation y=p(x) sur [-20, 20]
V. Les fonctions sous MATLAB
1- déclaRation d’une fonction
a) Fonction à une variable
Syntaxe : nom de la fonction=inline('expression de la fonction')
Exemple
F(x)=2x2+sin(x)
>> F=inline('2 x^2+sin(x)')
b) Fonction à plusieurs variables
Syntaxe:
Nom_f=inline('expression de f', 'var 1', 'var 2', ….., 'var n')
Exemple
» G(x, y)=2xy+x2+y2
» G=inline ('2 x y+x^2+y^2', 'x', 'y')
2- Evaluation d'une fonction
Le calcul se fait par nom de la fonction
Exemple
On prend les fonctions des exemples précédents :
» F(3)
» G(6,1)
VI. Programmation avec matlab
1. Les opérateurs de comparaison et opérateurs logiques
Les opérateurs de comparaison sont: = =, <,>, >=, <= et =
Les opérateurs logiques sont: et (x & y), ou (x|y), non (x),
xor (x, y): ou exclusif
any(x): retourne 1 si un élément de x et nul.
All(x):retourne 1 si tous les éléments de x sont nul
2. les boucles
2.1 La boucle for :
La boucle la plus utiliser pour effectuer une opération d'une façons répétitif est
la boucle for, la syntaxe est:

Page
11
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
For indice=borne _ inf : borne_sup
Sequence d' instructions end
Exemple:
» x=1;
» For i=1:10
x=x+2*i+x^2
end
2.2 la boucle while
La deuxième façon pour exécute une séquence d'instruction est
d'utiliser la boucle while, la syntaxe et:
While instruction logique
Séquence
End
Exemple
» x=2;
» y=1;
» while y<100
» y=y+2*x^2;
» end;
» y
3. L'instruction conditionnée if
Pour exécuter une séquence d'instruction seulement dans le cas où une
condition est vérifie on doit utilise une instruction conditionnelle telle que if;
la syntaxe est:
If instruction logique
Séquence d'instruction
End
Il existe une séquence conditionnelle sous forme alternative
Syntaxe:
If expression logique
Séquence d'instructions1
Else
Séquence d'instruction 2
End

Il est possible d'effectuer un choix en cascade:


Syntaxe:
If expression logique1
Séquence d'instructions 1
Elseif expression logique 2

Page
12
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Séquence d'instruction 2
.
.
.
Elseif expression logique N
Séquence d'instruction N
Else
Séquence d'instruction par défaut
End
4. L'instruction switch :
Une alternative à l'utilisation d'une séquence d'instructions conditionnées pour
effectuer un choix en cascade existe. Il s'agit de l'instruction switch.
Syntaxe:
Switch var
Case cst_1,
Sequence d'instructions 1
Case cst_2,
Sequence d'instruction 2
.
.
.
Case cst_N ,
Séquence d'instructions N
Otherwise
Séquence d'instruction par défaut
End
5. scripts et fonctions
il est possible d'enregistrer une séquence d'instruction dans un
fichier (appelé un "M-file") et de les faire exécuter par matlab.
Un tel fichier doit obligatoirement avoir une extension de la
forme .m (d'où le nom M-file) pour être considéré par matlab
comme un fichier d'instruction. On distingue 2 types de M-file,
les fichiers de scripts et les fichiers de fonctions.
Un script est un ensemble d'instructions matlab qui joue le role
d'un programme principal. Si le script est écrit dans le fichier de
nom nom.m on l'exécute dans la fenêtre matlab en tapant nom.
Utiliser un script est très utile. Il est en effet beaucoup plus
simple de modifier des instructions dans un fichier l'aide d'un
éditeur de texte que retaper un ensemble d'instructions dans la
fenêtre de commande.

 Habituellement Un script et utiliser afin de:

Page
13
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
 Initialiser le système.
 Déclarer les variables.
 Effectuer les opérations.
 Appeler les fonctions.
 Tracer les figures.
L'idée de base d'une fonction est d'exécuter des opérations sur une ou plusieurs
entrées ou arguments pour obtenir un résultat qui sera appelé sortie. Il est
important de noter que les variables internes ne sont pas disponibles à l'invite
MATLAB.
Habituellement, on utilise les fichiers FUNCTION afin de :
 Programmer des opérations répétitives
 Limiter le nombre de variables dans l'invite MATLAB
 Diviser le programme (problème) de manière claire.
On définit la fonction fonc de la manière suivante:
Function [vars1,…,varsn]=fonc(vare1,…,varen)
Séquence d'instruction

Vars1,…,varsn sont les variables de sortie de la fonction.
Vare1,…,varen sont les variables d'entre de la fonction.

Séquence d'instructions sont les variables d'entrée de la fonction

VII. Graphisme
Matlab permet de faire des dessins en 2D et 3D cette propriété permet de
donnée une très bonne présentation graphique pour tout phénomène
Etudier.
1. Graphe à 2d
Pour dessiner un graphe en 2D matlab nous propose plusieurs fonctions
possibles parmi lesquelles on a:
Fplot : cette commande permet de tracer la courbe d'une fonction f définir
sur un Intervalle.
La syntaxe est: fplot('nom de fonction',[xmin , xmax ])
On peut aussi tracer plusieurs fonctions au même temps. la syntaxe est:
Fplot('[f1,f2,f3]',[xmin1,xmax1,xmin2,,xmax2;xmin3;xmax3])
Exemple
» Fplot('sin',[0,10])
» Fplot('x*sin(x)',[-2*pi,2*pi])
» Fplot('[x^2*sin(x),sin(x)*cos(x),cos(x)^2]',[-2*pi,2*pi,-
2*pi,2*pi,pi,3*pi])

Page
14
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Plot: cette commande permet de dessiner une courbe a partir des donner qui
sont regrouper dans deux vecteur X et Y.
La syntaxe est :
Plot(X,Y,ctm)
Sachant que ctm présente la couleur(c) et le style de la courbe(tm).
Les différente styles et couleurs possible sont regrouper dans le tableau
suivant:

Couleur Style
Y Jeune - Trait continu(t)
M Magenta : Ponctuation(t)
C Cyan -. Trait point(t)
R Rouge -- Tirets(t)
G Vert + Plus(m)
B Bleu O Cercle(m)
W While * Etoile(m)
K Noir X Croix(m)
Exemple

» X=-2*pi:0.01:2*pi;
» Y=sin(x);
» Plot(x, y);

» X1=-2*pi:0.5:2*pi;
» y=sin(x1);
» plot (x1, y1, 'r-+');
Question: comparait entre les deux exemples, quelle sont tés remarques.
 Remarque 1:
Pour dessiner plusieurs fonction sur la même figure on doit ajouter
la commande " hold on" avant la deuxième commande plot.

Exemple :

» X= [-2*pi:0.01:2*pi];
» Y1=sin(X);
» Y2=cos(X);
» Plot(X, Y1);
» Hold on
» Plot(X,Y2,' r+-')

Question : remplacer la commande 'hold on ' par la commande 'figure'

Page
15
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
 Remarque 2 :
Pour dessiner plusieurs graphe sur la même figure on peut aussi
utilise la syntaxe suivant: plot(x1,y1,'r',x2,y2,'b').

Question : utilisez la deuxième méthode pour dessiner la fonction sin et cos dans
le même graphe.

 Remarque 3:
Les commandes 'xlabel', 'ylabel' et 'title' sont utilisées Pour afficher
une chaîne de caractères respectivement pour la légende de l’axe des
abscisses, celle de l’axe des ordonnées, et un titre.

Exemple :

» xlabel('x');
» ylabel('f(x)');
» title('f= cosinus');

» x = -pi: 0.2 :pi;


» y1 = sin(x);
» y2 = cos(x);
» plot(x,y1,'k*',x, y2, 'ko');
» xlabel('x');
» ylabel('f(x)');
» title('fonctions trigonometriques');
» legend('sinus', 'cosinus');

» axis([-1.1 1.1 -1.1 1.1]) % définit l'échelle des axes


» x = [0:0.01:2*pi] ; y =cos(3*x) ;
» z = sin(2*x);plot(x,y,x,z);
» legend(’cos(3x)’,’sin(2x)’); %chaque tracé est associé à une légende
» title(’Courbe de Lissajoux’);
» xlabel(’x : axe des absisses’);
» ylabel(’y : axe des ordonnees’);
» grid % affiche une grille
Pour ajouter de texte sur le graphe on utilise l'une des commandes suivantes:

Text (x,y,'texte') : place texte à la position x y dans la fenêtre.

gtext ('texte") : place texte à la position définie avec la souris.

Une fenêtre graphique peut être subdivisée en plusieurs tracés,

Page
16
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
subplot(n,p,q): subdivision en n*q dessin et sélectionne à qième

Exemple:

» x=-2*pi:0.01:2*pi;
» y1=sin(x);
» y2=cos(x);
» y3=x.*sin(x);
» y4=cos(x)./x;
» subplot(2,3,1)
» plot(x,y1)
» subplot(2,3,2)
» plot (x,y2)
» subplot(2,3,5)
» plot(x,y3)

On peut utiliser certaine fonction pour modifier la position ou le type des


axes:
Loglog (x, y): tracé de la courbe passant par les points (x, y) avec échelle
logarithmique sur les deux axes
Semilogx (x, y): tracé de la courbe passant par les points (x, y) avec échelle
logarithmique sur l'axe OX
semilogy (x, y): tracé de la courbe passant par les points (x, y) avec échelle
logarithmique sur l'axe OY
plotyy (x, y, x, z): courbe (x, y) avec l'axe 0Y à gauche, et courbe (x, z) avec l'axe
0Z à droite.
Polar: graphique en coordonnées polaires.
Application:
Refaire l'exemple précédent et modifier chaque fois le type et la position des
axes
Exemple
» t = 0:.01:2*pi;
» polar(t, sin(2*t).*cos(2*t),'--r')
» hold on
» polar(t,sin(2*t+2).*cos(2*t+2),'--r')
comet: cette fonction permet de faire des petit animation en 2 D
t =0:.01:2*pi;
x =cos (2*t).*(cos(t).^2);
y=sin(2*t).*(sin(t).^2);
comet(x,y);

Page
17
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
2. graphe à 3D :
plot3: est une fonction permet de dessiner un graphe en 3D, la syntaxe de
commande est plot3(x, y, z) où x, y et z sont des vecteurs de même
dimension contenant les trois coordonnées
Exemple
» t = 0:0.1:6*pi;
» x = exp(0.05*t).*cos(t) ;
» y = exp(0.05*t).*sin(t) ;
» z=t;
» plot3(x, y, z)
Contour: cette commande permet de tracer les courbes de niveau d'une
équation de deux variables.
Avant de tracer les lignes de niveaux on doit commencer par la création d'un
maillage sur le domaine [amin, amax]*[bmin*bmax] à l'aide de la
commande meshgrid.
Exemple:
» [x,y]=meshgrid(-2:.2:2,-2:.2:2);
» z=x.*exp(-x.^2-y.^2);
» contour(x,y,z)
» contour(x, y ,z,30)
» [c,h]=contour(x,y,z,7)
» Clabel(c,h)

» [x,y]=meshgrid(-2:.2:2,-2:.2:2);
» z=(x-1).^2+10*(x.^2-y).^2;
» [c,h]=contour(x,y,z,30);
» Clabel(c,h,'manual')
» Contourf(x, y, z, 30);
» Colormap(cool);
Mesh, surf: sont deux commandes qui permet de tracer des surface pour des
fonctions à deux variables.
Exemple:
» [x,y]=meshgrid(-2:.2:2,-2:.2:2);
» z=x.*exp(-x.^2-y.^2);
» mesh(x,y,z)
» z=abs(z)
» surf(x,y,z)
Application :
 Remplacer la commande mesh par les commandes meshc et meshz
 Teste la commande comet3, sphere,

Page
18
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Exercice 8

On veut obtenir la représentation graphique de la fonction y  e  x sin(4 x) sur


l’intervalle [0, 2]. Tracer la représentation graphique de y sur l’intervalle

[0, 2]
1- Dans une même fenêtre tracer les courbes d’équations y  x 2 en rouge et
y  x 2 sin( x)e  x en vert sur [-1 , 1] (pas=0,1)
2- Tracer dans un même graphe les trois courbes 2D : y1=x sin(x), y2= x, y3=-
x sur l’intervalle [-n*pi, n*pi] avec un pas de pi/2*n. (n=5 et 6)
Exercice 9 :
Soient les vecteurs :
X= [1 3 4 10] ; Y= [1 -2 7 6] ; Z= [0 2 5 -1] ;
Tracer la représentation graphique des vecteurs X,Y puis X ,Z dans des figures
différents
1- dans le même graphique
2- dans la même figure
Exercice 10
Soit le vecteur x=[1, 1000] et la fonction y= x3
1- Tracer la courbe y en utilisant une échelle logarithmique (à l’aide de la
commande loglog)
2- Tracer la courbe y en utilisant une échelle logarithmique sur l’axe des x et
une échelle linéaire sur l’axe des y ( semilogx )
3- Tracer la courbe y en utilisant une échelle linéaire sur l’axe des x et une
échelle logarithmique sur l’axe des y ( semilogy)
Exercice 11
Tracer sur la même figure les graphes de la fonction y  e  x sur l’intervalle x=[-2,
2/2

2] avec un pas de 0,1 dans l’ordre suivant :


Diagramme en bâtons (commande stem(x,y)),
diagramme en barres (commande bar(x,y)),
diagramme en escalier (commande strairs(x,y))
Courbe continue (commande plot(x, y))
Exercice 12
Représenter sur trois graphiques différents les fonctions f1, f2 et f3 sur les
intervalles I donnés :
f1  x sin( x) I  [0,2 ]
f 2 ( x)  xe x I  [1,1]
2

f 3 ( x)  exp( x log( x _ x) I  [3,3]


Ajouter à chacun des graphiques des titres, couleurs différents, légendes et une
grille.

Page
19
Université des sciences et technologie houari Boumediene
Faculté: mathématique Département: analyse
Module: informatique Section :2eme licence mathématique
Exercice 13
On considère la courbe paramétrée définie par :
 x(t )  cos(t ) / t

 y (t )  sin(t ) / t pour t  [ , 20 ]

1- Représenter sur un même graphique x et y qui sont deux fonction de t


2- Sur un autre graphique représenter la courbe paramétrée
Exercice 14
Construire la courbe de R3 paramétrée par
 x(t )  cos(3t )

 y (t )  sin(2t ) t  [0, 10 ]
z  t

Exercice 15
Construire la surface (on utilisant les deux commandes surf et mesh) d’équation :
sin(r )
z où r  x 2  y 2  1 avec  5  x  5, - 5  y  5 et un pas de 0,2
r

Exercice 16
On cosidére la fonction f :R2→R3 , définie par
f ( x, y)  ( x 2 , y 2 , sin( xy ))
Dessiner la surface de R3, image du rectangle [0, 5]  [-1.5, 1.5] par la

Page
20