Présentation
En anglaisRÉSUMÉ
Système interactif de programmation scientifique pour le calcul numérique et la visualisation graphique, MATLAB est basé sur la représentation matricielle des données. Disponible sur plusieurs plateformes, cet outil se présente comme un environnement ouvert et programmable, permettant un gain de productivité important. Son langage de programmation relativement simple le rend accessible à une population et un public diversifiés (chercheurs, étudiants, financiers, industriels…). Cet article a pour objectif de familiariser le lecteur à l’utilisation de ce formidable outil aux possibilités immenses.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
Jacques PRADO : Docteur en électronique - Maître de conférences à l’École nationale supérieure des télécommunications (ENST )
INTRODUCTION
MATLAB→ est un système interactif de programmation scientifique, pour le calcul numérique et la visualisation graphique, basé sur la représentation matricielle des données, dont le nom est dérivé de Matrix Laboratory. C’est un outil multi-plates-formes qui est disponible pour les environnements Windows, Unix (et dérivés BSD, Linux, Solaris, MacOS...).
MATLAB a été écrit à l’origine, en Fortran, par C. Moler. La version actuelle, écrite majoritairement en C (mais aussi Perl, Java et autres) par The MathWorks Inc., existe en version professionnelle et étudiante, et est disponible sur plusieurs plates-formes avec quelques différences minimes de fonctionnalités. MATLAB se présente comme un environnement complet pour le calcul et la visualisation. Son langage de programmation relativement simple à assimiler en fait un environnement ouvert et programmable qui permet un gain de productivité important.
Outre le noyau, MATLAB peut être complété par des outils (« tool boxes ») spécifiques à certains domaines comme le traitement du signal, l’image, l’automatique, les statistiques, la mécanique, le calcul symbolique, les réseaux de neurones... Il est possible de lui adjoindre un environnement supplémentaire Simulink→ permettant d’effectuer de la programmation par schémas-blocs.
Ainsi, MATLAB s’adresse à un large public ; il est utilisé tant pour le développement industriel que pour l’analyse financière ou l’enseignement et la recherche. Il n’est besoin pour s’en rendre compte que de consulter le site de MathWorks, qui offre un nombre considérable d’informations sur les développements réalisés à l’aide de cet outil.
MATLAB se présente avant tout comme un langage de commande dont la caractéristique est d’être interprété ; il permet donc d’utiliser simplement des structures de données et d’écrire rapidement des programmes assez complexes. Bien qu’il se veuille complet et autonome, MATLAB reste ouvert aux autres langages tels que C, Fortran et Java, ce qui permet d’en étendre les possibilités. Comme pour tout langage de commande, il peut apparaître une certaine lenteur d’exécution, notamment lors de l’écriture de boucles. Il est alors possible d’écrire les parties sensibles du code dans un autre langage de manière à en accélérer l’exécution. De plus, à l’aide de la boîte à outils compilateur (MATLAB Compiler), la génération automatique de code C et la création d’un programme « stand alone » ou d’une libraire dynamique partageable à partir d’une application développée en code MATLAB sont particulièrement simples à effectuer.
Le présent document a pour but de familiariser le lecteur avec l’utilisation de MATLAB. Les compléments d’information peuvent être facilement obtenus grâce à l’aide en ligne incluse dans le logiciel.
Il est cependant évident que les possibilités de MATLAB sont nettement plus importantes que celles décrites ici et que l’on devra faire appel à la documentation complète pour les utiliser.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Mathématiques
(166 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
2. Commandes
2.1 Entrée et traitement des données
MATLAB travaille sur des objets de type matriciel qui peuvent être réels ou complexes. Par conséquent, un scalaire est une matrice 1 × 1 et un vecteur une matrice N × 1.
Les matrices peuvent être définies de plusieurs façons :
>> A = [12 1 4; 8 5 13; 7 9 2] est la matrice
qui peut aussi être définie par :
Les éléments d’une même ligne sont séparés par un espace ou une virgule, les lignes sont elles-mêmes séparées par un point-virgule ou un retour chariot.
Une matrice à éléments complexes est définie de manière très simple par :
A = [12 1; 4 8] + i * [5 3; 9 7]
ouA = [12 + 5i 1 + 3i; 4 + 9i 8 + 7i]
Les imaginaires purs i ou j peuvent être utilisés indifféremment à condition de ne pas avoir été redéfinis avant utilisation.
Remarque : ne pas insérer d’espace dans la définition d’un nombre complexe.
Les matrices peuvent aussi être chargées à partir d’un fichier.
Certaines fonctions de MATLAB génèrent automatiquement des matrices, ce sont par exemple les fonctions magic ou randn :
-
A=magic(4) crée un carré magique de dimension 4 × 4 (figure 3 a) ;
-
A=randn(3,2) crée une matrice 3 × 2 dont les éléments sont aléatoirement distribués suivant une loi normale centrée (figure 3 b).
Chaque élément d’une matrice est accessible par ses indices notés entre parenthèses. L’élément de la 3e ligne et 4e colonne est A(3,4). Pour un vecteur x, la 2e composante est x(2).
Cet article fait partie de l’offre
Mathématiques
(166 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Commandes
BIBLIOGRAPHIE
-
(1) - * - L’ensemble des titres d’ouvrages consacrés à MATLAB est accessible sur le site de l’éditeur du logiciel : http://www.mathworks.com/support/books
-
(2) - * - Les titres donnés ici ne sont qu’un bref aperçu des nombreux ouvrages disponibles.
-
(3) - LIPSMAN (R.L.) - A Guide to MATLAB - . Cambridge University Press (2001).
-
(4) - ZÖLZER (U.) (éd.) - DAFX – Digital Audio Effects - . John Wiley & Sons (2002).
-
(5) - INGLE (V.K.) - Digital Signal Processing Using MATLAB - . Thomson Learning (1999).
-
(6) - HANSELMAN (D.), LITTLEFIELD (B.) - Mastering MATLAB 7 - . Pearson/Prentice Hall (2005).
-
...
ANNEXES
-
Didacticiels et informations
-
En anglais
The MathWorks http://www.mathworks.com/products
Université de l’Utah, département mathématiques http://www.math.utah.edu/lab/ms/matlab/matlab.html
Université de Floride http://www.math.ufl.edu/help/matlab-tutorial
A Practical Introduction to Matlab par M.S. Gockenbach http://www.math.mtu.edu/~msgocken/intro/intro.html
Control tutorials to Matlab, Carnegie-Mellon https://ctms.engin.umich.edu/CTMS/index.php?aux=Home
Stat/Math Center https://iscc.indiana.edu/
Southern Illinois University https://siu.edu/
Software at MIT http://web.mit.edu/afs/athena/software/matlab/www
-
En français
The Mathworks http://www.mathworks.fr
Introduction à MATLAB et Simulink par H. Le-Huy http://www.gel.ulaval.ca/~lehuy/intromatlab
Cours MATLAB par F. Aloui http://www.sciences.univ-nantes.fr/physique/perso/aloui
Introduction au logiciel Matlab par M. Postel http://www.ann.jussieu.fr/~postel/matlab
...
-
Cet article fait partie de l’offre
Mathématiques
(166 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive