Programmation Matlab interaction, structures de contrôle, scripts, fonctions, entrées-sorties

0 Installation/configuration Octave
1Notions de base
1.1Introduction
1.2Octave-Forge vs. MATLAB
1.3Démarrer, quitter, prologue
1.4Aide, démos, liens Internet
1.5Types de nombres, variables, fonctions
1.6Fenêtre de commandes, copier/ coller, formatage nombres
1.7Packages Octave-Forge
2Workspace, environnement, commandes OS
2.1Workspace, journal, historique
2.2Environnement, path de recherche
2.3Commandes en liaison avec OS
3Constantes, opérateurs et fonctions de base
3.1Scalaires, constantes
3.2Opérateurs de base (arith., relationnels, logiques)
3.3Fonctions de base (math., logiques)
4Objets : vecteurs, matrices, chaînes, tableaux multidim. et cellulaires, structures
4.1Séries (ranges)
4.2Vecteurs
4.3Matrices
4.4Opérateurs matriciels
4.5Fonctions matricielles (réorganis., calcul, stat., recherche, logiques), indexation logique
4.6Chaînes de caractères
4.7Tableaux multidimensionnels
4.8Structures (enregistrements)
4.9Tableaux cellulaires (cell arrays)
5Diverses autres notions
5.1Dates et temps, timing
5.2Equations non linéaires
6Graphiques, images, animations
6.1Concepts de base
6.2Graphiques 2D
6.3Graphiques 2D½ et 3D
6.4Traitement d’image
6.5Sauvegarder et imprimer
6.6Handle Graphics
6.7Animations, movies
7Programmation : interaction, structures de contrôle, scripts, fonctions, entrées-sorties
7.1Généralités
7.2Éditeur et debugger
7.3Interaction écran/clavier, warnings/erreurs, debugging
7.4Structures de contrôle (for, while, if, switch-case, try-catch)
7.5Autres commandes program.
7.6Scripts, mode batch
7.7Fonctions, P-Code
7.8Entrées-sorties, formats, fichiers
7.9Interfaces graphiques (GUI)

Avant-propos

Mis à jour en septembre 2012, le présent support de cours se rapporte aux versions MATLAB 7 et GNU Octave 3.6.2 avec extensions Octave-Forge. Il s’efforce de faire systématiquement le parallèle entre ces 2 progiciels – le premier commercial, le second libre/open-source – et vise notamment à démontrer le très haut degré de compatibilité de GNU Octave par rapport à MATLAB, et le fait que ce logiciel libre peut donc être utilisé, en environnement académique, en lieu et place de MATLAB dans la plupart des situations.
Accessible sous http://enacit1.epfl.ch/cours_matlab/, ce support de cours a été conçu comme base à l’introduction à MATLAB et GNU Octave donnée à l’EPFLpar l’auteur aux étudiants de Bachelor 3e semestre en Sciences et ingénierie de l’environnement (ENAC-SSIE) dans le cadre du cours « Informatique pour l’ingénieur ».

1. Notions de base MATLAB et GNU Octave

1.1 Introduction
1.1.1 Qu’est-ce que MATLAB et GNU Octave ?
MATLAB est un logiciel commercial de calcul numérique/scientifique, visualisation et programmation très performant et convivial développé par la société The MathWorks Inc. Notez que ce n’est cependant pas un logiciel de calcul algébrique ou symbolique (pour cela, voir les logiciels commerciaux Mathematica ou Maple, ou le logiciel libre Maxima).
Le nom de MATLAB vient de MATrix LABoratory, les éléments de données de base manipulés par MATLAB étant des matrices(pouvant bien évidemment se réduire à des vecteurs et des scalaires) qui ne nécessitent ni déclaration de type ni dimensionnement. Contrairement aux langages de programmation classiques (scalaires), les opérateurs et fonctions MATLAB permettent de manipuler directement et interactivement ces données matricielles, rendant ainsi MATLAB particulièrement efficace en calcul numérique, analyse et visualisation de données en particulier.
1.1.2 Quelques caractéristiques fondamentales de MATLAB et GNU Octave
Le langage MATLAB est interprété, c’est-à-dire que chaque expression MATLAB est traduite en code machine au moment de son exécution. Un programme MATLAB/Octave (script, M-file) n’a donc pas besoin d’être compilé avant d’être exécuté. Si l’on recherche cependant des performances supérieures, il est possible de convertir des fonctions M-files en P-code, voire en code C ou C++ (avec le MATLAB Compiler). Depuis la version 6.5, MATLAB intègre en outre un JIT-Accelerator (« just in time ») qui augmente ses performances.
TRÈS IMPORTANT: MATLAB et Octave sont « case-sensitive », c’est-à-dire qu’ils distinguent les majuscules des minuscules (dans les noms de variables, fonctions…).
Ex: les variables abcet Abcsont 2 variables différentes ; la fonction sin(sinus) existe, mais la fonction sinus n’est pas définie…
1.2 GNU Octave versus MATLAB
GNU Octave, associé aux packages Octave-Forge, se présente donc comme un logiciel libre/open-source hautement compatible avec MATLAB. Outre l’apprentissage de MATLAB/Octave, l’un des objectifs de base de ce support de cours est de vous montrer les très nombreuses similitudes entre Octave-Forge et MATLAB. Il existe cependant certaines différences que nous énumérons sommairement ci-dessous. Celles-ci s’aténuent avec le temps, étant donné qu’Octave évolue actuellement dans le sens d’une toujours plus grande compatibilité avec MATLAB, notamment en intégrant progressivement, via les « packages » Octave-Forge (voir chapitre « Packages »), les fonctionnalités des « toolboxes » MATLAB les plus importantes.
1.3 Démarrer et quitter MATLAB ou Octave
1.3.1 Interface graphique et environnement de développement (IDE)
MATLABoffre en standard un IDE(Integrated Development Environment), c’est-à-dire qu’il présente une interface graphique (GUI) se composant, en plus de la fenêtre de Commande et des fenêtres de Graphiques, de divers autres outils sous forme de fenêtres graphiques : Workspace, Editor, Current Directory, Command History, Profiler, Help… (voir figure ci-dessous).
Environnement de développement (IDE) intégré de MATLAB 7
Dans la version de base de GNU Octave, l’interaction s’effectue en mode commande uniquement. Une interface graphique officielle, nommée Octave GUI, est en cours de développement (2011-2012) dans le cadre du projet GNU Octave (voir wiki Octave). La figure ci-dessous donne une idée de cette interface que nous présenterons lorsque’elle sera parvenue à maturité..

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours matlab and gnu octave (4797 KO) (Cours PDF)
Cours matlab

Télécharger aussi :

Laisser un commentaire

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