I. Introduction à MATLAB



Documents pareils
Introduction à MATLAB R

Le langage C. Séance n 4

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Séance 0 : Linux + Octave : le compromis idéal

Présentation du langage et premières fonctions

Calcul Formel et Numérique, Partie I

3.2. Matlab/Simulink Généralités

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

MÉTHODES NUMERIQUES. Cours. Licence de Physique Année Universitaire : Licence Chimie, parcours Physique. Semestre S3

Bases de programmation. Cours 5. Structurer les données

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Introduction au langage C

TP 1 Introduction à Matlab Février 2009

TP 1. Prise en main du langage Python

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle P. Bonnet

Calcul Formel et Numérique, Partie I

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Rappels Entrées -Sorties

Cours d initiation à la programmation en C++ Johann Cuenin

TP1. Outils Java Eléments de correction

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Projet Matlab : un logiciel de cryptage

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Programmer en JAVA. par Tama

Sélection du contrôleur

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

UE Programmation Impérative Licence 2ème Année

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume

ALGORITHMIQUE ET PROGRAMMATION En C

TP : Gestion d une image au format PGM

Python - introduction à la programmation et calcul scientifique

Cours 1. I- Généralités sur R II- Les fonctions de R et autres objets III-Les vecteurs

LES TYPES DE DONNÉES DU LANGAGE PASCAL

TD3: tableaux avancées, première classe et chaînes

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Plan du cours Cours théoriques. 29 septembre 2014

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

ESPACE COLLABORATIF SHAREPOINT

Le Registre sous Windows 8 architecture, administration, script, réparation...

Programmation Orientée Objet Java

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Introduction à MATLAB

Une chaîne de caractères est toute suite de caractères placés entre guillemets.

Cours Informatique Master STEP

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Java Licence Professionnelle CISII,

UE C avancé cours 1: introduction et révisions

Notions fondamentales du langage C# Version 1.0

COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA

Bases Java - Eclipse / Netbeans

Plan du cours. Historique du langage Nouveautés de Java 7

Cours d Algorithmique et de Langage C v 3.0

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Les chaînes de caractères

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Installation et configuration du serveur syslog sur Synology DSM 4.0

Initiation à la programmation en Python

Programmation C. Apprendre à développer des programmes simples dans le langage C

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Création d installateurs pour Windows avec InnoSetup

MODE D EMPLOI DU MODULE D E-COMMERCE

Algorithmique et programmation : les bases (VBA) Corrigé

Le prototype de la fonction main()

Informatique Générale

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Chapitre 10. Les interfaces Comparable et Comparator 1

Conventions d écriture et outils de mise au point

as Architecture des Systèmes d Information

Utilisation d objets : String et ArrayList

Procédure : Sauvegarder un Windows 7 sur un disque réseau

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Claude Delannoy. 3 e édition C++

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Rappels d architecture

Programmation impérative

Java Licence Professionnelle CISII,

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février :30 à 20:30

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Introduction à R. Florence Yerly. Dept. de mathématiques, Université de Fribourg (CH) SP 2011

Généralités sur le Langage Java et éléments syntaxiques.

Eclipse atelier Java

La mémoire. Un ordinateur. L'octet. Le bit

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Représentation des Nombres

Guide d utilisation 2012

Structurer ses données : les tableaux. Introduction à la programmation

Programmation système I Les entrées/sorties

Langages et Concepts de Programmation Introduction à la programmation en langage C

Apprendre Java en 154 minutes

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Premiers Pas en Programmation Objet : les Classes et les Objets

Chapitre 2. Classes et objets

Paramètres des services Les 3 environnements de saisie Paramètres des sous-services Saisie déportée avec ProfNOTE...

Transcription:

1. Introduction Le nom MATLAB est la contraction du terme anglais matrix laboratory [1]. Ce logiciel est spécialement conçu pour le calcul scientifique et la manipulation de vecteurs et de matrices. Le langage ne nécessite pas de compilation, puisqu il est interprété. Il est donc traduit en langage machine à l exécution [2]. MATLAB est plus qu un langage de programmation, puisqu il s agit d une console d exécution. Il permet d exécuter des fonctions, d attribuer des valeurs à des variables, etc. Il permet d effectuer des opérations mathématiques, de manipuler des matrices, de faire des graphiques, etc. [3]. 2. Environnement de développement Eléments principaux : o Command Window o Command History o Workspace o Current Directory o Help extrêmement utile! Aide sur une commande : help nom_commande 3. Les variables Toutes les variables sont des matrices [2]. La logique de l indexation est (ligne x colonne). Séparateurs : o de ligne : point virgule ou return o de colonne : virgule ou espace blanc 1 / 6

Les variables sont déclarées lorsqu elles sont initialisées : x = 8 y = 1.6524981 vl = [7, 2, 45, 67, 3] vc = [6; 45; 67; 2] z = 'une chaine de caractères' variable scalaire (1x1) variable scalaire (1x1) vecteur ligne (1x5) vecteur colonne (4x1) vecteur ligne (1x25) 3.1. La variable «ans» La variable ans contient la valeur du dernier calcul si celui-ci n a pas été attribué à une autre variable (ne jamais l utiliser!) : 8 * 3 ans = 24 a = 1 * 2 a = 2, ans = 24 3.2. Types numériques Dans MATLAB, la déclaration de types est facultative. Les types sont déterminés lorsque les variables sont initialisées. Ainsi, par défaut, toute variable numérique est à virgule flottante de double précision et les textes sont des chaînes de caractères. La double précision occupe passablement de place dans la mémoire. Pour de grandes variables, il est donc conseillé de changer le type. Les types existants sont les suivants [4]. Types de données Taille (bytes) Gammes de valeurs Fonctions de conversion Signed 8-bit integer 1-2 7 à 2 7-1 int8() Signed 16-bit integer 2-2 15 à 2 15-1 int16() Signed 32-bit integer 4-2 31 à 2 31-1 int32() Signed 64-bit integer 8-2 63 à 2 63-1 int64() Unsigned 8-bit integer 1 0 à 2 8-1 uint8() Unsigned 16-bit integer 2 0 à 2 16-1 uint16() Unsigned 32-bit integer 4 0 à 2 32-1 uint32() Unsigned 64-bit integer 8 0 à 2 64-1 uint64() Double-Precision Floating Point (64 bits) Single-Precision Floating Point (32 bits) 8 4-1.79769e +308 à -2.22507e -308 et 2.22507e -308 à 1.79769e +308-3.40282e +038 à -1.17549e -038 et 1.17549e -038 à 3.40282e +038 double() single() Char 2 0 à 65535 char() Logical (8 bit) 1 0 à 1 logical() 2 / 6

3.2.1. Affichage Attention, on ne voit que 4 chiffres après la virgule lorsque la valeur d une variable est affichée. Mais il y en a en réalité 16 par défaut [2]. Pour changer cet affichage, on utilise la commande format. Exemples avec π [2]: format long 3.14159265358979 format short 3.1416 format long e 3.141592653589793e+00 format short e 3.1416e+00 3.3. Les vecteurs Pour accéder aux éléments d un vecteur, il faut indiquer l index de leur emplacement entre parenthèses : a = [5, 23, 57, 89, 111, 4, 23]; a(2) = 0; a = [5, 0, 57, 89, 111, 4, 23] a(3) = a(4) + a(5); a = [5, 0, 200, 89, 111, 4, 23] Si nous désirons accéder à plusieurs éléments pour travailler sur un sous-vecteur, les deux points ( : ) sont utilisés de cette manière : b = a(1:3); b = [5, 0, 200] b(1:2) = 1; b = [1, 1, 200] La fonction size() permet de connaître la taille d un vecteur ou d une matrice, selon les deux dimensions : vl = [7, 2, 45, 67, 3] vc = [6; 45; 67; 2] size(vl); [1, 5] size(vc); [4, 1] Puisque les vecteurs n ont qu une dimension, la fonction length() est plus simple, car elle retourne la plus longue dimension : length(vl); 5 length(vc); 4 3.4. Les chaînes de caractères Il est possible de concaténer des mots à l'aide des parenthèses carrées [3] : mot1 = 'bonjour'; mot2 = 'monde'; phrase = [mot1, ' ', mot2] phrase = bonjour monde 3 / 6

Il n est pas possible de mélanger directement les variables numériques et les variables textes. Pour afficher une valeur numérique dans un texte, il est nécessaire de la transformer en texte (string) à l aide de la fonction num2str() : a = 52; b = a/2; str = ['La moitié de ', num2str(a), ' est ', num2str(b)]; 4. Le Workspace Quelques commandes générales sur les variables [2]: who affiche toutes les variables. whos affiche toutes les variables avec taille et type. size(a) affiche les dimensions de la matrice a. clear var efface la variable var. clear all efface toutes les variables. 5. Le langage 5.1. Fin de commande Après chaque commande, il est nécessaire d écrire un point-virgule. Si le point-virgule est oublié, le script fonctionne, mais les résultats de la commande sont affichés dans la fenêtre de commandes : L instruction suivante : affichera : >> a = pi * 2 a = 6.283185307179586 Alors que : >> a = pi * 2; n affiche rien. Ceci rend les programmes plus rapides et évite de remplir inutilement la fenêtre de commande. Pour afficher une valeur de manière propre, on préférera la commande disp(). disp(a); 6.283185307179586 4 / 6

5.2. Les commentaires Lorsque nous désirons écrire un commentaire dans notre code, le signe de pourcentage (%) permet d écrire du texte que MATLAB ignorera à l exécution. % ceci est un commentaire x = 3 ; % encore un commentaire 5.3. Opérateurs basiques Les opérateurs basiques sont instinctifs. Ils s utilisent autant sur des variables scalaires que sur des matrices. z = x + y; z = x * y; z = x / y; z = x^a; addition ou somme matricielle multiplication ou produit matriciel division ou division matricielle puissance ou puissance matricielle (x doit être une matrice carrée) Lors d une opération matricielle, les matrices doivent être de dimensions cohérentes! Les opérations éléments par éléments seront étudiées plus tard. Pour transposer une matrice ou un vecteur, l opérateur ( ) est utilisé : a = [4, 2, 6]; b = a ; b = [4; 2; 6] Quelques exemples d opérations sur les vecteurs : a = [34, 56, 5, 8]; b = [23, 7, 34, 7]; c = a * 2; c = [68, 112, 10, 16] d = a / 4; d = [8.5, 14, 1.25, 2] e = a + 3; e = [37, 59, 8, 11] f = a + b; f = [57, 63, 39, 15] g = a * b; Inner matrix dimensions must agree. b = b ; b = [23; 7; 34; 7] g = a * b; g = 1400 5.4. Opérateur d'incrémentation Le double point ( : ) est l'opérateur d'incrémentation dans MATLAB [3]. a = [0:1:5]; a = [0, 1, 2, 3, 4, 5] b = [0:0.2:1]; b = [0, 0.2, 0.4, 0.6, 0.8, 1] Si le pas d incrémentation n est pas précisé, il est de 1 par défaut : a = [0:5]; a = [0, 1, 2, 3, 4, 5] 5 / 6

6. Les scripts MATLAB permet d écrire des programmes, que ce soit des scripts ou des fonctions [2]. Nous nous limiterons présentement aux scripts. Un fichier script (script file) est une suite de commandes MATLAB. Ces fichiers ont l extension.m. Pour créer un script : File > New > M-File. Nous pouvons écrire dans un script toutes les commandes que nous désirons exécuter consécutivement, comme nous l aurions fait dans l invite de commandes. Pour exécuter un script existant, il faut tout d abord changer le répertoire courant en sélectionnant le bon répertoire, puis taper le nom du script (sans extension) dans la fenêtre de commande. Ou appuyer sur le bouton Run de l Editeur. Il est possible de débogguer un programme en ajoutant des points d arrêt à l endroit qui nous intéresse. Le script modifie les valeurs des variables du workspace. Il ne prend pas d argument en entrée et ne retourne rien. Ces deux points le différentient des fonctions. Puisqu un script partage les mêmes variables que l invite de commande, il est d usage de commencer par faire le ménage : clear all. Habituellement, on utilise les fichiers scripts afin de [3] : o Initialiser le système (fonctions clear) o Déclarer les variables o Effectuer les opérations algébriques o Appeler les fonctions o Tracer les figures 7. Références [1] Wikipedia.org [2] Dellis Jean-Luc. Introduction à MATLAB. Université de Picardie. [3] Hudon Nicolas, 2004. Initiation à MATLAB. URCPC, Ecole Polytechnique de Montréal. [4] MATLAB Help 6 / 6