
Introduction `a Scilab Micha¨el Baudin Artem Glebov Jerome Briot Mars 2013 R´esum´e Dans ce document, nous faisons un survol des fonctionnalit´es de Scilab afin de nous familiariser avec cet environnement. L'objectif est de pr´esenter les comp´etences n´ecessaires pour d´emarrer avec Scilab. Dans la premi`ere partie, nous pr´esentons comment obtenir et installer ce logiciel sur notre ordinateur. Nous pr´esentons ´egalement comment obtenir de l'aide avec la documentation fournie en ligne et aussi gr^aceaux ressources sur internet et aux forums. Dans les sections suivantes, nous pr´esentons le langage Scilab, en particulier ses fonctionnalit´es de programmation structur´ee.Nous pr´esentons une caract´eristique importante de Scilab, qui est la gestion des matrices r´eelles. La d´efinition des fonctions et de la gestion ´el´ementaire des variables d'entr´ee et de sortie est pr´esent´ee. Nous pr´esentons les fonctionnalit´es graphiques de Scilab et nous montrons comment cr´eer un trac´e2D, comment configurer son titre et sa l´egende et comment exporter ce trac´edans un format vectoriel ou bitmap. Table des mati`eres 1 Vue d'ensemble5 1.1 Introduction................................5 1.2 Vue d'ensemble de Scilab.........................5 1.3 Comment obtenir et installer Scilab...................6 1.3.1 Installer Scilab sous Windows..................7 1.3.2 Installation de Scilab sous GNU/Linux.............7 1.3.3 Installation de Scilab sous Mac OS...............8 1.4 Comment obtenir de l'aide........................8 1.5 Listes de diffusion, forum, wiki, rapports de bogue et la Forge....9 1.6 Obtenir de l'aide `apartir des d´emonstrations Scilab et des macros.. 11 1.7 Exercices.................................. 12 2 Mise en route 12 2.1 La console................................. 13 2.2 L'´editeur.................................. 14 2.3 Ancrage des fen^etres graphiques..................... 17 2.4 Le navigateur de variable et l'historique des commandes....... 18 2.5 Utiliser exec ................................ 21 1 2.6 Commentaires............................... 21 2.7 Ex´ecution par lot............................. 21 2.8 Localisation................................ 23 2.9 ATOMS, le syst`eme de paquetage de Scilab.............. 26 2.10 Exercises.................................. 28 3 Basic elements of the language 30 3.1 Creating real variables.......................... 30 3.2 Variable names.............................. 31 3.3 Comments and continuation lines.................... 32 3.4 Elementary mathematical functions................... 32 3.5 Pre-defined mathematical variables................... 32 3.6 Booleans.................................. 33 3.7 Complex numbers............................. 34 3.8 Integers.................................. 35 3.8.1 Overview of integers....................... 35 3.8.2 Conversions between integers.................. 36 3.8.3 Circular integers and portability issues............. 37 3.9 Floating point integers.......................... 38 3.10 The ans variable............................. 39 3.11 Strings................................... 39 3.12 Dynamic type of variables........................ 40 3.13 Notes and references........................... 40 3.14 Exercises.................................. 40 4 Matrices 41 4.1 Overview................................. 41 4.2 Create a matrix of real values...................... 42 4.3 The empty matrix [] ........................... 43 4.4 Query matrices.............................. 44 4.5 Accessing the elements of a matrix................... 44 4.6 The colon ":" operator.......................... 46 4.7 The eye matrix.............................. 48 4.8 Matrices are dynamic........................... 49 4.9 The dollar "$" operator.......................... 50 4.10 Low-level operations........................... 51 4.11 Elementwise operations.......................... 52 4.12 Conjugate transpose and non-conjugate transpose........... 52 4.13 Multiplication of two vectors....................... 53 4.14 Comparing two real matrices....................... 54 4.15 Issues with floating point integers.................... 55 4.16 More on elementary functions...................... 57 4.17 Higher-level linear algebra features................... 58 4.18 Exercises.................................. 58 2 5 Looping and branching 60 5.1 The if statement............................. 60 5.2 The select statement.......................... 61 5.3 The for statement............................ 62 5.4 The while statement........................... 64 5.5 The break and continue statements.................. 65 6 Functions 66 6.1 Overview................................. 66 6.2 Defining a function............................ 67 6.3 Function libraries............................. 69 6.4 Managing output arguments....................... 71 6.5 Levels in the call stack.......................... 72 6.6 The return statement.......................... 73 6.7 Debugging functions with pause ..................... 74 7 Plotting 76 7.1 Overview................................. 76 7.2 2D plot.................................. 76 7.3 Contour plots............................... 78 7.4 Titles, axes and legends......................... 81 7.5 Export................................... 83 8 Notes and references 84 9 Acknowledgments 85 10 Answers to exercises 86 10.1 Answers for section 1.7.......................... 86 10.2 Answers for section 2.10......................... 86 10.3 Answers for section 3.14......................... 89 10.4 Answers for section 4.18......................... 92 R´ef´erences 93 Index 94 3 Copyright c 2013 - Jerome Briot Copyright c 2013 - Michael Baudin Copyright c 2010 - Artem Glebov Copyright c 2008-2011 - Consortium Scilab - Digiteo - Michael Baudin Ce fichier doit ^etre utilis´eselon les termes de la licence "Creative Commons Attribution - Partage dans les M^emes Conditions 3.0 non transpos´e": http://creativecommons.org/licenses/by-sa/3.0/deed.fr 4 1 Vue d'ensemble Dans cette section, nous pr´esentons un aper¸cude Scilab. Le premier chapitre pr´esente le projet open source associ´e`ala cr´eation de ce document. Ensuite, nous pr´esentons les aspects logiciels, licences et scientifiques de Scilab. Dans le troisi`eme chapitre, nous d´ecrivons les m´ethodes pour t´el´echarger et installer Scilab sur les syst`emes d'exploitation Windows, GNU/Linux et Mac. Dans les autres chapitres, nous d´ecrivons diff´erentes sources d'informations utiles pour obtenir de l'aide depuis Scilab ou de la part d'autres utilisateurs. Nous d´ecrivons les pages d'aide int´egr´ees et nous analysons les listes de diffusion et le wiki qui sont disponibles en ligne. Enfin, nous prenons un moment pour regarder les d´emonstrations qui sont fournies avec Scilab. 1.1 Introduction Ce document est un projet open source. Les sources LATEX sont disponibles sur la forge Scilab : http://forge.scilab.org/index.php/p/docintrotoscilab/ Les sources LATEX sont fournies selon les termes de la licence "Creative Commons Attribution - Partage dans les M^emes Conditions 3.0 non transpos´e": http://creativecommons.org/licenses/by-sa/3.0 Les scripts Scilab sont disponibles sur la forge, `al'int´erieur du projet, dans le sous- r´epertoire scripts. Les scripts sont disponibles sous la licence CeCILL : http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt 1.2 Vue d'ensemble de Scilab Scilab est un langage de programmation associ´e`aune riche collection d'algo- rithmes num´eriques couvrant de nombreux aspects des probl`emes de calcul scienti- fique. Du point de vue logiciel, Scilab est un langage interpr´et´e. Ceci acc´el`ere g´en´era- lement le processus de d´eveloppement, parce que l'utilisateur acc`ede directement `a un langage de haut niveau, avec un riche ensemble de fonctionnalit´esoffertes par la biblioth`eque. Le langage Scilab est destin´e`a^etre ´etendu afin que des types de don- n´ees < utilisateurs > puissent ^etre d´efinis par d'´eventuelles op´erations de surcharge. Les utilisateurs de Scilab peuvent d´evelopper leurs propres modules afin de r´esoudre leurs probl`emes particuliers. Le langage Scilab peut compiler et lier dynamiquement d'autres langages tels que Fortran et C : de cette fa¸con, des biblioth`eques externes peuvent ^etre utilis´eescomme si elles faisaient partie des fonctionnalit´esint´egr´ees de Scilab. Scilab s'interface ´egalement avec LabVIEW, une plate-forme et un l'envi- ronnement de d´eveloppement pour le langage de programmation visuel de National Instruments. Du point de vue de la licence, Scilab est un logiciel gratuit et open source, sous licence Cecill [2]. Le logiciel est distribu´eavec le code source, de telle sorte que 5 l'utilisateur dispose d'un acc`esaux aspects les plus internes de Scilab. La plupart du temps, l'utilisateur t´el´echarge et installe une version binaire de Scilab, car le consortium Scilab fournit les versions ex´ecutables pour Windows, Linux et Mac OS. L'aide en ligne est disponible dans de nombreuses langues. Du point de vue scientifique, Scilab est livr´eavec de nombreuses fonctionnalit´es. Au tout d´ebut de Scilab, les fonctionnalit´esse sont concentr´ees sur l'alg`ebre lin´eaire. Mais, rapidement, leur nombre s'est ´elargi pour couvrir de nombreux domaines de l'informatique scientifique. Voici une courte liste de ses capacit´es: { alg`ebre lin´eaire, matrices creuses ; { polyn^omes et fractions rationnelles ; { interpolation, approximation ; { optimisation lin´eaire, quadratique et non lin´eaire ; { solveur d'´equations diff´erentielles ordinaires et solveur d'´equations
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages95 Page
-
File Size-