Introduction à Matlab

Formation Matlab, tutoriel & guide de travaux pratiques en pdf.

Manipulation de variables

Matlab gère les nombres entiers, réels, complexes, les chaînes de caractères ainsi que les tableaux de nombres de façon transparente. Il est inutile de déclarer préalablement le type de la variable que l’on manipule, même pour les tableaux et les matrices, il suffit simplement d’assigner une valeur au nom de la variable avec l’instruction = :
>> a=10 a = 10
La réponse à une commande de ce type est le nom de la variable ainsi que la valeur contenue dans cette variable. Toutes les variables utilisées restent présentes en mémoire et peuvent être rappelées. La plupart des commandes que nous utilisons en Matlab affectent des valeurs à des variables. Lorsque ce n’est pas le cas, le résultat de la commande est automatiquement affectée à la variable ans qui peut être par la suite utilisée comme une variable normale :
>> 10 ans = 10 >> a = ans + 10 a = 20
Attention ce pendant car une autre commande sans affectation écrasera l’ancienne valeur de la variable ans. Matlab conservera en permanence en mémoire les variables que vous avez créées. Ces variables sont affichées dans la fenêtre workspace de l’interface graphique. La commande who en ligne de commande permet d’avoir la liste de ces variables en mode texte. La commande clear all permet de toutes les supprimer. Enfin une troisième fenêtre contient l’historique des commandes. Il est possible de relancer ou modifier une ancienne commande en cliquant sur cette commande dans la fenêtre historique ou en tapant sur la flèche du haut dans la fenêtre de commande.
 Scalaires Le type de scalaire manipulé est transparent pour l’utilisateur. Ce type peut être entier, réel ou complexe :
>> a=1 a = 1 >> b=1.02 b = 1.0200 >> x=1.45e4 x = 14500 >> c=1+2.4i c = 1.0000 + 2.4000i
la constante i est le nombre imaginaire prédéclaré, de même que certaines constantes (e,pi,…).

Vecteurs

Un vecteur ligne se déclare entre crochets en séparant les éléments avec des espaces ou des virgules :
>> v = [ 1 2 4 ] v = 1 2 4 >> w = [ 3, 4.6 , 1+3i ] w = 3.0000 4.6000 1.0000 + 3.0000i
Pour un vecteur colonne, le séparateur est le point- virgule :
>> z = [3;5;6] z = 3 5 6
Il est également possible d’utiliser l’opération de transposition ’ :
>> z = [3 5 6]’ z = 3 5 6
L’accès aux valeurs des vecteurs (pour les lire ou les écrire)se fait à l’aide des parenthèses pour indiquer l’élément souhaité dans le vecteur. Un indice en dehors d’un tableau entraîne un erreur :
>> v(1) ans = 1 >> v(2) = 7 v = 1 7 4 >> v(6) ??? Index exceeds matrix dimensions.
Il existe des commandes pour créer des vecteurs de manière automatique. Par exemple deux – points permet de créer des séquences de nombres en indiquant en option l’intervalle entre ces nombres :
>> 1:4 ans = 1 2 3 4 >> 1:1.5:6 ans = 1.0000 2.5000 4.0000 5.5000
Exercice2 Créez le vecteur [ 9 7 5 3 1] Exercice3 Créez le vecteur :
10.0000 9.5000 9.0000 8.5000 8.0000

Matrices

Les matrices se déclarent comme les vecteurs, en séparant les colonnes par espace et les lignes par point- virgule : >> A = [ 1 3; 4 2] A = 1 3 4 2 L’accès aux valeurs se fait grâce aux parenthèses en précisant d’abord la ligne puis la colonne: >> A(2,1) ans = 4 Il existe différentes méthodes pour créer automatiquement des matrices. Il est possible comme pour les vecteurs d’utiliser la syntaxe : pour créer des suites de nombres en ligne. Il existe aussi des fonctions renvoyant une matrice identité de taille N : eye(N), une matrice de 1 ou de 0 : ones(N,M) et zeros(N,M) (si l’on ne met pas M, une matrice carrée de taille N est renvoyée) :
>> eye(2) ans = 1 0 0 1 >> ones(2,6) ans = 1 1 1 1 1 1 1 1 1 1 1 1
Exercice Créez la matrice : 1 2 3 4 5 6 7 8 9 10 11 12 Enfin, il est possible de connaître la taille d’une matrice ou d’un vecteur avec la commande size(), qui retourne le nombre de lignes et de colonnes.
>> size(ans) ans = 2 6
Matrices creuses Une matrice creuse est une matrice présentant un grand nombre d’éléments nuls qu’il n’est pas nécessaire de stocker, permettant de gagner à la fois de la place mémoire et du temps de calcul. Matlab gère de façon transparente les matrices creuses à l’aide de pointeurs que nous ne décrirons pas ici. Contrairement aux variables classiques on doit déclarer explicitement le type sparse pour spécifier qu’une matrice est creuse. Lors de sa création une matrice est initialisée à zéro : >> AC = sparse(1000,2000) AC = All zero sparse: 1000-by-2000 Il est ensuite possible de mettre des valeurs aux positions souhaitées. On remarquera que le résultat affiché comporte à la fois la position et la valeur des éléments non nuls : >> AC(23,54)=1 AC = (23,54) 1 Toutes les opérations standard sur les matrices s’appliquent aux matrices creuses. Pour des informations supplémentaires sur le type creux taper help sparfun.

Chaînes de caractères

Les chaînes de caractères se manipulent comme des vecteurs. Elles sont déclarées avec des guillemets simples ’
>> s=’Hello’ s = Hello >> s(2) ans = e

Opérations élémentaires

Opérations mathématiques Les opérations sur les scalaires sont standards:addition +,soustraction -,multiplication *,division /, puissanceˆ. La racine carrée s’obtient par lafonction sqrt.On dispose de toutes les fonctions usuelles sur les scalaires : faire help elfun pour de plus amples détails. Attention, les fonctions peuvent renvoyer des complexes :
>> sqrt(- 1) ans = 0 + 1.0000i
Encequiconcernelesvecteursetmatricescesopérateursseprolongentausensducalculvectorielet matriciel. En particulier, il faut veiller à la compatibilité des tailles des objets entre eux.
>> u=1:3 u = 1 2 3
>> v = [1 0 – 1] v = 1 0 – 1
>> u+v ans = 2 2 2
>> v’ ans = 1 0 – 1
>> u*v’ ans = – 2
>> v’*u ans = 1 2 3 0 0 0 – 1 – 2 – 3
Il est également possible de multiplier une matrice par un scalaire.

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *