Méthodes numériques
Initiation à Matlab
Master 1 Génie civil – Géotechnique
Promo: 2022-2023
Dr. TEVI
1
Sommaire du cours
• Présentation
• Du cours
• De l’interface Matlab
• Installation
• Variables et Types de données
• Vecteurs
• Matrices
• Polynômes
• Opérations : particularités
• Graphiques
• Scripts
• Lecture et écriture des données
• Applications
2
7- Graphiques
• Nous avons vu qu’il est possible de faire certains manipulations à
partir des valeurs ou données que l’on a (création, ajout, opérations
arithmétiques et logiques, extraction etc…)
• Il peut être nécessaire de représenter ces données pour une:
• Analyse de cohérence
• Vérification et détermination d’une tendance
• Observation de l’évolution des données selon un axe
• Visualisation de l’existence de points particuliers
• La représentation graphique est donc importante : elle peut se faire
en 2D ou en 3D. 3
7- Graphiques (suite)
• Graphique 2D : les commandes utilisables sont plot, fplot, semilogx
• >> plot(x,y) : tracera y = f(x) ; l’intervalle ou le vecteur de données x ayant
été défini ou calculé au préalable, y étant un jeu de données ou une fonction
mathématique
• >> fplot(‘y’,[min,max]) : fait la même chose que plot, avec [min,max]
servant à régler l’axe des abscisses
• >> semilogx(x,y) : pareille à plot sauf que l’axe des abscisses sera
logarithmique; et vice-versa pour semilogy(x,y) où l’axe des ordonnées sera
logarithmique
4
7- Graphiques (suite)
• Exercice d’application 3: (Pratique sous Matlab)
>> x=0:2*pi/100:2*pi; y = sin(x);
>>plot(x,sin(x)) ou plot(x,y)
• Exercice d’application 4: (Pratique sous Matlab)
>>x=0:2*pi/100:2*pi; t=cos(x); y=sin(x);
>>plot(cos(x),sin(x)) ou plot(t,y)
• Exercice d’application 5: (Pratique sous Matlab)
>>x=0:0.1:10*pi;
>>y=sin(x);
>> z=sqrt(x);
>>t=sin(x).*sqrt(x);
>>plot(x,y,x,z,x,t) ou plot(x,sin(x),x,sqrt(x),x,sin(x).*sqrt(x))
5
>>plot(x,y,z,t) : Pas de représentation similaire au précédent
7- Graphiques (suite)
• Division de la zone graphique:
• >> subplot(m,n,i) : permet de diviser la zone graphique, avec m le nombre
de fenêtres horizontales, n le nombre de fenêtres verticales et i l’indice de la
fenêtre où l’on place un graphique donné (décompte de gauche à droite et de
haut en bas)
• Exercice d’application 6: (Pratique sous Matlab)
• >> subplot(2,2,3) : représente
• Exercice d’application 7: (Pratique sous Matlab) (à partir des exercices
d’application précédents)
>>subplot(221),plot(x,y);subplot(222),plot(x,z);subplot(224),plot(x,t) 6
7- Graphiques (suite)
• Division de la zone graphique
• Exercice d’application 8: (Pratique sous Matlab)
>>x=0:0.1:10*pi; y=sin(x); z=sqrt(x); t=sin(x).*sqrt(x);
>>subplot(221),plot(x,y);subplot(222),plot(x,z);subplot(224),plot(x,t)
Taper les instructions suivantes:
>>subplot(2,2,1),plot(x,y), hold on
>>subplot(222),plot(x,z)
>>subplot(224),plot(x,t)
• Par ajout de l’instruction hold on , on force Matlab à garder en mémoire la dernière
instruction
• Création de plusieurs zones graphiques: >> figure(i) permet d’ouvrir plusieurs
zones graphiques; i étant le numéro de la zone graphique
• Exercice d’application 9: (Pratique sous Matlab)
Taper les instructions suivantes
• figure(1), plot(x,y)
• figure(2), plot(x,z)
• figure(3), plot(x,t) 7
7- Graphiques (suite)
• Remarque importante:
• Il est nécessaire de définir une série raisonnable en abscisses
• Le nombre de points doit être suffisant pour que le tracé de la courbe soit
représentatif de la courbe que l’on trace
• Le nombre de points doit être nécessaire pour ne pas avoir trop de points qui
n’aident en rien et alourdissent la mémoire utilisée
௫ ି௫
• Choisir par défaut : ೌೣ
• Il est impératif que le vecteur de données d’abscisses soit de même longueur
que le vecteur de données d’ordonnées sinon une erreur sera signalée
8
7- Graphiques (suite)
• Couleurs et styles des graphiques : à spécifier entre ‘’ après chaque couple (x,y)
help plot
9
7- Graphiques (suite)
• Couleurs et styles des graphiques : help plot
10
7- Graphiques (suite)
• Exemple 16 : (Pratique sous Matlab)
• Tracer sin(x) et cos(x) sur
un même graphe tel que l’on ait:
Solution: Commande
>>plot(x, sin(x), ‘:r’, x, cos(x), ‘b-.^’)
ou
>>plot(x, sin(x), ‘:r’); hold on
>>plot(x, cos(x), ‘b-.^’)
11
7- Graphiques (suite)
• Graphique 3D : plot3
• >> plot3(x,y,z) : tracera une courbe d’axes x, y et z en fonction des expressions
données
• Exemple 17 : (Pratique sous Matlab)
>> t = 0:0.05:25; x= exp(-0.05*t).*cos(t); y = exp(-0.05*t).*sin(t); z=t;
a=linspace(0,6*pi,100); n=a.*sin(a); q=exp(a/10) -1;
>> subplot(121); plot3(x,y,z) : tracera donc la courbe voulue avec pour variable t;
>> subplot(122); stem3(a,n,q, ‘mp’): tracera donc la courbe voulue avec pour variable
a
12
7- Graphiques (suite)
• Utilité des couleurs et styles des graphiques :
• La représentation de données scientifiques nécessitent de différencier les données
expérimentales, par nature un ensemble discontinu de valeurs généralement sans
style, avec des marqueurs de points
• La représentation des données issues d’un modèle ou d’une équation continue, avec
un style de ligne au choix et avec ou sans marqueurs
13
7- Graphiques (suite)
• Compléments sur les graphiques
• >> xlabel(‘….’); ylabel(‘….’) , zlabel(‘….’) : permettent de nommer les axes x, y et z
• >> title(‘….’) : permet de donner un titre à la figure
• >> legend(‘….’) : permet d’ajouter une légende, utile surtout s’il y a plusieurs
courbes
• >> grid on ; hold on : permettent respectivement de créer une grille (maillage) et de
ne pas effacer la(les) figure(s) tracée(s) afin d’en ajouter d’autres
• >> axis([xmin xmax ymin ymax]) : permet de limiter un graphique selon les axes
précisés
14
7- Graphiques (suite)
• Compléments sur les graphiques
• Exemple 18 : (Pratique sous Matlab)
• reprendre le tracé suivant:
• En ajoutant :
• Des noms aux axes
• Un titre à la figure
• Une grille (maillage)
• Une légende
• Exemple 19 : (Pratique sous Matlab)
reprendre le tracé de l’exemple 17 et
faire la même chose que dans
l’exemple 18 pour chaque fenêtre
15