Cours matlab gpe

Post on 25-May-2015

1.828 views 5 download

Transcript of Cours matlab gpe

Prof. Abdellah ADIB FI-GPE 2011-2012 1

Introduction à MATLAB

MATrix LABoratory

C’est un système interactif de programmation scientifique, pour le calcul numérique et la visualisation graphique.

Il est basé sur la représentation matricielle des données.

Le nom est dérivée de cette représentation MATLAB =

MATLAB

Prof. Abdellah ADIB FI-GPE 2011-2012 3

Plan du coursIntroduction et notions de base du MATLAB

Les fichiers et la programmation avec MATLAB

Instructions de contrôles sous MATLAB

Graphisme sur MATLAB

Fonctions d’entrée/sortie sous MATLAB

Prof. Abdellah ADIB FI-GPE 2011-2012 4

Comment programmer ?x=[2 3 7;

9 5 2;2 1 2];

X=inv(x); X= -0.2424 -0.0303 0.87880.4242 0.3030 -1.78790.0303 -0.1212 0.5152;

Y=sin(X); Y=0.9093 0.1411 0.65700.4121 -0.9589 0.90930.9093 0.8415 0.9093

Prof. Abdellah ADIB FI-GPE 2011-2012 5

Quelle version ?

Copyright (c) 1984-2011by

The MathWorks, Inc.

Prof. Abdellah ADIB FI-GPE 2011-2012 6

Qu’est-ce que MATLAB© ? Sur le plan de la programmation, le langage MATLAB© est basé sur une

structure de donnée où l’élément de base est le tableau avec un jeu d’opérations adapté à cette entité.

La syntaxe pour le traitement de variables qui se représentent sous la forme de vecteurs ou matrices, dont la dimension n’a pas à être fixée, se trouve simplifiée.

En plus une programmathèque permet des opérations variées et riches en fonctionnalités. MATLAB© est un outil puissant qui permet la résolution de nombreux problèmes en beaucoup moins de temps qu’il n’en faudrait pour les formuler en C ou en Pascal.

Prof. Abdellah ADIB FI-GPE 2011-2012 7

Qu’est-ce que MATLAB© ? Il consiste en un langage interprété qui s’exécute dans une fenêtre dite

d’exécution.

L’intérêt de MATLAB© tient, d’une part, à sa simplicité d’utilisation :

1) Pas de compilation, 2) Déclaration implicite des variables utilisées et, d’autre part, 3) A sa richesse fonctionnelle : arithmétique matricielle et nombreuses

fonctions de haut niveau dans divers domaines (analyse numérique, statistique, commande optimale, représentation graphique, ...).

Prof. Abdellah ADIB FI-GPE 2011-2012 8

Qu’est-ce que MATLAB© ?Logiciel interactif de calcul scientifique :Langage de programmation de haut niveauCalcul numériqueCalcul symboliqueCalcul matricielFonctions mathématiques usuelles (sin, exp, log10, …)Racines d’un polynôme Intégration numériqueBoites à Outils; e.g. Traitement Numérique du SignalGraphiques 1D, 2D & 3DEtc.

Prof. Abdellah ADIB FI-GPE 2011-2012 9

Domaines couverts par MATLAB©

Prof. Abdellah ADIB FI-GPE 2011-2012 10

Autres atouts de MATLAB© Ordinateur = super calculatrice Apprentissage facile, commandes intuitives Moins de C, Pascal, Fortran, Basic, etc. Inclusion des graphiques dans les documents Interaction avec des programmes externes Boites à outils couvrants une multitude de disciplines Une aide en ligne Sauvegarde de l’environnement du travail Etc. …

Prof. Abdellah ADIB FI-GPE 2011-2012 11

Set path

Fenêtre de commandes MATLAB©

Fenêtre de Commandes

Rappel ligne de commande

Matlab doit être installé, pour lancer l’exécution il faut effectuer un double clic sur l’icône de matlab.

Prof. Abdellah ADIB FI-GPE 2011-2012 12

Aide

Il est à noter que toutes les commandes sont en anglais et l’aide en ligne également !

Prof. Abdellah ADIB FI-GPE 2011-2012 13

Aide

Les commandes Matlab© doivent toujours être tapées en minuscules même si dans l'aide en ligne elles apparaissent en majuscules.

Prof. Abdellah ADIB FI-GPE 2011-2012 14

Types de données Dans Matlab il y a un seul type de données: le type de matrice

(matrix).

Tout est matrice → un nombre est une matrice carrée d’ordre 1.

Pas de déclaration de type.

L’utilisation ne s’occupe pas de l’allocation mémoire.

Les matrices et vecteurs peuvent être redimensionnées.

Prof. Abdellah ADIB FI-GPE 2011-2012 15

Variables MATLABVariable :

- Matrice m x n, m, n >1,- Vecteur 1 x n, n >1, - Scalaire 1 x 1

Nombres ou chaînes de caractères :- Nom_de_variable : aBz23k...

- 1er caractère = lettre - 19 premiers caractères reconnus - A a

Prof. Abdellah ADIB FI-GPE 2011-2012 16

Variables MATLAB Les noms des variables et de fonctions sont composés de

lettres et chiffres.

Matlab fait la distinction entre les majuscules et minuscules, ainsi mavar, MAVAR et MAvar sont des variables différentes.

Si la variable existe déjà, le contenu est écrasé par une nouvelle valeur affectée à cette variable.

Prof. Abdellah ADIB FI-GPE 2011-2012 17

Caractères et variables réservésCaractères spéciaux

= assignment statement[ used to form vectors and matrices] see [( arithmetic expression precedence) see (. decimal point... continue statement to the next line, separate subscripts and function arguments; end rows, suppress printing% comments: subscripting, vector generation! execute operating system command

Prof. Abdellah ADIB FI-GPE 2011-2012 18

Fonctions d’usage généralhelp help facilitydemo demowho list variables in memorywhat list M-files on disksize row and column dimensionslength vector lengthclear clear workspacecomputer type of computerquit quitexit exit

Prof. Abdellah ADIB FI-GPE 2011-2012 19

Caractères et variables réservésValeurs spéciales

ans answer when expression is not assignedeps floating point precisionpi i,j -1Inf NaN not-a-Numberclock wall clockdate dateflops floating point operation countnargin number of function input argumentsnargout number of function output arguments

Prof. Abdellah ADIB FI-GPE 2011-2012 20

Modes de Programmation

Interactif

Prof. Abdellah ADIB FI-GPE 2011-2012 21

Mode interactif

Prof. Abdellah ADIB FI-GPE 2011-2012 22

Prof. Abdellah ADIB FI-GPE 2011-2012 23

Vecteurs ou tableaux à 1 dimension Le moyen le plus simple de saisir un vecteur est d’entrer ses

éléments en les séparant par des blancs ou par des virgules

» x=[ 6 4 7]x=

6 4 7

Autre façon de saisir un vecteur ligne

» x=[6, 4, 7]x=

6 4 7

Prof. Abdellah ADIB FI-GPE 2011-2012 24

Vecteurs ou tableaux à 1 dimension Ce vecteur est considéré comme une matrice à une ligne et

trois colonnes

» size(x) Ou bien » [m n]=size(x)ans = m=1

1 3 n=3

La longueur d’un tableau, ou bien sa dimension

» longeur=length(x)longeur= 3

Prof. Abdellah ADIB FI-GPE 2011-2012 25

+ addition- subtraction* multiplication/ right division\ left division^ power‘ conjugate transpose

Opérateurs arithmétiques “Matrix” et “Array”

Opérateurs “Matrix” Opérateurs “Array”

Arithmétique élément-par-élément

+ addition- subtraction.* multiplication./ right division.\ left division.^ power.‘ transpose

Prof. Abdellah ADIB FI-GPE 2011-2012 26

Vecteurs ou tableaux à 1 dimension Si on veut créer le vecteur v=[6 4 7 1 2 8], on peut utiliser le

vecteur x précédent

» v=[x 1 2 8] %Concaténationv=

6 4 7 1 2 8

Dans Matlab, les indices d’un tableau commencent à 1. Pour récupérer une composante d’un vecteur, il faut spécifier son indice entre parenthèses:

» v(2)ans=

4

Prof. Abdellah ADIB FI-GPE 2011-2012 27

Vecteurs ou tableaux à 1 dimension L’addition et la soustraction de vecteur de mêmes dimensions se font

élément par élément

» x=[4 3]; y=[5 7]; x-yans=

-1 -4» x+yans=

9 10

Transposé conjugué < ’> et transposé d’un vecteur < .’>

» tx = x ’tx=

43

Prof. Abdellah ADIB FI-GPE 2011-2012 28

Vecteurs ou tableaux à 1 dimension Combinaison linéaire de deux vecteurs de mêmes dimensions se font

élément par élément

» x=[4 3]; y=[5 7]; 2*x - 4*yans=

-12 -22» 4*x + 3*y.^2ans=

91 159

Division de deux vecteurs

» x/ytx=

43

Prof. Abdellah ADIB FI-GPE 2011-2012 29

Vecteurs ou tableaux à 1 dimension» q = 4 : 10

q=4 5 6 7 8 9 10

» q(end)ans =

10

» q(end-4 : end)ans =

6 7 8 9 10

» q(endq(end-2 : end)ans =

8 9 10

Prof. Abdellah ADIB FI-GPE 2011-2012 30

sum : somme des composants d’un vecteur

» sum(x) % x=[4 3]; ans=

7

prod : produit des composants d’un vecteur

» prod(y)=ans=

70

Fonctions opérant sur des vecteurs

Prof. Abdellah ADIB FI-GPE 2011-2012 31

sqrt : racines carrées des composants d’un vecteur

» sqrt(x)ans=

2.000 1.7321

mean : moyenne des composantes d’un vecteur

» mean(x)ans=

2.3333

Fonctions opérant sur des vecteurs

Prof. Abdellah ADIB FI-GPE 2011-2012 32

find : recherche les indices et les valeurs des éléments non nuls

» X = [1 0 4 -3 0 0 0 8 6]; indices = find(X)indices =

1 3 4 8 9

» find(X > 2)ans=

3 8 9

Fonctions opérant sur des vecteurs

Prof. Abdellah ADIB FI-GPE 2011-2012 33

sort : ordonne les éléments du vecteur x par ordre croissant

» sort(x) % x=[3 5 1 9 2 -2 51 -8]ans=

-8 -2 1 2 3 5 9 51 linspace : génère un vecteur de N points équiespacés

entre deux points donnés

» y = linspace(0,1,6)y =

Columns 1 through 60 0.2000 0.4000 0.6000 0.8000 1.0000

Fonctions opérant sur des vecteurs

Prof. Abdellah ADIB FI-GPE 2011-2012 34

fliplr : fait tourner le vecteur de droite à gauche

» fliplr(x) % x=[3 5 1 9 2 -2 51 -8]ans=

-8 51 -2 2 9 1 5 3

flipud : fait tourner le vecteur du bas vers le haut

» y = flipud([1; 2; 9])y =

921

Fonctions opérant sur des vecteurs

Prof. Abdellah ADIB FI-GPE 2011-2012 35

Prof. Abdellah ADIB FI-GPE 2011-2012 36

Pour saisir une matrice, les lignes sont séparées par un point virgule

» x= [0 1 2; 3 4 5]x=

0 1 23 4 5

Ou bien en séparant les lignes par des retours à la ligne

» x= [0 1 2; 3 4 5 ]

Matrices ou tableaux à 2 dimensions

Prof. Abdellah ADIB FI-GPE 2011-2012 37

Dimensions d’une matrice x:

» [ m n ]=size(x)m=

2n=

3 Accès à un élément d’une matrice

» x(2,1) ans=

3

Matrices ou tableaux à 2 dimensions

Prof. Abdellah ADIB FI-GPE 2011-2012 38

Matrice identité (matrice carrée) :» I=eye(3)

I=1 0 00 1 00 0 1

Matrice unité

» U=ones(2,3) U=

1 1 11 1 1

Matrices particulières

Prof. Abdellah ADIB FI-GPE 2011-2012 39

Matrice nulle :

» Z=zeros(3)Z=

0 0 00 0 00 0 0

Matrice aléatoire (les éléments sont générés aléatoirement entre 0 et 1)

» A=rand(1,4) A=

0.6597 0.1458 0.2564 0.2131

Matrices particulières

Prof. Abdellah ADIB FI-GPE 2011-2012 40

» a= 1:5a=

1 2 3 4 5

» x= 0: pi/4: pi x=

0 0.7854 1.5708 2.3562 3.1416

» Em= 15: -3: 1 Em=

15 12 9 6 3

Formes particulières d’initialisation

Prof. Abdellah ADIB FI-GPE 2011-2012 41

Formes particulières d’accès» G=[2 1 6 -5; 3 9 11 4; 6 8 1 36; -1 5 -7 9; 9 5 3 1 ];

» G(2:3,4)’ ans=

4 36

» G([1 3 5],[2 3 4])ans=

1 6 -58 1 365 3 1

Prof. Abdellah ADIB FI-GPE 2011-2012 42

Exemple 1

Prof. Abdellah ADIB 43FI-GPE 2011-2012

Donner les valeurs de la fonction suivante

y = (x+2)2(x3+1)

pour des valeurs de x entre -1 et 3 avec un pas de 0.1

Solution :

» x=[-1:0.1:3];

» y = .*((x+2) ).^ 2 ((x.^3)+1);

Exemple 2

Prof. Abdellah ADIB 44FI-GPE 2011-2012

Construire la fonction

z = s2/(s3 + 1)

pour 200 valeurs de x entre -3 et 40.

Solution :

» s=linspace(-3,40,200);

» y = s.^2./(s.^3 + 1);

Exemple 3

Prof. Abdellah ADIB 45FI-GPE 2011-2012

Donner 50 valeurs du polynôme

y = x4 + x2 - 3

Entre x = -2 et x = 2.

Solution :

» x=linspace(-2,2,50);

» c = [1 0 1 0 -3];

» y = polyval(c,x);

Exemple 4

Prof. Abdellah ADIB 46FI-GPE 2011-2012

Soit la matrice F=[1 2 3; 4 5 6; 7 8 9], éliminer la deuxième colonne puis la première ligne

Solution :

» F(:,2) = []

F=1 2 34 5 67 8 9

» F(1,:) = []

F=4 5 67 8 9

Prof. Abdellah ADIB FI-GPE 2011-2012 47

Nombres complexes» i^2ans=

-1» j^2ans=

-1» a=3+2ia =

3.0000 + 2.0000i» w=r+exp(2*j*teta);» w=[1 2 8.3 sqrt(6)]+0,3*i*ones(1,4);

Prof. Abdellah ADIB FI-GPE 2011-2012 48

Fonctions d'arrondisround(x) : entier le plus proche de x,

» round(1.8356) » round(3.4356)

ans= ans=

2 3

floor(x) : arrondi par défaut,

» floor(3.9)

ans=

3

Prof. Abdellah ADIB FI-GPE 2011-2012 49

Fonctions d'arrondisceil(x) : arrondi par excès,

» ceil(1.8356) » ceil(3.4356) ans= ans=

2 4

fix(x) : arrondi par défaut un réel positif et par excès un réel négatif.

» fix(3.9) » fix(-2,1) ans= ans=

3 -2

Prof. Abdellah ADIB FI-GPE 2011-2012 50

Format : La manière d’apparition des nombres » s = [1/2 1/3 pi];» format short; ss =

0.5000 0.3333 3.1416» format long; ss =

0.50000000000000 0.33333333333333 3.14159265358979» format rat; ss =

1/2 1/3 355/113 » format bank; ss =

0.50 0.33 3.14

Prof. Abdellah ADIB FI-GPE 2011-2012 51

Exemple

Prof. Abdellah ADIB 52FI-GPE 2011-2012

Créer une matrice 4x2 tous zéros et la stocker dans une variable. Puis, remplacer la deuxième rangée dans la matrice par un vecteur se composant des 3 et des 6.

Trouver une manière efficace de reproduire la matrice suivante :

mat =7 8 9 1012 10 8 6

Puis, donner les expressions qui, pour la matrice mat de,

1. se rapporter à la deuxième rangée entière2. se rapporter aux deux premières colonnes

Exemple

Prof. Abdellah ADIB 53FI-GPE 2011-2012

Créer un vecteur de variable vect ; il peut avoir n'importe quelle

longueur. Puis, écrire les instructions qui permettent de stocker

la première moitié du vecteur dans une variable et la deuxième

moitié dans une autre variable. S'assurer que vos instructions

d'affectation sont générales, et opèrent correctement même si

le vect a un nombre pair ou impair d'éléments. (Conseil :

Employer une fonction d'arrondis telle que la difficulté.).

Prof. Abdellah ADIB FI-GPE 2011-2012 54

Prof. Abdellah ADIB FI-GPE 2011-2012 55

L'éditeur de scripts MATLAB

Prof. Abdellah ADIB FI-GPE 2011-2012 56

%*****************************%%* pivot_x.m *%%*****************************%echo offx=[1 2 3 4]x=fliplr(x)» pivot_xx =

1 2 3 4x =

4 3 2 1

Fonctions “usager” de type “script”Fonction sans argument

Variables globales

Prof. Abdellah ADIB FI-GPE 2011-2012 57

Fonctions “usager” de type “function”Les fonctions m-files sont des vrais sous programmes; puisque elles utilisent des arguments I et/ou O.

Variables autres que les I/O sont locales à la fonction

Syntaxe générale :

function [arguments de sortie] (arguments d’entrée)Nom_fonction=

Prof. Abdellah ADIB FI-GPE 2011-2012 58

function y = plptnb(n1,n2)% Retourne le plus petit de n1 ou n2%Notes : Un exemple de fonctiony = n2;if n1 < n2

y=n1;end;Return;

Exemple de “function”

» a=-2; b=3;» plptnb(a,b) » ans =

-2

Un seul argument desortie, pas de [ ]

Arguments d’entrée

Nom dela fonction

1er ligne, doit contenir la définition de la

fonction

1- Commentaire, qui apparaîtra en utilisant help2- Les informations dans Notes n’apparaîtrons jamais

Le corps de la fonction

» plptnb(-2, 3) » ans =

-2

Utilisation de la fonction

Prof. Abdellah ADIB FI-GPE 2011-2012 59

Organisation d'un programmeToute bonne programmation repose sur l'écriture d'un script principal qui fait appel à des fonctions autonomes. Cela permet :

• d'améliorer la lisibilité

• de tester indépendamment des parties de programmation

• d'augmenter le degré de généralité (utilisation d'une même fonction à divers endroits du programme, voire réutilisation des fonctions dans d'autres applications)

Prof. Abdellah ADIB FI-GPE 2011-2012 60

Comme dans l'exemple ci-dessus, le nom du script attaché à une fonction doit obligatoirement porter le nom de la fonction avec l'extension.m.

Structure d’un Bon programme

Prof. Abdellah ADIB FI-GPE 2011-2012 61

Prof. Abdellah ADIB FI-GPE 2011-2012 62

ExemplesÉcrire une fonction qui calculera le volume d'une sphère creuse, on adoptera la formule suivante : 43où est le rayon intérieur et est le rayon extérieur.

Écrire une fonction qui permet de construire la matrice suivante :

2 2 2 2 2 2 2 3 3 3 3 3 3 3 7 7 7 7 7 7 7 9 9 9 9 9 9 9 4 4 4 4 4 4 4

Prof. Abdellah ADIB FI-GPE 2011-2012 63

Prof. Abdellah ADIB FI-GPE 2011-2012 64

Les opérateurs logiques combinent des expressions booléennes :

En terme numérique, tout nombre non nul est considéré comme vrai

Opérateurs logiques

Prof. Abdellah ADIB FI-GPE 2011-2012 65

& : ET logique élément par élément

| : OU logique élément par élément

~ : NON (négation logique de l’opérande)

Liste des opérateurs

Prof. Abdellah ADIB FI-GPE 2011-2012 66

ET logique Cas de deux expressions logiques

x = 1; y = 3;w = -1; z = 10;(x>y) & (w>z) (x>y) & (w<z) (x<y) & (w<z) x & y est équivalent à (x ~ =0)&(y ~= 0)

Cas de deux vecteurs

u = [1 0 2 3 0 5]; v = [5 6 1 0 0 7];u & v 1 0 1 0 0 1

(VRAI FAUX VRAI FAUX FAUX VRAI)

0 (FAUX)0 (FAUX)1 (VRAI)

1 (VRAI)

Prof. Abdellah ADIB FI-GPE 2011-2012 67

Opérateur OU Cas de deux expressions logiques

x = 1; y = 3;w = -1; z = 10;(x>y) | (w>z) (x>y) | (w<z) (x<y) | (w<z) x | y (est équivalent à (x ~ =0) | (y ~= 0))

Cas de deux vecteurs

u = [1 0 2 3 0 5]; v = [5 6 1 0 0 7];u | v 1 1 1 1 0 1

(VRAI VRAI VRAI VRAI FAUX VRAI)

0 (FAUX)1 (VRAI)1 (VRAI)

1 (VRAI)

Prof. Abdellah ADIB FI-GPE 2011-2012 68

Opérateur NON (négation) Négation d’une expression logique

x = 1; y = 3;~(x>y)~(x<y)~(x==y)

Négation d’un vecteur

~u (u = [1 0 2 3 0 5])équivalent a u == 00 1 0 0 1 0

(FAUX VRAI FAUX FAUX VRAI FAUX)

1 (VRAI)0 (FAUX)1 (VRAI)

1 (VRAI)

Négation d’un scalaire

~y équivalent a y == 0

Prof. Abdellah ADIB FI-GPE 2011-2012 69

Prof. Abdellah ADIB FI-GPE 2011-2012 70

Les instructions de contrôle Les principales instructions de contrôle sous Matlab sont :

Instructions IF … ELSEIF … ELSE …Instructions sélectives

Instructions SWITCH … CASE … OTHERWISE…Chois ventilés

Instructions WHILE … FOR … (Boucles)Instructions répétitives

Instructions CONTINUE … Passage à l’itération suivante dans une boucle

Instructions BREAK … Arrêt de l’exécution d’une boucle

Prof. Abdellah ADIB FI-GPE 2011-2012 71

Prof. Abdellah ADIB FI-GPE 2011-2012 72

Instruction sélective IF La sélection if

Syntaxe :

if condition

séquence d’instructions Corps de la sélection

end

Mots clé

Fin de la sélection

Expression logique dont le résultat est soit 1 (vrai) ou 0 si (faux),

Prof. Abdellah ADIB FI-GPE 2011-2012 73

Instruction sélective IF … ELSE La sélection if … else … end

Syntaxe :

if condition

séquence d’instructions 1 Action

else

séquence d’instructions 2 Alternativeend

Mots clé

Fin de la sélection

Expression logique dont le résultat est soit 1 (vrai) ou 0 si (faux),

Prof. Abdellah ADIB FI-GPE 2011-2012 74

Instruction sélective IF … ELSEIF … ELSE La sélection if … elseif … else … end

Syntaxe :

if condition

séquence d’instructions 1 Action

elseif

séquence d’instructions 2 Alternative 1Else

séquence d’instructions 3 Alternative 2end

Prof. Abdellah ADIB FI-GPE 2011-2012 75

ExempleEcrire une fonction qui cherche la mention en fonction de la moyenne obtenue

function m = mention(moy)% Mention en fonction de la moyenne

if moy>=16m=’très bien’;

elseIf moy>=14m=’bien’;

elseIf moy>=12m=’assez bien’;

elseIf moy>=10m=’passable’;

elsem=’Ajourné’;

end

Prof. Abdellah ADIB FI-GPE 2011-2012 76

Prof. Abdellah ADIB FI-GPE 2011-2012 77

Instruction répétitive FOR La sélection for … end

Syntaxe :

for i = ind_debut : ind_fin

séquence d’instructions Corps de la boucle

end

Mots clé

Fin de la boucle

i variable appelée indice de la boucle

Prof. Abdellah ADIB FI-GPE 2011-2012 78

Instruction répétitive SWITCH La sélection switch … case c1 … case cn … otherwise … end Syntaxe :

switch varcase c1

séquence d’instructions 1. . . n choix ventiléscase cn

séquence d’instructions notherwise

séquence d’instructions par défaut end

var expression ou variable à évaluer, c1 … cn constantes représentant les possibilités d’évaluation de var.

Prof. Abdellah ADIB FI-GPE 2011-2012 79

Prof. Abdellah ADIB FI-GPE 2011-2012 80

Graphiques» x=0:0.05:(2*pi); » y=exp(-x).*sin(x);» plot(x,y);

Prof. Abdellah ADIB FI-GPE 2011-2012 81

Graphe plus lisible» axis([0 (2*pi) -0.1 0.4]);» title ('Exemple de graphique');» xlabel(‘Abscisse');» ylabel(‘Ordonnee');» grid;

Exemple de graphique

Ord

onne

e

Abscisse

Prof. Abdellah ADIB FI-GPE 2011-2012 82

Graphe avec plusieurs courbes superposées » y1=exp(-2*x).*sin(x);» y2=exp(-3*x).*sin(x);» y3=exp(-4*x).*sin(x);» plot(x,y,'-',x,y1,'-.',x,y2,'*',x,y3,'o‘ );

Prof. Abdellah ADIB FI-GPE 2011-2012 83

Graphe avec plusieurs courbes séparées » subplot(2,2,1), plot(x,y), title('y');» subplot(2,2,2), plot(x,y1), title('y1');» subplot(2,2,3), plot(x,y2), title('y2');» subplot(2,2,4), plot(x,y3), title('y3');

Prof. Abdellah ADIB FI-GPE 2011-2012 84

Graphe 3-D Supposons, par exemple que l'on veuille représenter la surface définie par la fonction z=sin(xy) sur le carré suivant [-p/2,p/2]x[-p/2,p/2] à l'aide d'une grille de points 31x31.

[xi,yi]=meshgrid(-pi/2:pi/30:pi/2); %(génération d'une grille régulière)

zi=sin(xi.*yi);surf(xi,yi,zi,zi); %(affichage de la surface)

On utilise la séquence de commandes :

Prof. Abdellah ADIB FI-GPE 2011-2012 85

>> Variable MATLAB matrice>> Opérateurs “matrix” et “array”>> Fichiers exécutables “.m” type “script” et “function”; >> Fichiers binaires “.mat” pour échange de données>> Extensions (toolboxes)

À retenir

Prof. Abdellah ADIB FI-GPE 2011-2012 86

RESTE MAINTENANT A APPRENDRE

LA VRAI PROGRAMMATION

SOUS MATLAB

!!!!!!!!!