Formation MATLAB PRÉSENTER PAR : BOUKHIRA NASREDDINE
qu’est-ce que Matlab ? Le logiciel Matlab constitue un système interactif et convivial de calcul numérique et de visualisation graphique. Destinée aux ingénieurs, aux techniciens et aux scientifiques, c’est un outil très utilisée, dans les universités comme dans le monde industriel, qui intégré des centaines de fonctions mathématiques et d’analyse numérique(calcul matriciel |le MAT de Matlab|, traitement de signal, traitement d’images, visualisations graphiques,etc.). MATLAB (« matrix laboratory ») est un langage de programmation de quatrième génération (sont un type de de langage de programmation apparu en 1980, proche des langues naturelles, qui permet d'écrire plus de choses avec moins de lignes de programmes et moins d'erreurs.) il est utilisé à des fins de calcul numérique. Développé par la société The MathWoks
Les caractéristiques principales Il peut être utilisé de façon interactive ou en mode programmation. En mode interactif, l’utilisateur a la possibilité de réaliser rapidement des calculs sophistiqués et d’en présenter les résultats sous forme numérique ou graphique. En mode programmation, il est possible d’écrire les scripts (programmes) comme avec d’autres langages. L’utilisateur peut aussi créer ses propres fonctions pouvant être appelées de façon interactives ou par les scripts. Ces fonctions fournissent à MATLAB un atout inégalable : son extensibilité. Ainsi, l’environnement MATLAB peut être facilement étendu. Il n’est pas nécessaire de faire des déclarations de variables C’est un langage interprété (Un programme écrit dans un langage interprété a besoin d'un programme auxiliaire (l'interpréteur) pour traduire au fur et à mesure les instructions du programme.)
Lorsque vous lancer MATLAB pour la première fois, l’interface utilisateur apparaît dans une configuration par défaut. L’interface de MATLAB
L’interface principale se décompose comme suit : 1 -Command window : Permet d’exécuter des commandes en dehors de programme et affiche les résultats. 2-Current Directory : Contenu du répertoire courant où doit se situer vos programmes. 3-Workspace : Affiche l’ensemble des variables utilisées. 4-Commande History : Permet de visualiser les dernières commandes exécutées. Il est possible de faire glisser ces commandes vers la fenêtre de commande. 5-Choix du répertoire courant: c’est le dossier où doit se situer vos programmes (fichiers *.m)
Exemple Lorsque vous travaillez dans MATLAB, vous émettez des commandes qui créent des variables et des appels de fonctions. Par exemple, nous allons créer une variable nommée « a » dans l’environnement MATLAB en tapant la commande « a=1 » dans la fenêtre de commande. MATLAB l’ajoute alors dans le Workspace et affiche le résultat dans la fenêtre de commande. Je vous propose de créer plusieurs variables et ensuite de regarder le contenu du Workspace:
Lorsque vous ne spécifiez pas une variable de sortie, MATLAB utilise la variable « ans », qui est un raccourcis de « answer », pour stoker le résultat de votre calcul. Si vous terminer votre commande par un point-virgule (;), MATLAB traite très bien la commande mais n’affiche pas le résultat. Cette technique est utilisée pour ne pas remplir inutilement l’invite de commande de MATLAB.
Mettre plusieurs instructions sur une ligne >> A=5;, B=3;, C=1; Mettre une instruction sur plusieurs lignes Arrêter l’exécution d’une instruction →→ Ctrl+C Sauvegarder votre travaille →→ diary fichier,Txt – diary off Nettoyer la fenêtre de commande →→ clc Nettoyer la fenêtre de Workspace →→ clear all
Astuce ! La liste des variables stockées dans l’espace de travail peut être obtenue par les commandes →→ ( who : affichage des variables, whos: affichage en détaille) Pour compléter le nom d’une commande →→ Utiliser la touche Tab Accès à l’aide sur une fonction ou sur un sujet →→ help >sujet< donne la liste des fichiers.m et.mat présents dans le répertoire courant →→ what
Les types de données Les trois principaux types de variables utilisés par MATLAB sont les types réel, complexe et chaîne de caractères. Il n'y a pas de type entier à proprement parler. Le type logique est associé au résultat de certaines fonctions. Les nombres complexes sous MATLAB : L’imaginaire pur i (i 2 = -1) est noté i ou j. Un nombre complexe est donc de la forme z = a + ib ou a + jb. Mais MATLAB, dans ses réponses, donne toujours le symbole i. La conjugué d’un nombre complexe est obtenu par la fonction conj Exemple :
Le type chaîne de caractères Une chaîne de caractères est un tableau de caractères. Une donnée de type chaîne de caractères (char) est représentée sous la forme d'une suite de caractères encadrée d'apostrophes simples ('). Exemple :
les types réel tout les données numérique sont stocker par MATLAB ce forme d’une matrice un scalaire est une matrice 1 × 1 un vecteur (ligne ou colonne) est une matrice à une ligne ou une colonne Exemple :
Exemple ! Voici l’exemple suivant qu’illustre une déclaration d’une matrice de taille 3*3
Les opérateurs Logique == Opérateur d'égalité. Retourne 1 si égal, 0 sinon. ~ Inverse les valeurs logiques (0 devient 1 et 1 devient 0) ~= Non égal < Plus petit que <= Plus petit ou égal >= Plus grand ou égal | Ou (union logique) & Et (intersection logique)
Les Opérateurs arithmétique Addition (scalaire et matricielle). - Soustraction (scalaire et matricielle). * Multiplication (scalaire et matricielle). .* Multiplication élément par élément pour 2 matrices de même taille. / Division (scalaire et matricielle) a/b équivalent à a*inv(b) si b est carrée \ Division matricielle % Commentaires dans un fichier NaN Not a Number. Peut indiquer des valeurs manquantes. Il faut faire attention à la façon dont chaque fonction traite les valeurs manquantes.
Fonctions prédéfinies Ce sont les fonctions mathématiques usuelles, sont prédéfinies dans MATLAB Voici une liste non exhaustive L’argument d’entrée peut être un scalaire, un vecteur ou une matrice. L’argument de sortie est une matrice de même dimension, la fonction étant appliquée sur chacun de ses éléments Exemple :
Les Matrices
Généralisation Dans ce chapitre, nous allons aborder un point important : les matrices ! C'est important, parce qu'historiquement MATLAB a été développé pour manipuler des matrices, et la plupart des fonctions tiennent compte du fait que potentiellement elles puissent être appliquées à des matrices. Un vecteur est un tableau à une seule dimension. On parle de vecteur ligne, si les données sont sur une même ligne (c'est-à-dire dans différentes colonnes) et de vecteur colonne si les données sont sur une même colonne (c'est-à-dire dans différentes lignes). Pour MATLAB, tout variable ou bien un constant déclarés est une matrice Un nombre : matrice de dimension 1 x 1 Un vecteur en ligne : 1 x n Un vecteur en colonne : m x 1 Une matrice multidimensionnelle (3D) : m x n x p
Quelques exemples concrets Un vecteur en ligne : 1 x 4 Un vecteur en colonne : 2 x 1 Une matrice multidimensionnelle : 2 x 3 x 3
L’affectation On utilise les crochets [ et ] pour définir le début et la fin d'un tableau ou d'une matrice.
Exemple !
L’opérateur ( : ) Permet de créer un vecteur (une série numérique)
Accès à un élément d'un tableau L’adressage : La méthode d'indexage classique consiste à spécifier la position d'un élément en fonction de l'indice de la ligne et de l'indice de la colonne où il se trouve dans la matrice en prenant comme premier élément, celui situé en haut à gauche. L'indexage s'effectue entre parenthèses avec en premier l'indice de la ligne et en second, l'indice de la colonne, soit : M(id ligne, id colonne). Remarque : On peut faire un adressage logique !
Exemple ! Accéder à l’élément 0 Extraire la première ligne Extraire la troisième colonne Créer à partir de d le vecteur [-4 19] Extraire les colonnes 2 et 3 Solution :
Opérations sur les matrices Un des atouts remarquables de Matlab est la possibilité d’effectuer les opérations arithmétiques traditionnelles de façon naturelle sans avoir à les programmer. Les opérateurs standards sont donc directement applicables aux matrices Si l’on souhaite effectuer une opération, non pas matricielle, mais éléments par éléments, l’opérateur doit être précédé d’un point «. » :.*./.^.\
Fonctions prédéfinies
La fonction find Exemple :