Initiation A MATLAB

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 52

®

Initiation à MATLAB

Pierre FRANCOIS

CNAM - Fabrications Mécaniques


INGENIEURS 2000 - ESCPI & UMLV

Déc.1996 - révisions: Sep.98, Aout 99


Avant propos

Ce document s’adresse à mes étudiants du CNAM et de la


formation INGENIEURS 2000. Je l’ai écrit pour les aider à
se familiariser avec le logiciel de calcul que j’utilise pour les
travaux dirigés et les manipulations de mes différents cours.
Mes collègues et moi même avons choisi MATLAB pour sa
facilité de mise en oeuvre, l’étendue de ses possibilités de cal-
cul matriciel, et la richesse des représentations graphiques.

MATLAB est un outil perfectionné qui apporte une assistance très complète pour l’ana-
lyse numérique, la simulation de systèmes complexes, et chaque fois que la représenta-
tion graphique de données est indispensable.

Il a trouvé sa place dans le secteur universitaire pour l’enseignement et la recherche ain-


si que dans le secteur industriel pour la simulation et le recalage modèle / expérience.

Des fonctions spécifiques sont développées en permanence par ses utilisateurs. Elles
sont regroupées dans des boîtes à outils destinées à des domaines très variés.

Pour mes étudiants qui seraient séduits par le logiciel, je signale qu’il existe une version
“étudiant” plus simple que le logiciel professionnel mais mieux adapté a leur porte-mon-
naie...

Les informations apportées par ce guide ont été rédigées à l’origine pour la version 4 de
MATLAB. Elles décrivent les fonctions élémentaires du logiciel qui retrouvent, en toute
logique, le même principe dans des versions plus récentes.

Ce document contient une première partie destinée à la prise en main du logiciel.


La seconde rassemble des exercices simples pour que le lecteur puisse s’auto-évaluer,
la troisième est un mini guide de référence des fonctions élémentaires de MATLAB.
Les lecteurs qui désirent en savoir plus trouveront d’autres sources d’information dans
les annexes.

Bienvenue dans l’univers MATLAB...

Initiation à MATLAB 1
Table des matières

Avant propos
Table des matières

Chapitre 1 Les fonctions élémentaires


1 Les différents types de variables.................................................................................................. 5
1.1 Les scalaires ............................................................................................................... 5
1.2 Les vecteurs et tableaux ............................................................................................. 6
1.3 Les matrices prédéfinies ............................................................................................ 8
2 Extraction d'une partie de matrice.............................................................................................. 10
2.1 Principe .................................................................................................................... 10
2.2 Les sous-matrices ..................................................................................................... 10
2.3 Les lignes et les colonnes ......................................................................................... 10
3 Les opérations sur les matrices .................................................................................................. 12
3.1 Somme, soustraction ................................................................................................ 12
3.2 Produit matriciel, puissance ..................................................................................... 12
3.3 Produit terme à terme ............................................................................................... 12
3.4 Transposée, déterminant, inverse ............................................................................. 12
4 Les expressions logiques............................................................................................................ 13
4.1 Les relations d’ordre ................................................................................................ 13
4.2 Les opérations booléennes ....................................................................................... 14
4.3 Les tests de valeur .................................................................................................... 15
5 Les instructions conditionnelles................................................................................................. 16
5.1 Instructions conditionnelles de type SI, ALORS, SINON ....................................... 16
5.2 Instructions conditionnelles de type TANT QUE .................................................... 17
5.3 Instructions répétées pour différentes valeurs d’une variable ................................. 17
6 Les graphiques ........................................................................................................................... 18
6.1 Les courbes 2D et 3D ............................................................................................... 18
6.2 Les surfaces .............................................................................................................. 19
7 Les fichiers de commandes ........................................................................................................ 20
7.1 Les fichiers script ..................................................................................................... 20
7.2 Les fichiers fonction ................................................................................................ 20
7.3 La structure et la syntaxe ......................................................................................... 20
7.4 L’échange de valeurs ............................................................................................... 20
8 La sauvegarde des données ........................................................................................................ 22
8.1 Fichiers binaires ....................................................................................................... 22

Initiation à MATLAB 2
Chap. : Table des matières

8.2 Fichiers texte ............................................................................................................ 22


9 Utilisation de l'aide en ligne....................................................................................................... 24
10 La Configuration du logiciel .................................................................................................... 25
10.1 Les chemins d'accès ............................................................................................... 25
10.2 Le fichier startup.m ................................................................................................ 25

Chapitre 2 Exercices
11 Manipulation de matrices......................................................................................................... 27
11.1 Représentant matriciel d’une application linéaire ................................................. 27
12 Opérations logiques ................................................................................................................. 28
13 Instructions conditionnelles ..................................................................................................... 29
14 Représentations graphiques ..................................................................................................... 30
14.1 courbes 2D et 3D ................................................................................................... 30
14.2 Surfaces .................................................................................................................. 32

Chapitre 3 Guide des fonctions de Matlab


15 Liste des catégories de fonctions ............................................................................................. 33
16 Références................................................................................................................................ 34

Chapitre 4 Sources d’information


17 Bibliographie............................................................................................................................ 41
18 Adresses Internet...................................................................................................................... 42
18.1 Forum de discutions (news group) ......................................................................... 42
18.2 Fichiers M et utilitaires .......................................................................................... 42
18.3 Recherche de solutions .......................................................................................... 42
18.4 Clubs utilisateurs MATLAB .................................................................................. 42

Chapitre 5 Solutions des exercices


19 Manipulation de matrices......................................................................................................... 44
20 Opérations logiques ................................................................................................................. 46
21 Instructions conditionnelles ..................................................................................................... 47
22 Représentations graphiques ..................................................................................................... 48

Index

Initiation à MATLAB 3
Chapitre 1

Les fonctions élémentaires

Initiation à MATLAB 4
Chap. 1: Les fonctions élémentaires Les différents types de variables

1 Les différents types de variables


Les variables manipulées par MATLAB sont toutes des matrices:
• Les scalaires sont des matrices de dimension (1,1) (ex: 3.14 ou 10^3 );
• les vecteurs sont des matrices de dimension (nl,1) (ex: [1;2;3] );
• les tableaux sont des matrices de dimension (nl,nc) (ex: [1 2 3; 4 5 6] ).

La façon la plus simple et la plus rapide de les découvrir est d’utiliser le mode de com-
mande dit “immédiat”. Pour cela on travaille dans la fenêtre intitulée “matlab com-
mand”. Dans ce mode une ligne de commande commence par le symbole ( » ), elle est
exécutée par l’action de la touche Entrée.

Créons maintenant quelques variables simples.

1.1 Les scalaires


L'affectation de la valeur numérique 50 à la variable scalaire x se commande de la façon
suivante:
» x = 50
Vous constatez que MATLAB retourne un “ écho ” de la commande effectuée. Pour éviter
cet écho, ajouter un caractère point-virgule à la fin de la commande:
» x = 50;
La valeur numérique peut être le résultat d'une opération sur d'autres variables ( a+b,
2*x, ... ) ou d'un calcul effectué par une fonction prédéfinie ( x=cos(t), y=sin(t), ... ).
Certaines valeurs( nommées pi, eps, Inf ou NaN) sont des constantes prédéfinies de MAT-
LAB.
Tableau 1: Exemples de scalaires
Vous commandez: MATLAB répond:
» omega=pi omega =
3.1416
»a=2/3 a=
0.6667
» s = sin( omega * a ) s=
0.8660
» eps eps =
2.2204e-016
» 1/0 Warning: Divide by zero
ans =
Inf
Testez la commande who elle vous permet de lister les variables qui sont présentes dans
l'environnement courant de calcul.
Remarquez la variable ans qui contient le résultat du dernier calcul effectué par MAT-
LAB, qui n'a pas été affecté à une variable.
Les noms de variables peuvent contenir au maximum 19 caractères, lettres ou chiffres.

Initiation à MATLAB 5
Chap. 1: Les fonctions élémentaires Les différents types de variables

Attention, MATLAB interprète différemment les lettres majuscules et les lettres minus-
cules. (matricetruc et matriceTruc sont deux variables différentes)
Le format d’affichage par défaut est de 4 chiffres après la virgule. Il est nommé “ short “.
Essayez les affichages en formats : long, long e, short e

1.2 Les vecteurs et tableaux


L'affectation de valeurs numériques aux différents termes d'une matrice peut se faire
manuellement. Pour cela utilisez:
• Les crochets [ et ] pour définir le début et la fin d’un ensemble de valeurs;
• le caractère point-virgule pour séparer deux ensembles d’une même ligne;
• le caractère espace (ou virgule) pour séparer deux ensembles d’une même colonne.
Attention: La virgule étant réservée pour séparer les colonnes, on utilise le caractère
point comme séparateur décimal.

Dans les exemples qui suivent vous allez construire différentes matrices en assemblant
des ensembles de valeurs. Les sous-matrices que l’on assemble ( lignes et/ou colonnes )
seront des valeurs numériques ou des noms de variables.L’ensemble des variables
créées ( A, B, C, D, E, F ) sera nommé par la suite l’environnement courant de calcul.

Tableau 2: Exemples de matrices


Vous commandez: MATLAB répond:
» A = [ 5 9 13 ; 6 10 14 ] A=
5 9 13
6 10 14
» B = [ A ; [7 11 15] ] B=
5 9 13
6 10 14
7 11 15
» C = [ [1;2;3] B ] C=
1 5 9 13
2 6 10 14
3 7 11 15
» D = [17 21; 18 22; 19 23] D=
17 21
18 22
19 23
» E = [4 8 12 16 20 24] E=
4 8 12 16 20 24
» F = [ [C,D] ; E ] F=
1 5 9 13 17 21
2 6 10 14 18 22
3 7 11 15 19 23
4 8 12 16 20 24
Utilisez maintenant la commande who pour lister les noms des variables existantes

Initiation à MATLAB 6
Chap. 1: Les fonctions élémentaires Les différents types de variables

dans votre environnement courant de calcul.

Vous pouvez aussi obtenir d’autres renseignements comme le format des matrices (nom-
bre de lignes / nombre de colonnes). La commande est whos .
Remarquez les scalaires.
Si les nombres de lignes et/ou de colonnes d'une variable doivent être utilisés pour un
faire un calcul, on recueille ces formats dans d’autres variables à l’aide de la commande
size. Cette fonction prédéfinie peut avoir plusieurs syntaxes:
• NbLignes = size( NomVariable, 1) pour calculer uniquement le nombre de lignes,
• NbColonnes = size( NomVariable, 2) pour calculer uniquement le nombre de colonnes,
• [NbL,NbC] = size( NomVariable ) pour calculer les deux.
Dans ce dernier cas la fonction produit deux arguments, il est nécessaire de les assem-
bler avec des crochets.

Tableau 3: Récupération des nombres de lignes et/ou de colonnes


Vous commandez: MATLAB répond:
» nlA=size(A,1) nlA =
2
» ncA=size(A,2) ncA =
3
» [nl,nc]=size(A) nl =
2
nc =
3

Incrémentation automatique
MATLAB peut affecter des valeurs à une variable en réalisant une incrémentation auto-
matique de pas donné entre une valeur de début et une valeur de fin. La syntaxe utilise
le caractère “deux-points” et le résultat de la commande est une matrice ligne. L’ordre
des informations est le suivant:
val_début : pas : val_fin ou : val_début : val_fin

Dans la deuxième commande la va- Tableau 4: Exemples d’incrémentation


leur du pas est omise, elle prend la
valeur 1 par défaut. La commande: produira le même effet que:
Si on désire obtenir une matrice co- » t1 = 10:15 t1 = [10 11 12 13 14 15]
lonne on utilise le signe prime der-
» t2 = 0:.2:1 t2 = [0 .2 .4 .6 .8 1]
rière le nom de la variable pour
effectuer une transposition (range- » t3 = 0:.2:.5 t3 = [0 .2 .4]
ment des lignes en colonnes et inver-
» t4 = (0:5)' t4 = [0; 1; 2; 3; 4; 5]
sement).

Initiation à MATLAB 7
Chap. 1: Les fonctions élémentaires Les différents types de variables

1.3 Les matrices prédéfinies


Des fonctions prédéfinies de MATLAB permettent de générer des matrices particulières.
• Les matrices identité;
• les matrices unités (matrices remplies de 1);
• les matrices nulles (matrices remplies de 0);
• les matrices aléatoires.
Elles utilisent les syntaxes suivantes:

Tableau 5: Matrices prédéfinies


Matrice identité de dimension 3: » I = eye(3) I=
1 0 0
0 1 0
0 0 1
Matrice unité à 2 lignes et 3 colon- » UN = ones(2,3) UN =
nes: 1 1 1
1 1 1
Matrice nulle à 3 lignes et 2 colon- » Z = zeros(3,2) Z=
nes: 0 0
0 0
0 0
Testez également : ones(3) , zeros(4) ou magic(5) pour créer des matrices carrées.

Exemples d’utilisation
Les matrices unité sont utiles pour recopier plusieurs fois la même ligne ou la même co-
ASTUCES

lonne.

Pour recopier la ligne L n fois “vers le bas” dans le tableau T:


• Première solution: on multiplie L à gauche par une matrice unité de n lignes et une
colonne:
T = ones(n,1) * L

Tableau 6: Copies multiples d’une ligne


Commande Résultat
» T=ones(3,1) * [ 1 2 0 4 5 ] T=
1 2 0 4 5
1 2 0 4 5
1 2 0 4 5
• Deuxième solution: on indique n fois le chiffre 1 comme indice de ligne:
T = L( ones(1,n) , : )

De la même façon, pour recopier la colonne C, n fois “vers la droite” dans le tableau T:

Initiation à MATLAB 8
Chap. 1: Les fonctions élémentaires Les différents types de variables

• Soit on multiplie C à droite par une ligne de n 1: T = C * ones(1,n)


• soit on indique n fois 1 comme indice de colonne: T = C( : , ones(1,n) )

Tableau 7: Copies multiples d’une colonne


Commande Résultat
» T = [ 1; 2; 3 ] * ones(1,5) T=
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3

Nombres aléatoires
Deux fonctions prédéfinies permettent de créer des matrices aléatoires dont les termes
suivent une distribution uniforme ou normale.

• Avec la syntaxe: A = rand( nl, nc ) on obtient une matrice de dimension nl lignes, nc


colonnes.
les termes dans chaque colonne sont distribués uniformément entre 0 et 1.
• En utilisant: A = randn( nl, nc ) la distribution des valeurs suit une loi normale de va-
riance 1 centrée sur zéro.
Vérifiez avec les commandes mean( a(:) ) et std( a(:) ) les valeurs de la moyenne et de
l’écart type pour les deux distributions.

Exemples

Initiation à MATLAB 9
Chap. 1: Les fonctions élémentaires Extraction d'une partie de matrice

2 Extraction d'une partie de matrice


2.1 Principe
La désignation d'une partie de matrice se fait en indiquant les numéros de ligne et de
colonne à sélectionner. Pour cela on indique entre parenthèses, derrière le nom de la va-
riable, le ou les indices voulus.

Les cas suivant sont des exemples d’extraction d’un seul terme:

Tableau 8: Extraction d’un terme


Vous commandez: MATLAB répond:
» premier=B(1,1) premier =
5
» l=2; c=3; sixieme=B(l,c) sixieme =
14
» B(1,4) ??? Index exceeds matrix dimensions.

La dernière réponse est un message d’erreur fréquemment rencontré quand les indices
de ligne ou de colonne désirés ne conviennent pas aux dimensions de la matrice.

2.2 Les sous-matrices


On peut désigner un ensemble de lignes et/ou un ensemble de colonnes. Pour cela les nu-
méros de lignes et de colonnes seront eux aussi des tableaux. Ils peuvent être désignés
numériquement ou par l'intermédiaire d'une variable.

Tableau 9: Extraction d’une sous-matrice


Vous commandez: MATLAB répond:
» l = [3 1] l=
3 1
» c = 2:5 c=
2 3 4 5
» F(l,c) ans =
7 11 15 19
5 9 13 17
» F(2:4,4:6) ans =
14 18 22
15 19 23
16 20 24

2.3 Les lignes et les colonnes

Initiation à MATLAB 10
Chap. 1: Les fonctions élémentaires Extraction d'une partie de matrice

Pour désigner "toutes les lignes" ou "toutes les colonnes" d’une sous-matrice, on utilise
comme indice le caractère deux-points. Ainsi :
• M( :,c) désigne la colonne N° c
Cette commande signifie: “ les termes de la matrice M situés à toutes les lignes, colonne
numéro c ”
• M(l, :) désigne la ligne N° l
Cette commande signifie: “ les termes de la matrice M situés ligne l, à toutes les
colonnes ”

Exemple
Tableau 10: Désignation d’une ligne ou d’une colonne
Vous commandez: MATLAB répond:
» F(:, 2) ans =
5
6
7
8

» F(:, 2:3 ) ans =


5 9
6 10
7 11
8 12

» F([1 3], :) ans =


1 5 9 13 17 21
3 7 11 15 19 23
:

Initiation à MATLAB 11
Chap. 1: Les fonctions élémentaires Les opérations sur les matrices

3 Les opérations sur les matrices


3.1 Somme, soustraction
Les deux matrices opérandes doivent être de même format. Ces deux opérations s'effec-
tuent, bien évidemment, terme à terme.
Pour calculer C = A + B , MATLAB effectuera l'opération:
C(i,j) = A(i,j) + B(i,j)
pour toutes les valeurs possibles de i et de j

3.2 Produit matriciel, puissance


Soit:
- une matrice A de format (lA, cA)
- une matrice B de format (lB, cB).

Pour effectuer C = A * B il est nécessaire que cA = lB, Le format de C sera (lA, cB).
MATLAB effectuera alors l'opération:
cA

C (i,j) = ∑ A (i,k) × B (k,j)


k=1
pour tout 1 ≤ i ≤ lA et pour tout 1 ≤ j ≤ cB

La notation A^2 signifie: A * A, dans ce cas la matrice A doit être carrée.

3.3 Produit terme à terme


Si on désire effectuer un produit terme à terme de deux matrices de même format, il faut
placer un point (.) devant le signe étoile (*):
» C = A .* B

MATLAB effectuera alors l'opération:


C(i,j) = A(i,j) * B(i,j)
pour toutes les valeurs possibles de i et de j

De la même manière,
• pour diviser chaque terme de la matrice A par le terme correspondant de la matrice B,
on écrira:
» A./B
• pour élever chaque terme de la matrice A à la puissance p, on écrira:
» A.^p

3.4 Transposée, déterminant, inverse


La transposée d'une matrice (transformation des lignes en colonnes) s'obtient en utili-
sant le signe prime derrière le nom de la matrice.
» TA = A'
Le calcul du déterminant et de la matrice inverse sont deux fonctions prédéfinies de
MATLAB. La syntaxe est la suivante:
» dA = det(A); IA = inv(A)

Initiation à MATLAB 12
Chap. 1: Les fonctions élémentaires Les expressions logiques

4 Les expressions logiques


Une expression logique peut être:
• Soit une relation d’ordre entre les éléments de deux matrices;(ex.: A < B)
• Soit une opération booléenne entre les éléments de deux matrices;(ex.: A & B)
• Soit un test sur les éléments des colonnes d’une matrice;(ex.: all A)

L’évaluation d’une expression logique produit des 0 ou des 1 où:


•0 représente la valeur logique “FAUX”
•1 représente la valeur logique “VRAI”

Pour les relations d’ordre et les opérations booléennes, les opérandes peuvent être une
matrice et un scalaire (A < 5 ) ou deux matrices de même format. MATLAB effectue
l’opération terme à terme.
Le résultat de l’évaluation de l’expression logique est une matrice de même format que
les matrices opérandes.

Par contre, les tests de valeur sont appliqués individuellement à chaque colonne de la
matrice opérande. Le résultat de l’évaluation de l’expression logique est une matrice li-
gne.

4.1 Les relations d’ordre


Six relations permettent de comparer les éléments d’une matrice avec un scalaire ou une
autre matrice de même dimension:

< inférieur
<= inférieur ou égal
> supérieur
>= supérieur ou égal
== égal
~= différent

Tableau 11: Exemples de relations d’ordre


» A=[1 2 3 ; 4 5 6], B=[2 2 2; 4 4 4] » test1=( A < 5 )

A= test1 =
1 2 3 1 1 1
4 5 6 1 0 0

B= » test2=( A <= B)
2 2 2
4 4 4 test2 =
1 1 0
1 0 0

Initiation à MATLAB 13
Chap. 1: Les fonctions élémentaires Les expressions logiques

4.2 Les opérations booléennes


Quatre opérateurs permettent de combiner des expressions logiques à l’aide de l’algèbre
de Boole:
& ET logique
| OU logique
xor OU EXCLUSIF
~ NON logique

Pour tout élément à la ligne i et à la colonne j:


• N = ~A produit: N(i,j) = 1 si:A(i,j) est nul
N(i,j) = 0 si:A(i,j) est non nul
Pour deux matrices A et B de même format, les tables de vérité des fonctions ET, OU,
OU EXCLUSIF, définissent la valeur de C(i,j) en fonction des éléments A(i,j) et B(i,j):

Tableau 12: C = A & B


C(i,j) B(i,j) nul B(i,j) non nul
A(i,j) nul 0 0
A(i,j) non nul 0 1

Tableau 13: C = A | B
C(i,j) B(i,j) nul B(i,j) non nul
A(i,j) nul 0 1
A(i,j) non nul 1 1

Tableau 14: C = A xor B


C(i,j) B(i,j) nul B(i,j) non nul
A(i,j) nul 0 1
A(i,j) non nul 1 0

Tableau 15: Exemples d’opérations booléennes


» A = [0 0 0 0; 4 5 6 7], B = [0 0 1 2; 0 0 3 4] » C = A & B, D = A | B, E = A xor B
A= C=
0 0 0 0 0 0 0 0
4 5 6 7 0 0 1 1

B= D=
0 0 1 2 0 0 1 1
0 0 3 4 1 1 1 1

E=
0 0 1 1
1 1 0 0

Initiation à MATLAB 14
Chap. 1: Les fonctions élémentaires Les expressions logiques

4.3 Les tests de valeur


any, all
Dans le cas ou l’argument A est une matrice ligne:
• La fonction any(A) retourne 1 si au moins une valeur de A est non nulle;
• La fonction all(A) retourne 1 si toutes les valeurs de A sont non nulles.
Dans le cas ou l’argument A est une matrice de plusieurs lignes ces fonctions agissent
individuellemnet sur chaque colonne de A. Le résultat est une matrice ligne:

Exemple:
» A = [0 0 0 1; 0 0 2 3; 0 4 5 6]; un = any(A), tous = all(A)
A=
0 0 0 1
0 0 2 3
0 4 5 6
un =
0 1 1 1
tous =
0 0 0 1

find
La fonction find permet de rechercher les indices des éléments non nuls d’une matrice.
Elle est donc trés utile pour identifier les éléments qui satisfont une relation d’ordre.

Exemple:
» A=10*magic(4), test=( A<=50 ); B = A .*(test)
A=
160 20 30 130
50 110 100 80
90 70 60 120
40 140 150 10
B=
0 20 30 0
50 0 0 0
0 0 0 0
40 0 0 10

»indices=find( test ) ; indices = indices’


indices =
2 4 5 9 16

» C = A(indices’)
C=
50 40 20 30 10

Initiation à MATLAB 15
Chap. 1: Les fonctions élémentaires Les instructions conditionnelles

5 Les instructions conditionnelles


Un ensemble d’instructions MATLAB peut être:
• Exécuté à condition q’une expression logique soit vraie(type SI, ALORS, SINON);
• Répété tant q’une expression logique est vraie; (type TANT QUE)
• Répété pour différentes valeurs d’une variable.

5.1 Instructions conditionnelles de type SI, ALORS, SINON


La structure générale de ce contrôle d’instructions est la suivante:

if (Expression_logique_1)
---
Ensemble_d’instructions_1
---
elseif (Expression_logique_2)
---
Ensemble_d’instructions_2
---
else
---
Ensemble_d’instructions_3
---
end

Le contrôle des instructions commence à la lecture du mot if, et prend fin à end
MATLAB évalue l’Expression_logique_1;
• Si elle est vraie, l’Ensemble_d’instructions_1 est éxécuté;
• Si elle est fausse, MATLAB évalue l’Expression_logique_2
•Si elle est vraie, l’Ensemble_d’instructions_2 est éxécuté;
•Si elle est fausse, l’Ensemble_d’instructions_3 est éxécuté;
•etc
Les instructions indispensables sont if et end. Les instructions suivant les mots elseif et
else sont optionnelles

Exemple
if c==1
couleur = ’rouge’
elseif c==2
couleur = ‘vert’
elseif c==3
couleur = ‘bleu’
else
couleur = ‘blanc’
end

Initiation à MATLAB 16
Chap. 1: Les fonctions élémentaires Les instructions conditionnelles

5.2 Instructions conditionnelles de type TANT QUE


La structure générale de ce cycle d’instructions est la suivante:

while (Expression_logique)
---
Ensemble_d’instructions
---
end

MATLAB commence par l’évaluation de l’Expression_logique;


• Si elle est vraie, l’Ensemble_d’instructions est éxécuté jusqu’au mot end;
MATLAB recommence le cycle
• Si elle est fausse, le cycle est terminé
MATLAB poursuit l’éxécution du programme au dela du mot end.
Le contrôle des instructions commence à la lecture du mot while, prend fin au mot end

Exemple
while n>=0
n = input( ‘valeur de n (fin si n négatif): ?‘ )
f = prod(1:n);
disp( [ ‘factorielle de n : ‘, num2str( f ) ] )
end

5.3 Instructions répétées pour différentes valeurs d’une variable


La structure générale de ce cycle d’instructions est la suivante:
for var = Liste_de_valeurs
---
Ensemble_d’instructions
---
end

Le cycle d’instructions commence à la lecture du mot for,


MATLAB répéte l’Ensemble_d’instructions en affectant successivement à la variable var
toutes valeur contenue dans la Liste_de_valeurs

Exemple
base4 = [ '0' '1' '2' '3' ], A = [ ];
for mult_16 = base4, B = [ ];
for mult_4 = base4,
for unite = base4
B = [B, ' ', [mult_16 mult_4 unite] ];
end,
end
A=[A;B];
end;
disp( 'Les 64 premiers nombres en base 4:' ), A

Initiation à MATLAB 17
Chap. 1: Les fonctions élémentaires Les graphiques

6 Les graphiques
6.1 Les courbes 2D et 3D
Soit deux vecteurs colonnes nommés x et y contenant tous deux 50 lignes.

Tableau 16: Graphe 2D, une seule courbe


La commande: ... produit l’effet suivant:
» plot(y) Succession de segments de droites reliant les 50 points dont:
- les abscisses sont les numéros d'ordre des valeurs de y (N×
de ligne),
- les ordonnées sont contenues par le vecteur y.
» plot(x,y) Même dessin mais les abscisses des points sont les valeurs
contenues par le vecteur x.
» plot(y,'*') Mêmes dessins que les deux précédents, mais les points sont
» plot(x,y,'*') représentés par le caractère graphique '*' et ils ne sont plus re-
liés par des segments de droites.

Il est possible de représenter plusieurs graphes sur la même figure, on utilise les syn-
taxes suivantes:

Tableau 17: Graphe 2D, plusieurs courbes


La commande: ... produit l’effet suivant:
» plot(x,[y1 y2 y3]) Trois graphes y1, y2, y3 en fonction de x.
» plot([x1 x2 x3],[y1 y2 y3]) Trois graphes (x1,y1) (x2,y2) (x3,y3).
La gestion des couleurs de lignes et de l'échelle du
graphe est réalisée automatiquement par MATLAB.
» plot(x1,y1,'+',x2,y2,'*',x3,y3,'o') Gestion individuelle des attributs graphiques.
MATLAB contrôle automatiquement l'échelle.
» axis([xmin, xmax, ymin, ymax]) Contrôle manuel des limites d'axes (donc de l'échelle)
du graphe en cours après son tracé.
» axis('auto') Contrôle automatique des limites d'axes.
» axis('square') Réalisation d'un graphe dont les axes X et Y ont des
dimensions égales quelque soit la forme de la fenêtre.
» plot(x1,y1) Dessin du graphe N×1,
» hold on la figure est maintenue (figée):
» plot(x2,y2) - l'échelle est conservée,
» plot(x3,y3) - les nouveaux graphes se superposent aux précé-
» plot(x4,y4)
dents jusqu'à... la fin du maintient.
» hold off
Le dessin d'une ou plusieurs courbes en 3 dimensions (X, Y, Z) utilise les mêmes conven-

Initiation à MATLAB 18
Chap. 1: Les fonctions élémentaires Les graphiques

tions avec la syntaxe:

» plot3(x, y, z)
ou
» plot3(x, y, z, at-gr )
( at-gr: attribut graphique optionnel de type chaîne de caractère )

et
» axis( [xmin,xmax, ymin,ymax, zmin,zmax] )

La direction de vue du graphe en projection axonométrique peut être contrôlé par la com-
mande:
» view( az, el )
où les variables az & el sont des valeurs d'angle (en degré) définissant l'azimut et l'élé-
vation de la position de l' oeil par rapport au repère ( O , x y z ).

Le retour aux valeurs par défaut ( az = -37,5° el = 30° ) est obtenu par :
» view(3)

6.2 Les surfaces


Les surfaces peuvent être représentées soit sous forme de maillage, soit facettisées. Les
coordonnées des points caractéristiques (noeuds) de la surface ou du maillage doivent
être contenues par trois matrices de même dimension (nommées par exemple: X, Y, Z).

Tableau 18: Représentations de surfaces en 3D

La commande: ... produit l’effet suivant:

» mesh(X, Y, Z) Représentation maillée de la surface.

» mesh( Z ) Les valeurs de X et Y sont, par défaut, les numéros d'ordre


(ligne & colonne) des termes de la matrice Z.

» surf(X, Y, Z) Représentation facettisée de la surface.

» surf( Z ) Les valeurs de X et Y sont, par défaut, les numéros d'ordre


(ligne & colonne) des termes de la matrice Z.

» surfl(X, Y, Z) Rendu réaliste de la surface et contrôle de la lumière

» shading flat Elimination du maillage

» colormap gray Choix d’une gamme de couleurs (ici: dégradés de gris) pour
la réflection de la lumière

Initiation à MATLAB 19
Chap. 1: Les fonctions élémentaires Les fichiers de commandes

7 Les fichiers de commandes


7.1 Les fichiers script
Un fichier script est un fichier texte qui porte l'extension (.m)

C'est une sorte de sous-programme, il contient une liste de commandes dans la syntaxe
MATLAB. Son exécution est commandée à la lecture du nom du fichier (sans extension),
soit en mode immédiat dans la fenêtre de commande de MATLAB, soit dans un autre
script.

7.2 Les fichiers fonction


Une fonction est enregistrée dans un fichier texte avec l'extension (.m) comme un fichier
script.
C'est un sous programme auquel on peut “transmettre” des variables d’entrée, et qui
peut éventuellement “retourner” des variables de sortie.
Par contre toute autre variable utilisée dans ce script sera indépendante des variables
de même nom utilisée dans l’environnement courant

7.3 La structure et la syntaxe


Le programme de la fonction “ bidule “, doit être enregistré dans un fichier nommé: bi-
dule.m.
La première ligne doit être la phrase suivante:

function [s1, s2, s3, ... ] = bidule(e1, e2, e3, ... )

où: (e1, e2, e3, ... ) est un ensemble de variables d'entrée,


[s1, s2, s3, ... ] est un ensemble de variables de sortie,
bidule est le nom de la fonction.

L'utilisation de cette fonction, soit en mode immédiat, soit dans un script, soit dans une
autre fonction, est la suivante:

» [a, b, c, ... ] = bidule(e, f, g, ... )

7.4 L’échange de valeurs


La commande précédente déclenche trois actions:
- Les valeurs de e, f, g sont affectées à e1, e2, e3 ,
- puis MATLAB exécute le sous programme décrit dans le fichier à partir de la deuxième
ligne, il calcule donc les variables s1, s2, s3 en fonction des variables e1, e2, e3,
- enfin les valeurs de s1, s2, s3 sont affectées à a, b, c

La fonction peut utiliser des variables locales utilisant n'importe quel nom, y compris
des noms utilisés par d'autres fonctions ou par l'environnement courant de MATLAB.
Ainsi la fonction bidule peut utiliser des variables nommées a ou e sans qu'elles n'inter-
fèrent sur des variables nommées a ou e dans d'autres fichiers.

Initiation à MATLAB 20
Chap. 1: Les fonctions élémentaires Les fichiers de commandes

Exemple
Soit le fichier texte nommé “demisom.m” contenant les commandes suivantes:

demisom.m

function DS=demisom(val1, val2)

d=2;

DS = (val1 + val2) / d;

La commande en mode immédiat :


» A=[10 11]; B=[30 31]; d=demisom(A, B);
concerne les variables de l’environnement courant, elle produira deux variables d:

Environnement Environnement
courant de local de la fonction
MATLAB demisom

A=[10 11] val1=[10 11]


B=[30 31] val2=[30 31]
une variable locale à la fonction demisom
( d=2 ) d=2

et la variable de l'environnement courant


( d=[20 21] ). d=[20 21] DS=[20 21]

Initiation à MATLAB 21
Chap. 1: Les fonctions élémentaires La sauvegarde des données

8 La sauvegarde des données


MATLAB offre la possibilité d’enregistrer sur disque les valeurs de variables créées lors
d’une session de travail. Vous pouvez ainsi échanger des valeurs numériques avec un
autre utilisateur, un autre logiciel, ou mémoriser des résultats pour ne pas avoir à re-
commencer le calcul.
Vous pouver choisir entre deux solutions:
• Sauvegarde dans un fichier binaire;
• Sauvegarde dans un fichier texte.

8.1 Fichiers binaires


La première possibilité consiste à enregistrer ensemble le nom des variables et leur con-
tenu. Le fichier généré aura un format binaire, ce qui signifie que seul MATLAB saura
le relire.
Vous avez la possibilité d’enregistrer, soit tout l’environnement courant, soit quelques
variables de votre choix.
Tableau 19: Utilisation de fichiers binaires
La commande: . . . produit l'effet suivant:
» save Sauvegarde et charge la totalité des variables pré-
» load sentes dans l’environnement courant dans le fichier
matlab.mat
» save nom-fich.ext (var1 var2 ...) Sauvegarde les variables (var1 var2 . . .) dans le fi-
chier nom_fich.ext
» load nom-fich.ext Charge les variables enregistrées dans le fichier
nom_fich.ext

8.2 Fichiers texte


La seconde possibilité consiste à enregistrer le contenu d’une seule variable dans un fi-
chier au format texte, dit aussi fichier ASCII. Il est ainsi possible:
• De sauvegarder des données sur disque ou disquette;
• D'échanger des données avec un autre logiciel (tableur, base de données, CAO, etc);
• De récupérer des données fournies par un autre utilisateur, un appareil de mesure,
etc.

Quelques règles d'écriture du fichier ASCII:


• Les différentes valeurs d'une ligne sont séparées par un espace ou une tabulation;
• Utiliser le signe point "." comme séparateur décimal;
• Utiliser la lettre E pour désigner les puissances de 10.
Attention: Seul le contenu de la variable est mémorisé, le nom est perdu.

Initiation à MATLAB 22
Chap. 1: Les fonctions élémentaires La sauvegarde des données

Tableau 20: Utilisation de fichiers "texte"

La commande: . . . produit l'effet suivant:

» save fich.txt var -ascii Sauvegarde seulement le contenu de la variable var dans
le fichier texte fich.txt

» load fich.txt Charge les valeurs numériques enregistrées dans le fi-


chier fich.txt dans la variable matlab fich.

» var = fich; Affecte les valeurs récupérées du fichier fich.txt à la va-


riable var

Initiation à MATLAB 23
Chap. 1: Les fonctions élémentaires Utilisation de l'aide en ligne

9 Utilisation de l'aide en ligne


La consultation de l'aide est un moyen simple d'apprendre la syntaxe du langage MAT-
LAB®.

Elle peut être obtenue de deux façons:

•Vous connaissez le nom d'une fonction et vous désirez connaître la syntaxe complète de
la commande (les paramètres d'entrée et de sortie, leur ordre)
Commandez:
» help nom_fonction

ou utilisez le menu: HELP - INDEX puis RECHERCHER

•Vous ne connaissez pas le nom de la commande

Consultez l'aide par rubrique en utilisant le menu: HELP - Table_of_Contents


La liste des rubriques est donnée au chapitre 3 (Voir “Liste des catégories de fonctions”,
page 33.)

Initiation à MATLAB 24
Chap. 1: Les fonctions élémentaires La Configuration du logiciel

10 La Configuration du logiciel
Le logiciel est configuré automatiquement au démarrage par l'exécution du fichier Mat-
labrc.m. Celui-ci met à jour la variable: path qui renseigne MATLAB sur les différents
chemins de recherche des fonctions que l'on peut lui demander d'exécuter.

10.1 Les chemins d'accès


Ils désignent les emplacements de tous les sous-répertoires de MATLAB dans lesquels
sont écrits les fichiers décrivant les fonctions du logiciel et les fonctions de l'utilisateur.
Ils sont classés en boîtes à outils (toolbox) suivant leur utilisation.

Avant d'utiliser MATLAB, vérifiez que votre répertoire de travail existe et qu'il contient
vos fichiers courants. Dans le cas contraire, créez le par la commande md.

Par exemple:
md C:\CALCUL

10.2 Le fichier startup.m


A chaque démarrage, MATLAB exécute d'abord le fichier de commande matlabrc.m qui
configure l'environnement de travail et crée la liste des chemins de recherche, puis il
exécute le fichier startup.m où vous aurez placé les quelques commandes personnelles
que vous désirez exécuter automatiquement à la mise en route du logiciel.

En règle générale ne modifiez jamais le fichier matlabrc.m , utilisez le fichier startup.m


pour personnaliser votre environnement.Le fichier de commande startup.m est éxécuté
automatiquement, après le fichier matlabrc.m, au démarage du logiciel.
Il doit être placé dans votre répertoire d'accueil. Vous pouvez y placer les commandes
que vous voulez, par exemple pour définir votre propre environnement de travail.

Exemple
Imaginons que votre répertoire d’accueil soit G:\
Si le fichier strartup.m n'existe pas encore, créez le à l'aide d'un éditeur de texte.
Enregistrez-y les commandes suivantes:

C:\startup.m
cd C:\CALCUL
disp(' Le répertoire courant est: '); pwd
disp(' Il contient les fichiers suivants:'); dir

Elles auront pour effet:


- De choisir votre le répertoire C:/CALCUL comme répertoire courant,
- de lister les fichiers qu'il contient,
- d'afficher deux messages.

Initiation à MATLAB 25
Chapitre 2

Exercices

Avertissement:

La difficulté des exercices contenus dans ce chapitre est pro-


gressive. Ainsi la résolution des problèmes d’un groupe
d’exercice n’est envisageable que si on maîtrise les concepts
des groupes précédents.

Initiation à MATLAB 26
Chap. 2: Exercices Manipulation de matrices

11 Manipulation de matrices
11.1 Représentant matriciel d’une application linéaire
Soit E un espace vectoriel euclidien. (a ⋅ u) ⋅ u
Soit b une base orthonormée directe de E.
Soient a et u deux vecteurs de E. a
u
On note A et U les matrices (3,1) contenant les coordon-
nées de n et u dans la base b.

a1 u1
A = [ a ] ( b ) = a2 et U = [ u ] ( b ) = u2
u∧a
–u ∧ ( u ∧ a )
a3 u3

Exercice 1. Produit vectoriel


On cherche le représentant matriciel de l’application linéaire L1 de E dans E, qui trans-
forme a en : L1 ( a ) = u ∧ a
• Construire cette matrice, nommée PvU, en fonction des coordonnées de u dans b;
• Calculer les coordonnées du vecteur u ∧ a par le produit de PvU par A

Exercice 2. Projection parallèle à un vecteur


On cherche le représentant matriciel de l’application linéaire L2 de E dans E, qui trans-
forme a en : L2 ( a ) = ( a ⋅ u ) ⋅ u
• Construire cette matrice, nommée PpU, en fonction des coordonnées de u dans b;
• Calculer les coordonnées du vecteur ( a ⋅ u ) ⋅ u par le produit de PpU par A

Exercice 3. Projection orthogonale à un vecteur


On cherche le représentant matriciel de l’application linéaire L3 de E dans E, qui trans-
forme a en : L3 ( a ) = – u ∧ ( u ∧ a )
• Construire cette matrice, nommée PoU, à l’aide de la matrice PvU;
• Calculer les coordonnées du vecteur – u ∧ ( u ∧ a ) par le produit de PoU par A

Exercice 4. Rotation (a ⋅ u) ⋅ u
On cherche le représentant matriciel de l’application li- a
u
R(a)
néaire R de E dans E, qui transforme a en R ( a ) par une
rotation d’angle α radian autour du vecteur u
R ( a ) = ( a ⋅ u ) ⋅ u – cos ( α ) ⋅ u ∧ ( u ∧ a ) + sin ( α ) ⋅ ( u ∧ a )
• Construire cette matrice, nommée R, en fonction de la α u∧a
–u ∧ ( u ∧ a )
valeur α et des coordonnées de u dans b
• Calculer les coordonnées de R ( a ) par le produit de R par A

Initiation à MATLAB 27
Chap. 2: Exercices Opérations logiques

12 Opérations logiques
Exercice 5. Fonctions puissances tronquées
On désire calculer les fonctions fi+(x) définie par:

⎧ 0 si x < xi
fi + ( x ) = ⎨ 3
⎩ ( x – xi ) si x ≥ xi
pour les valeurs x i ∈ { 2, 4, 6, 8 }
L’intervalle d’étude est x ∈ [ 0, 10 ]

• Générer un vecteur colonne x de 100 lignes, conformément à l’intervalle d’étude.


• Recopier 4 fois le vecteur x dans un tableau de 100 lignes, 4 colonnes nommé X
• Recopier 100 fois les 4 valeurs des xi dans un tableau de 100 lignes, 4 colonnes nommé
Xi
• Calculer les valeurs de fi+(x) dans un troisième tableau F de même format

Exercice 6. Topologie
On désire identifier les points d’un ensemble { P 1, P 2, . . . , P n } qui se trouvent sous le
plan d’équation:
a⋅x+b⋅y+c⋅z+d = 0
Les coordonnées des points sont enregistrées dans trois matrices X Y Z de même format.
• Recenser les indices (dans X Y Z) des points qui vérifient l’équation;
• Extraire les coordonnées des points solutions dans les matrices Xs, Ys, Zs.

Initiation à MATLAB 28
Chap. 2: Exercices Instructions conditionnelles

13 Instructions conditionnelles
Exercice 7. Numérotation en base 4
On désire générer les 64 premiers nombres en base 4. Le résultat sera enregistré dans
une matrice de 64 lignes contenant chacune un nombre sous forme de chaîne de carac-
tère.
Pour cela:
• Générer l’ensemble des unités de cette base. Cette matrice, nommée base4, est com-
posée des 4 caractères alphanumériques: ’0’ ; ’1’ ; ’2’ ; ’3’ ;
• En utilisant 3 boucles FOR . . . END imbriquées, assembler un multiple de 16, un mul-
tiple de 4 et une unité pour composer chaque nombre.

Initiation à MATLAB 29
Chap. 2: Exercices Représentations graphiques

14 Représentations graphiques
14.1 courbes 2D et 3D
Exercice 8. Graphe d’une fonction de plusieurs variables
Soit n=5.

Générer un vecteur colonne, nommé u, contenant 100 valeurs uniformément réparties


entre 0 et 1.
Créer une matrice (100,n+1), nommée U, qui contient n+1 fois la colonne u.

Générer un vecteur ligne, nommé i, contenant n+1 valeurs uniformément réparties en-
tre 0 et n.
Créer une matrice (100,n+1), nommée I, qui contient 100 fois la ligne i.

Pour tous les termes de U, et tous les termes de I correspondants (même indice de ligne
et de colonne), calculer dans la matrice F les valeurs de la fonction de la variable u pour
différentes valeurs du paramètre i:
sin ⎛ 2 ⋅ π ⋅ u ⋅ ⎛ --i- + 1⎞ ⎞
⎝ ⎝n ⎠⎠
F ( u, i ) = -------------------------------------------------------
i+1

Tracer les fonctions de u et de i contenues en colonnes dans la matrice F: plot(U,F)

Extraire de F les valeurs de F(u) pour la valeur i=3. Tracer la courbe.

Utiliser les mêmes commandes pour tracer les fonctions F(u):


- pour 5 valeurs de i uniformément réparties entre 1 et 2,
- pour 500 valeurs de u uniformément réparties entre -1 et 1.

Exercice 9. Modification du graphe


Tracer tous les graphes des fonctions F(u,i) en rouge.

Changer les dimensions pour que les limites du graphe soient (-1.5 , 1.5) pour u et pour F

Ajouter des labels sur les abcisses et les ordonnées et un titre au graphique. Ajouter un
quadrillage.

Utiliser la même échelle sur les abcisses et les ordonnées.

Tester les mêmes manipulations sur un graphique 3D avec u sur l’axe X, i sur l’axe Y,
et F sur l’axe Z.

Modifier la direction de la vue en agissant sur les angles d’azimut et d’élévation pour ob-
tenir la vue de face XZ, la vue de droite YZ, la vue de dessus XY.

Initiation à MATLAB 30
Chap. 2: Exercices Représentations graphiques

Exercice 10. Fonction de deux variables


Tracer la courbe de la fonction:

ax ⎧ –4 ⋅ π ≤ x ≤ 4 ⋅ π
f ( x ) = sin ( x ) ⋅ e pour ⎨
⎩ a ∈ { – 0, 15 ;– 0, 1 ;– 0, 05 }
L’exponentielle s’obtient par la fonction “exp”

Exercice 11. Définition paramètrique 2D


Tracer en 2D la courbe y fonction de x à l’aide de sa définition paramétrique:

⎧ x ( t ) = cos ( 3t )
⎨ avec 0≤t≤2⋅π
⎩ y ( t ) = sin ( 2t )

Exercice 12. Définition paramètrique3D


Tracer en 3D la courbe de la fonction:

⎧ x ( t ) = sin ( t ) ⋅ cos ( t )

⎨ y ( t ) = sin ( t )
2 pour –π ≤ t ≤ π

⎩ z ( t ) = cos ( t )

Exercice 13. Fonctions de Bernstein


Soit n=5.

Générer un vecteur colonne, nommé u, contenant 100 valeurs uniformément réparties


entre 0 et 1.
Créer une matrice (100,n+1), nommée U, qui contient n+1 fois la colonne u.

Générer un vecteur ligne, nommé i, contenant n+1 valeurs uniformément réparties en-
tre 0 et n.
Créer une matrice (100,n+1), nommée I, qui contient 100 fois la ligne i.

A l’aide de la fonction prod, calculer la factorielle de n et affecter le résultat à la variable:


fn.
(exemple: pour n = 5: fn=120)

A l’aide de la fonction cumprod calculer les factorielles de toutes les valeurs entières en-
tre 0 et n. affecter le résultat à la matrice ligne fi.
On rappelle que, par convention, 0!=1
(exemple: pour n = 5: fi = 1 1 2 6 24 120)

Initiation à MATLAB 31
Chap. 2: Exercices Représentations graphiques

Créer une variable filr contenant les valeur de fi dans l’ordre inverse.
(exemple: pour n = 5: filr = 120 24 6 2 1 1)

Créer une variable c égale à fn divisé par chacun des termes de fi et chacun des termes
de filr.
(exemple: pour n = 5: c = 1 5 10 10 5 1)

Créer une matrice (100,n+1), nommée C, qui contient 100 fois la ligne c.

Pour chaque terme de C, de U, et de I, calculer


C multiplié par (U puissance I) multiplié par ( ( 1 -U ) puissance ( n - I ) )

Tracer en 2D les courbes représentant les valeurs des colonnes de B en fonction de celles
de U.

14.2 Surfaces
Exercice 14. Cône
Dessiner sous forme de maillage (Xc, Yc, Zc) la surface C suivante:
Cône (de révolution) d’axe ( O, z ) ,
- de sommet S de coordonnées:(0, 0, Zs),
- d’angle au sommet: a

Pour Zs = 5 mm, a = 40 degrés et pour des valeurs de z telles que: 0 < z < h

Exercice 15. Plan


Dessiner sous forme de maillage (Xp, Yp, Zp) la surface P suivante:
Plan passant par le point H de coordonnées (0, 0, Zh), orthogonal au vecteur de coordon-
nées (u, v, w)
Pour Zh = 3 mm, u = 1, v = 2, w = 5 et pour des valeurs de X et Y comprises entre -5 et
+5 mm.

Exercice 16. Cône tronqué


Dessiner le cône C tronqué par le plan P:
Pour cela on défini une nouvelle surface T par un maillage dont les noeuds (Xt, Yt, Zt)
vérifient:
Zt = Zc si Zc < Zp
Zt = Zp si Zc > Zp

Initiation à MATLAB 32
Chapitre 3

Guide des fonctions de Matlab

Ce chapitre présente une aide sommaire à propos des fonctions de Mat-


lab les plus utilisées.
Elles sont classées en 19 catégories afin de faciliter la recherche.
Pour une assistance plus complète consulter le guide de référence du lo-
giciel, ou utiliser l’aide en ligne avec le nom de la catégorie

15 Liste des catégories de fonctions


Cette liste est obtenue à l’aide de la commande help
help nom_de_la_categorie produit la liste des fonctions de la catégorie.

general Commandes générales


ops Opérateurs; caractères spéciaux
elmat Matrices élémentaires; manipulations de matrices
elfun Fonctions mathématiques élémentaires
plotxy Graphiques 2D
plotxyz Graphiques 3D
graphics Contrôle des graphes
color Contrôle des couleurs et de la lumière sur les surfaces
sound Contrôle des signaux audio
strfun Manipulation des chaînes de caractères
specfun Méthodes de résolution d’équations linéaires
matfun Analyse de données et transformées de Fourier
datafun Polynômes et fonctions d’interpolation
polyfun Méthodes de résolution d’équations non linéaires
sparfun Matrices creuses
iofun Entrées/sorties (Lecture et écriture de fichiers)
demos Exemples et démonstrations

Initiation à MATLAB 33
Chap. 3: Guide des fonctions de Matlab Références

16 Références
/ Division

Commandes générales ./ Division terme à terme

‘ Transposée
Gestion des variables et de l’environnement
Opérateurs relationnels
clear Efface les variables et les fonctions de la mémoire

disp Affiche une matrice ou un texte > Supérieur à

length Longueur d’un vecteur < Inférieur à

load Rappelle des variables enregistrées sur disque >= Supérieur ou égal à

save Sauvegarde des variables sur disque <= Inférieur ou égal à

size Taille d’une matrice == Egal à

type Liste un fichier M ~= Différent de

what Liste des fichiers M, MAT et MEX


Opérateurs logiques
who Liste les variables courantes

which Localise fonctions et fichiers


& ET logique

Gestion des fichiers et répertoires | OU logique

~ NON logique

cd Change de répertoire courant xor OU exclusif

delete Efface un fichier


Caractères spéciaux
dir Liste un répertoire

! Exécute une commande du système d’exploitation


: Génération de vecteurs

Contrôle de la fenêtre de commande () Parenthèses

[] Séparateur de sous matrices

clc Efface la fenêtre de commande . Séparateur décimal

echo echo dans les fichiers script .. Répertoire parent

format Défini le format d’affichage des nombres ... Suite à la ligne suivante

home Ramène le curseur au début de la fenêtre , Séparateur de colonnes (dans une matrice)

more Contrôle le déroulement de la fenêtre ; Séparateur de lignes (dans une matrice)

quit Quitte MATLAB % Commentaire

Opérateurs et caractères spéciaux Fonctions logiques

Opérateurs arithmétiques
all Vrai si TOUS les éléments d’un vecteur sont VRAIS

any Vrai si au moins UN élément d’un vecteur est VRAI


* Multiplication matricielle
exist Teste si une variable ou une fonction existe
.* Multiplication terme à terme
find Recherche les indices des éléments non nuls
^ Elévation à la puissance
isstr Vrai si la variable est une chaîne de caractères
.^ Elévation à la puissance terme à terme

Initiation à MATLAB 34
Chap. 3: Guide des fonctions de Matlab Références

Matrices élémentaires; manipulations res


de matrices

Matrices élémentaires abs Valeur absolue

atan2 Tangente inverse 4 quadrants

eye Matrice Identité log log Népérien

linspace Vecteur à incrément linéaire log10 log décimal

logspace Vecteur à incrément logarithmique rem Reste d’une division

ones Matrice remplie de 1 round l’entier le plus proche

rand Nombres aléatoire à distribution uniforme sign Signe d’une fonction

randn Nombres aléatoire à distribution normale sqrt Racine carrée

zeros Matrice remplie de 0


Graphiques 2D
: Génération d’un vecteur à espacement régulier

Graphes élémentaires
Variables spéciales et constantes

fill Rempli de couleur un polygone


ans Dernier résultat non affecté à une variable
loglog Graphe à échelles log-log
eps La plus petite valeur calculable: 2.2204 E-16
plot Graphe à échelles linéaires
inf Une valeur infinie...
semilogx Log en X linéaire en Y
NaN Not-a-Number: faire un trou dans une matrice ;-)
semilogy Log en Y linéaire en X
pi 3,1415926535897...

Graphes spécialisés
Gestion de l’horloge

bar Graphe bâtons


clock Horloge
errorbar Barres avec tolérance
date Calendrier
fplot Graphe d’une fonction
etime Elapsed Time Fonction
hist Graphe d’un histogramme
tic, toc Fonction chronomètre
polar Graphe en coordonnées polaires

Manipulation de matrices stairs Graphe en marches d’escalier

Annotation des graphes


diag Crée ou extrait la diagonale

fliplr Permutation des colonnes


grid Quadrillage
flipud Permutation des lignes
gtext Placement d’un texte avec la souris
reshape Modification du format
text Annotation
rot90 Rotation de 90°
title Titre du graphe
tril Extrait le triangle inférieur
xlabel Label de l’axe X
triu Extrait le triangle supérieur
ylabel Label de l’axe Y
: Toutes les lignes ou toutes les colonnes

Graphiques 3D
Fonctions mathématiques élémentai-

Initiation à MATLAB 35
Chap. 3: Guide des fonctions de Matlab Références

Lignes et polygones

axis Contrôle les échelles d’un graphe

fill3 Rempli un polygone en 3-D cla Efface les axes courants

plot3 Trace une courbe en 3-D gca Pointeur des axes courants

hold Maintient les échelles du graphe courant


Courbes de niveau et autres graphes 3-D
subplot Crée plusieurs axes dans un graphe

clabel Courbes de niveau avec indication des altitudes Impression


contour Courbes de niveau

contour3 Courbes de niveau 3-D orient Défini l’orientation du papier

image Affiche un objet de type image print Envoie le graphe à l’impression

printopt Configure l’imprimante par défaut


Surfaces et maillages
Animation (movies)
mesh Maillage

meshc Maillage avec courbes de niveau get frame Prépare une animation

surf Surface movie Lit l’enregistrement d’une séquence animée

surfc Surface avec courbes de niveau moviein Initialise la mémoire pour une animation

surfl Surface avec effet d’éclairage


Contrôle des couleurs et de la lumière
Apparence des graphes
Cartes de couleurs

axis Contrôle des échelles


bone Nuance de gris légèrement bleuté
colormap Carte des couleurs
cool Dégradés de cyan et magenta
hidden Maillage avec élimination des lignes cachées
copper Couleurs cuivre
shadding Mode de rendu des surfaces
flag Rouge, blanc, bleu, et noir
view Contrôle de la direction de vue d’un graphe 3-D
gray Nuances de gris
viewmtx Matrice de transformation de la vue
hsv Hue-Saturation-Value

Contrôle des graphes hot Noir, rouge, jaune, blanc

pink Dégradés de rose


Contrôle des fenêtres “figures”
Modèles de lumière
clf Efface la figure courante

close Ferme la figure brighten Contrôle lumière-obscurité

figure Crée une figure hsv2rgb Passage de HSV à Rouge-Vert-Bleu

gcf Pointeur de la figure courante rgbplot Affiche la carte RGB

rgb2hsv Passage de RGB à HSV


Contrôle des axes
spinmap spin color map

axes Crée des axes en positions arbitraires

Initiation à MATLAB 36
Chap. 3: Guide des fonctions de Matlab Références

Contrôle des signaux audio Equations linéaires

saxis Echelle de l’axe des sons eig Valeurs propres et vecteurs propres

sound Converti un vecteur en son inv Matrice inverse

nnls Résolution avec critère des moindres carrés


Manipulation des chaînes de caractè- poly Polynôme caractéristique
res

Fonctions générales Analyse de données et transformées de


Fourier

abs Converti une chaîne en valeur numérique Opérations de base

eval Exécute un chaîne comme un commande matlab

isstr Vrai si la variable est une chaîne cumprod Produit cumulé des éléments d’un vecteur

setstr Converti une valeur numérique en chaîne cumsum Somme cumulée des éléments d’un vecteur

max Valeur maxi


Comparaisons de chaînes
mean Moyenne

median Médiane
lower Converti une chaîne en minuscules
min Valeur mini
strcmp Compare deux chaînes
prod Produit des éléments d’un vecteur
upper Converti une chaîne en majuscules
sort Tri dans l’ordre croissant

Conversions avec des nombres std Ecart type (Standard Deviation)

sum Somme des éléments d’un vecteur

int2str Conversion entier vers chaîne trapz Intégration numérique (méthode des trapèzes)

num2str Conversion nombre vers chaîne diff Approximation de la dérivée (différences finies)

sprintf Conversion nombre vers chaîne gradient Approximation du gradient

str2num Conversion chaîne vers nombre


Filtres
sscanf Conversion chaîne vers nombre

Produit de convolution
Méthodes de résolution d’équations li- conv
néaires conv2 Convolution 2-D

filter Filtre numérique 1-D


Analyse de matrices
filter2 Filtre numérique 2-D

cond Conditionnement Transformées de Fourier


det Déterminant

norm Norme abs Amplitude

null Espace nul angle Phase

orth Orthogonalisation fft Transformée de Fourier discrète

rank Rang (Nb lignes ou colonnes lin. indépendantes) fft2 Transformée de Fourier discrète 2-D

trace Somme des éléments diagonaux


Polynômes et fonctions d’interpolation

Initiation à MATLAB 37
Chap. 3: Guide des fonctions de Matlab Références

Polynômes Entrées/sorties formatées

conv Multiplication fgetl Lit une ligne d’un fichier

deconv Division fgets Lit une ligne d’un fichier

poly Construction à l’aide des racines fprintf Ecrit des données formatées dans un fichier

polyder Dérivée fscanf Lit des données formatées depuis un fichier

polyfit Approximation d’un nuage de points


Entrées/sorties non formatées
polyval Evaluation d’un polynôme

roots Calcul des racines


fread Lit des données binaires depuis un fichier

Ecrit des données binaires dans un fichier


Méthodes de résolution d’équations fwrite
non linéaires
Langage

fmin Minimum d’une fonction d’une variable Programmation


fmins Minimum d’une fonction de plusieurs variables

fzero Zéros d’une fonction d’une variable function Ajoute une nouvelle fonction

ode23 Résolution d’équations différentielles global Défini une variable comme globale

ode45 Résolution d’équations différentielles nartgchk Validation du nombre d’arguments d’entrée

input Invite pour une entrée de l’utilisateur


Matrices creuses Génère un menu à choix multiples
menu
Matrices creuses élémentaires pause Interruption temporaire d’un traitement

Instructions de contrôle
spdiag Matrice creuse formée de diagonales

speye MAtrice Identité creuse


break Termine l’exécution d’une boucle
sprandn Matrice aléatoire creuse
else Sinon (alternative à une condition définie par if)

Conversion matrices creuses / matrices pleines elseif Si (Condition à l’intérieur d’une autre condition)

end Termine une boucle (for, while, ou if)

full Conversion creuse en pleine error Affiche un message et termine la fonction

find Recherche les indices des éléments non nuls for Répétitions définies d’une séquence

sparse crée une matrice creuse if Exécute une séquence sous condition

return Retour à la fonction invoquée


Entrées/sorties Répétitions indéfinies d’une séquence
while
Gestion des fichiers

fclose Ferme un fichier

fopen Ouvre un fichier

Initiation à MATLAB 38
Chap. 3: Guide des fonctions de Matlab Références

Initiation à MATLAB 39
Chapitre 4

Sources d’information

Si le logiciel vous intéresse pour une application personnelle, sachez


qu’il existe une licence étudiant mieux adaptée à votre porte-monnaie.
Pour en savoir plus sur l’utilisation de MATLAB, n’hésitez pas à me sol-
liciter, je vous apporterez avec plaisir une réponse dans les limites de
mes connaissances et de mon temps disponible.
Les plus curieux trouverons également ici une bibliographie et quelques
références internet concernant le logiciel.

Initiation à MATLAB 40
Chap. 4: Sources d’information Bibliographie

17 Bibliographie
Outre le guide de référence fourni avec le logiciel par “The MathWorks Inc.”, il existe des ouvrages inté-
ressants pour le débutant.

Le plus complet que je connaisse, est si bien conçu que l’on peut le désigner comme “la bible de l’utilisateur
occasionnel de MATLAB” :

• Apprendre et maîtriser MATLAB, M. Mokhtari & A. Mesbah, Springer-Verlag, 1997


Il est accompagné d’une disquette contenant les programmes utilisés par les auteurs, et a le mérite d’être
en français.

Je vous conseille aussi la lecture de:

• MATLAB for engineers, A. Biran & M. Breiner, Addison-Wesley, 1996.


Celui-ci contient une multitude de résolution de problèmes techniques ou physiques. Les exemples très
classiques sont issus des domaines comme la mécanique, l’automatisme, l’électricité, l’électronique, etc.

Initiation à MATLAB 41
Chap. 4: Sources d’information Adresses Internet

18 Adresses Internet
18.1 Forum de discutions (news group)
Le groupe de discutions:

news://comp.soft-sys.matlab

est “non modéré”, indépendant et non affilié à “The MathWorks Inc.”.


L’utilisateur peut y poser une question (en anglais). La communauté internationale des utilisateurs de
MATLAB ainsi que le support technique de “The MathWorks Inc.” s’efforcera de lui trouver une réponse.
C’est donc une source de programmes très riche et gratuite.

18.2 Fichiers M et utilitaires


“The MathWorks Inc.” propose gratuitement des programmes fournis par d’autres utilisateurs de MAT-
LAB.
A l’adresse:

• www.mathworks.com/ftpindex.html
on trouvera des fichiers M provenant de tous pays classés par catégories.

18.3 Recherche de solutions


Vous trouverez, au adresses suivantes des notes techniques, FAQ, moteurs de recherche, support techni-
que:

• www.mathworks.com/support/tech-note/technical.html
• www.mathworks.com/support/faq/faq.html
• www.mathworks.com/support/solutions/solutions.html
• www.ssg.fr/notetech.html
• www.ssg.fr/sup_tech.html
La lettre d’informations mensuelle est publiée par “The MathWorks Inc.” à:

• www.mathworks.com/newsletter/nn.html

18.4 Clubs utilisateurs MATLAB


Le club du CNAM peut être contactée à l’adresse:

[email protected]

Le club de Scientific Software est accessible à:

• www.ssg.com/

Initiation à MATLAB 42
Chapitre 5

Solutions des exercices

Initiation à MATLAB 43
Chap. 5: Solutions des exercices Manipulation de matrices

19 Manipulation de matrices
Exercice 1. Produit vectoriel

L’application linéaire L1 de E dans E, qui transforme a en : u ∧ a , est représentée par

0 – u3 u2
la matrice antisymétrique : PvU = u3 0 – u1
– u2 u1 0
Sa construction s’obtient en affectant d’abord à PvU une matrice 3x3 nulle:
» PvU = zeros(3);
puis en calculant les différents termes non nuls en fonctions des valeurs extraites de la
matrice U:
» PvU(3,2) = u(1); PvU(2,3) = - u(1);
» PvU(1,3) = u(2); PvU(3,1) = - u(2);
» PvU(2,1) = u(3); PvU(1,2) = - u(3);
Les coordonnées de u ∧ a s’obtiennent par :
» PvU * A
Rque: Une fonction prédéfinie de MATLAB réalise cette opération. Elle se nomme cross.

Exercice 2. Projection parallèle à un vecteur

L’application linéaire L2 de E dans E qui transforme a en ( a ⋅ u ) ⋅ u , est représentée par


2
u1 u1u2 u1u3
la matrice symétrique: PpU = u1u2 u2 2 u2u3
2
u1u3 u2u3 u3
Sa construction s’obtient en effectuant le produit de la matrice U par sa transposée:
2
u1 u1u2 u1u3
u1
u1u2 u2 u2u3
2 = u2 × u1 u2 u3
2 u3
u1u3 u2u3 u3
» PpU = U * U’;
Les coordonnées de ( a ⋅ u ) ⋅ u s’obtiennent par :
» PpU * A

Exercice 3. Projection orthogonale à un vecteur

Le représentant matricel de l’application linéaire L3 de E dans E qui transforme a en


– u ∧ ( u ∧ a ) , est obtenu par le produit de la matrice PvU par elle même:
» PoU = - PvU * PvU;
ou
» PoU = - PvU ^ 2
Les coordonnées de – u ∧ ( u ∧ a ) s’obtiennent par :

Initiation à MATLAB 44
Chap. 5: Solutions des exercices Manipulation de matrices

» PoU * A

Exercice 4. Rotation
Le représentant matriciel de l’application linéaire:
R ( a ) = ( a ⋅ u ) ⋅ u – cos ( α ) ⋅ u ∧ ( u ∧ a ) + sin ( α ) ⋅ ( u ∧ a ) a pour expression en fonction des
coordonnées de u dans la base b:

2 2
u1 u1u2 u1u3 u1 – 1 u1u2 u1u3 0 – u3 u2
R = u1u2 u2 2 u2u3 – cos α ⋅ 2
u1u2 u2 – 1 u2u3 + sin α ⋅ u3 0 – u1
2 2 – u2 u1 0
u1u3 u2u3 u3 u1u3 u2u3 u3 – 1

On le calcule à l’aide des matrices U et PvU par:


» R = U * U ’ - cos(alpha) * PvU^2 + sin(alpha) * PvU;

Autre solution:
En utilisant la relation : – u ∧ ( u ∧ a ) = a – ( a ⋅ u ) ⋅ u
On obtient une autre expression de la transformation R :

R ( a ) = cos ( α ) ⋅ a + ( 1 – cos ( α ) ) ⋅ ( a ⋅ u ) ⋅ u + sin ( α ) ⋅ ( u ∧ a )


Le représentant matriciel peut aussi s’écrire:

2
10 0 u1 u1u2 u1u3 0 – u3 u2
R = cos α ⋅ 0 1 0 + ( 1 – cos α ) ⋅ u1u2 u2 2 u2u3 + sin α ⋅ u3 0 – u1
00 1 2 – u2 u1 0
u1u3 u2u3 u3

On le calcule à l’aide des matrices U et PvU par:


» R = eye(3) + (1 - cos(alpha) ) * U * U ’ + sin(alpha) * PvU;

Initiation à MATLAB 45
Chap. 5: Solutions des exercices Opérations logiques

20 Opérations logiques
Exercice 5. Fonctions puissances tronquées

Exercice 6. Topologie

Initiation à MATLAB 46
Chap. 5: Solutions des exercices Instructions conditionnelles

21 Instructions conditionnelles
Exercice 7. Numérotation en base 4

Initiation à MATLAB 47
Chap. 5: Solutions des exercices Représentations graphiques

22 Représentations graphiques
Exercice 8. Graphe d’une fonction de plusieurs variables

Exercice 9. Modification du graphe

Exercice 10. Fonction de deux variables

Exercice 11. Définition paramètrique 2D

Exercice 12. Définition paramètrique3D

Exercice 13. Fonctions de Bernstein

Exercice 14. Cône

Exercice 15. Plan

Exercice 16. Cône tronqué

Initiation à MATLAB 48
Index

A coordonnée . . . . . . . . . . . . . . . 19
abscisse . . . . . . . . . . . . . . . . . 18 couleur
affiche. . . . . . . . . . . . . . . . . . . 25 de lignes . . . . . . . . . . . . . . 18
aide . . . . . . . . . . . . . . . . . . . . 24 gamme de . . . . . . . . . . . . . 19
algèbre de Boole . . . . . . . . . . . 14 courbe . . . . . . . . . . . . . . . . . . 18
all . . . . . . . . . . . . . . . . . . . . . . 15 crochets . . . . . . . . . . . . . . . . . . 6
ans . . . . . . . . . . . . . . . . . . . . . . 5
any . . . . . . . . . . . . . . . . . . . . . 15
D
ASCII . . . . . . . . . . . . . . . . . . . 22
démarrage . . . . . . . . . . . . . . . 25
attribut graphique . . . . . . . . . 19
dessin . . . . . . . . . . . . . . . . . . 18
axis . . . . . . . . . . . . . . . . . . 18, 19
déterminant . . . . . . . . . . . . . . 12
azimut . . . . . . . . . . . . . . . . . . 19
deux-points . . . . . . . . . . . . . . . 7
dimension . . . . . . . . . . . . . . . 10
B disp . . . . . . . . . . . . . . . . . . . . 25
base de données . . . . . . . . . . . 22 disque . . . . . . . . . . . . . . . . . . 22
boîtes à outils . . . . . . . . . . . . . 25 disquette . . . . . . . . . . . . . . . . 22
distribution . . . . . . . . . . . . . . . 9
C données . . . . . . . . . . . . . . . . . 22
caractère
deux points . . . . . . . . . . . . . 7 E
deux-points . . . . . . . . . . . . 11 écart type . ................ 9
espace . . . . . . . . . . . . . . . . . 6 échange
point . . . . . . . . . . . . 6, 12, 22 de données . . . . . . . . . . . . 22
échelle . . . . . . . . . . . . . . . . . .
18
point-virgule . . . . . . . . . . 5, 6
éléments non nuls . . . . . . . . . 15
chaîne de caractère . . . . . . . . . 19
élévation . . . . . . . . . . . . . . . .
19
chemins d'accès. . . . . . . . . . . . 25
else . . . . . . . . . . . . . . . . . . . .
16
colonne . . . . . . . . . . . . . . . . . . . 6
elseif . . . . . . . . . . . . . . . . . . .
16
ensemble de . . . . . . . . . . . 10 ensemble
condition . . . . . . . . . . . . . . . . . 16
d’instructions . . . . . . . . . . 16
configuration . . . . . . . . . . . . . 25
environnement . . . . . . . . . . 7, 25
contrôle
courant . . . . . . . . . . . . 20, 21
d’instructions . . . . . . . . . . 16

Initiation à MATLAB 49
Chap. : Index

local . . . . . . . . . . . . . . . . . 21 de valeurs . . . . . . . . . . . . 17
espace . . . . . . . . . . . . . . . . . . . 22
ET logique . . . . . . . . . . . . . . . 14 M
expression logique . . . . . . . . . 13 maillage. . . . . . . . . . . . . . . . . 19
extraction . . . . . . . . . . . . . . . . 10 matrice . ................. 6
eye . . . . . . . . . . . . . . . . . . . . . . 8
aléatoire. . . . . . . . . . . . . . . 8
identité . . . . . . . . . . . . . . . . 8
F nulle . . . . . . . . . . . . . . . . . . 8
fenêtre
prédéfinie. . . . . . . . . . . . . . 8
de commande . . . . . . . . 5, 20
unité . . . . . . . . . . . . . . . . . . 8
graphique . . . . . . . . . . . . . 18
mean . . . . . . . . . . . . . . . . . . . . 9
fichier
mesh . . . . . . . . . . . . . . . . . . . 19
de commande . . . . . . . . . . 20 message . . . . . . . . . . . . . . . . . 25
fonction . . . . . . . . . . . . . . . 20 moyenne . . . . . . . . . . . . . . . . . 9
script . . . . . . . . . . . . . . . . . 20
texte. . . . . . . . . . . . . . . . . . 22 N
fichier ASCII . . . . . . . . . . . . . 22 noeuds . . . . . . . . . . . . . . . . . . 19
find . . . . . . . . . . . . . . . . . . . . . 15 NON logique . . . . . . . . . . . . . 14
fonction. . . . . . . . . . . . . 5, 20, 24
format . . . . . . . . . . . . . . . . . . 12
O
d’affichage . . . . . . . . . . . . . 6 ones . . . . . . . . . . . . . . . . . . . . . 8
de matrices . . . . . . . . . . . . . 7 opération . . . . . . . . . . . . . . . . 12
function . . . . . . . . . . . . . . . . . 20 opération booléenne . . . . . . . . 13
ordonnée . . . . . . . . . . . . . . . . 18
G OU EXCLUSIF . . . . . . . . . . . 14
graphique . . . . . . . . . . . . . . . . 18 OU logique . . . . . . . . . . . . . . 14

H P
help . . . . . . . . . . . . . . . . . . . . 24 pas . . . . . . . . . . . . . . . . . . . . . 7
hold . . . . . . . . . . . . . . . . . . . . 18 path . . . . . . . . . . . . . . . . . . . . 25
personnaliser . . . . . . . . . . . . . 25
plot . . . . . . . . . . . . . . . . . . . . 18
I
plot3 . . . . . . . . . . . . . . . . . . . 19
if . . . . . . . . . . . . . . . . . . . . . . . 16
prime . . . . . . . . . . . . . . . . . . . . 7
incrémentation . . . . . . . . . . . . . 7
produit
indice . . . . . . . . . . . . . . . . 10, 15
matriciel. . . . . . . . . . . . . . 12
de colonne. . . . . . . . . . . . . . 9
terme à terme. . . . . . . . . . 12
de ligne . . . . . . . . . . . . . . . . 8
puissance . . . . . . . . . . . . . . . . 12
instructions
conditionnelles . . . . . . . . . 16
R
contrôle de . . . . . . . . . . . . 16
relation d’ordre . . . . . . . . . . . 13
de type SI ALORS SINON. 16 rendu réaliste . . . . . . . . . . . . 19
de type TANT QUE . . . . . . 17 répertoire
répétées. . . . . . . . . . . . . . . 17 courant. . . . . . . . . . . . . . . 25
inverse . . . . . . . . . . . . . . . . . . 12 d’accueil . . . . . . . . . . . . . 25

L S
lettres sauvegarde . . . . . . . . . . . . . . 22
majuscules . . . . . . . . . . . . . 6 scalaire . . . . . . . . . . . . . . . . 5, 7
minuscules . . . . . . . . . . . . . 6 séparateur
ligne . . . . . . . . . . . . . . . . . . . . . 6 décimal . . . . . . . . . . . . 6, 22
ensemble de . . . . . . . . . . . 10 size . . . . . . . . . . . . . . . . . .
... 7
liste somme . . . . . . . . . . . . . . . .
. . 12
sous-matrice . . . . . . . . . . . 6, 10

Initiation à MATLAB 50
Chap. : Index

sous-programme . . . . . . . . . . . 20
sous-répertoires . . . . . . . . . . . 25
soustraction . . . . . . . . . . . . . . 12
startup.m . . . . . . . . . . . . . . . . 25
std . . . . . . . . . . . . . . . . . . . . . . 9
surf . . . . . . . . . . . . . . . . . . . . . 19
surface . . . . . . . . . . . . . . . . . . 19
syntaxe . . . . . . . . . . . . . . . . . . 24

T
table de vérité . . . . . . . . . . . . . 14
tableur . . . . . . . . . . . . . . . . . . 22
tabulation . . . . . . . . . . . . . . . . 22
test . . . . . . . . . . . . . . . . . . . . . 13
toolbox . . . . . . . . . . . . . . . . . . 25
transposée . . . . . . . . . . . . . . . 12

V
valeur
de début . . . . . . . . . . . . . . . 7
de fin . . . . . . . . . . . . . . . . . . 7
liste de. . . . . . . . . . . . . . . . 17
valeur logique
FAUX . . . . . . . . . . . . . . . . 13
VRAI . . . . . . . . . . . . . . . . . 13
variable
d’entrée. . . . . . . . . . . . . . . 20
de sortie . . . . . . . . . . . . . . 20
locale . . . . . . . . . . . . . 20, 21
view . . . . . . . . . . . . . . . . . . . . 19
virgule . . . . . . . . . . . . . . . . . . . 6

W
while . . . . . . . . . . . . . . . . . . . 17
who. . . . . . . . . . . . . . . . . . . . 5, 6
whos . . . . . . . . . . . . . . . . . . . . .7

Z
zeros . . . . . . . . . . . . . . . . . . . . .8

Initiation à MATLAB 51

Vous aimerez peut-être aussi