Matlab French

download Matlab French

of 49

  • date post

    21-Jun-2015
  • Category

    Documents

  • view

    327
  • download

    2

Embed Size (px)

Transcript of Matlab French

MEC 1310:TI en Gnie Mcanique MODULE C: LA PROGRAMMATION AVEC MATLAB

Dpartement de Gnie Mcanique cole Polytechnique de Montral Montral, Canada. 19 septembre 2007

c 2007

Table des matires1 Gnralits 1.1 Prsentation . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Aide et documentation . . . . . . . . . . . . . . . . . . . . . 2 Types de donnes 2.1 Donnes numriques . . . . . . . . 2.1.1 Les entiers . . . . . . . . . . 2.1.2 Les rels . . . . . . . . . . . 2.1.3 Nombres complexes . . . . . 2.1.4 Reprsentations particulires 2.1.5 Les formats dcriture . . . . 2.1.6 Oprations et fonctions . . . 2.2 Donnes logiques . . . . . . . . . . 2.2.1 Oprations et fonctions . . . 2.3 Donnes charactres . . . . . . . . 2.4 Donnes calendrier . . . . . . . . . 3 Programmation 3.1 Les variables . . . . . . . . . . . . . 3.2 Les noncs . . . . . . . . . . . . . 3.3 Les scripts et fonctions . . . . . . . . 3.4 Les entres/sorties . . . . . . . . . . 3.5 Graphisme . . . . . . . . . . . . . . 3.6 Exemples . . . . . . . . . . . . . . . 3.6.1 Lnonc conditionel IF . . . 3.6.2 Lnonc inconditionnel FOR 3.6.3 Lnonc WHILE . . . . . . . 2 4 4 5 7 7 8 8 9 10 11 12 13 13 14 15 16 16 18 22 25 25 26 26 27 29

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

TABLE DES MATIRES 4 Structures de donnes 4.1 Les matrices . . . . . . . . 4.2 Loprateur " :" . . . . . . . 4.3 Scalaire vs vecteur . . . . . 4.4 Scalaire vs matrice . . . . . 4.4.1 Structure scalaire . 4.4.2 Structure vectorielle 4.4.3 Structure matricielle

3 31 31 33 34 36 36 37 38 39 39 40 42 43 44 47 48

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

5 Applications 5.1 Calcul vectoriel . . . . . . . . . . . . 5.2 Calcul matriciel . . . . . . . . . . . . 5.3 Rsolution de systmes dquations 5.4 Formes paramtriques des courbes 5.4.1 La droite . . . . . . . . . . . . 5.4.2 Lhlice et cercle . . . . . . . 5.5 Rotation dun objet . . . . . . . . . .

MEC1310

c 2006

Chapitre 1 Gnralits1.1 PrsentationMATLAB c est un ensemble doutils informatiques pour le dveloppement de programmes qui intgrent le calcul numrique, la visualisation et les interface graphiques. Le systme comprend : Un environnement de dvelopement ; Une programmathque de fonctions mathmatiques ; Un langage de programmation ; Un langage graphique ; Un protocole dinterfaces externes. Lenvironnement se prsente sous la forme dune interface graphique avec plusieurs fentres pour la saisie et lexcution des commandes ; la prsentation de l historique de la session de travail ; un accs aux variables en mmoire ; la navigation et la gestion des chiers et rpertoires, En plus, un diteur adapt au langage Matlab facilte la rdaction de programme et de fonctions, le tout complt par un sytme dassistance la programmation (dtection derreurs, trac du droulement de lexcution dun programme....) Sur le plan de la programmation, le langage Matlab est bas sur une structure de donne o llment de base est un tableau avec un jeu oprations adapt cette entit. La syntaxe pour le traitement de variables qui se reprsentent sous la forme de vecteurs ou matrices se trouve sim4

1.2. AIDE ET DOCUMENTATION

5

F IG . 1.1 Environnement de dveloppement Matlab plie. En plus une programmathque permet des oprations varies et riches en fonctionalits. Lintgration du langage avec linterprteur, lditeur et la documentation en fait un outil bien adapt au dveloppement dapplications scientiques.

1.2 Aide et documentationDans une session Matlab, il est possible dobtenir une aide en ligne sur une commande en tapant : help nomCommande On peut aussi utiliser la commande doc qui donne accs la documentation en ligne par lintermdiaire dune fentre MOSAIC. Pour quitter cette documentation, cliquer sur Exit Program dans le menu File de la fentre MOSAIC. demo : dmonstration de Matlab avec des exemples couvrant un large ventail dapplications ; cd : change de rpertoire ; MEC1310 c 2006

6

CHAPITRE 1. GNRALITS

pwd : donne le rpertoire courant ; ls ou dir : donne la liste de chiers dans le rpertoire courant ; delete : supprime un chier ; ... pour crire une instruction sur la ligne suivante ; : recherche la commande prcdente dans la mmoire tampon du systme. Cette fonctionalit permet de reprendre une commande sans avoir la retaper ; : mme fonction dans le sens inverse ; On notera la similitude avec les commandes du systme UNIX.

c 2006

MEC1310

Chapitre 2 Types de donnesUn ordinateur permet de travailler avec des donnes : les crer, les manipuler, les traiter et les archiver. Au niveau le plus bas, ces donnes sont des quantits binaires et incomprhensibles par un humain. Grce des programmes, ces donnes primitives sont enrichies par un langage de programmation qui leur donne un sens dans le contexte dune application. Ainsi le type de donnes que permet un langage dpend du domaine ; scientique, nancier, organisationnel.....Dans le domaine scientique, on traite de quantits physiques qui se reprsentent principalement par des nombres, auxquels sajoutent les quantits logiques et parfois les quantits de type caractre. Les oprations de manipulations sont celles de larithmtique et de lalgbre ; addition, soustraction, multiplication et division. Pour des calculs plus sophistiqus, on ajoute un jeu de fonctions, telles les fonctions trigonomtriques, statistiques et du calcul analytique.

2.1 Donnes numriquesLes donnes numriques dans les langages de programmation scientique correspondent aux quantits numriques de larithmtique classique : les nombres entiers ; les nombres rels ; les nombres complexes ; 7

8

CHAPITRE 2. TYPES DE DONNES

Matlab permet la reprsentation de ces types, positifs et negatifs, avec divers niveaux de prcision.

2.1.1 Les entiersLorsque lon travaille avec des entiers de petite et moyenne tailles, il est avantageux de les dclarer comme tels avec les fonctions intxx pour des valeurs ngatives et positives, ou uintxx pour des valeurs positives. La partie xx indique le nombre de bits utiliss. Par exemple, on dclare un entier avec 16 bits laide de la commande, x = int16(32501) Comme un bit est utilis pour le signe, si on manipule des entiers positifs (> 0), alors la dclaration 1 , x = uint16(312) permet une plus grande plage pour ces nombres. Selon la plage des nombres entiers reprsenter, on utilisera la dclaration approprie, parmi celles montres au Tableau 2.1, ce qui permet une conomie de mmoire et de traitement. 8-bit 16-bit 32-bit 64-bit int8 int16 int32 int64 -ve < 0 < +ve 27 27 1 215 215 1 231 231 1 263 263 1 uint8 uint16 uint32 uint64 >0 0 0 0 0 28 1 216 1 232 1 264 1

TAB . 2.1 Le type entier

2.1.2 Les relsThoriquement, un rel ncessite une prcision innie pour le reprsenter exactement. Avec un nombre ni de bits, soit 16, 32, 64 ou mme 128 on nobtient quune approximation. Un nombre est reprsent dans la forme,1

int pour integer et uint pour unsigned interger en anglais

c 2006

MEC1310

2.1. DONNES NUMRIQUES

9

nombre = mantisse 10exposantPar exemple, le nombre 357.87 sera reprsent par 3.5787 102 , et 0.000469 par +4.69 104 . En pratique avec 64 bits, on peut reprsenter des nombre sur les plages suivantes : Nombres ngatifs Nombres positifs : : 1.79769e + 308 2.22507e 308 +2.22507e 308 +1.79769e + 308

Cette reprsentation 64 bits ncessite 53 bits pour la mantisse, 10 pour lexposant et 1 bit pour le signe. Les nombres plus grands que +1.79769e + 308, ou plus petits que 1.79769e + 308, ne peuvent tre reprsents avec seulement 64 bits, et on leur attribue la valeur Inf = 1.79769e + 308. Similairement, le plus petit nombre que lon peut reprsenter est 2.22507e 308 ; cest--dire quil ny a pas, strictement parlant, de zro ! Par dfaut, MATLAB dclare tous les nombres avec 64 bits, et que lon appelle des doubles. Pour toutes ns pratiques, ces derniers couvrent la plupart des besoins en calcul scientique. Dans de nombreuses applications, des calculs en simple prcision, single, sufront. On utilise alors 32 bits, permettant de rprsenter des nombres sur les plages suivantes : Nombres ngatifs Nombres positifs : : 3.40282e + 038 1.17549e 038 +1.17549e 038 +3.40282e + 038

Dans ce mode, les nombres plus grands que 3.40282e + 038 en valeur absolue seront reprsents par Inf, c--d innit. Comme la reprsentation par dfault est le double, on obtient un single par la dclaration, x = single(567.89) Ce qui reprsente une conomie despace et de traitement lorsque la double prcision nest pas ncessaire.

2.1.3 Nombres complexesLes nombres complexes sont composs dune partie relle et dune partie imaginaire, qui est un nombre rel