Introduction a Scilab.pdf

(456 KB) Pobierz
Introduction `
Scilab
a
Philippe Roux
11 juin 2009
Table des mati`res
e
1 Prise en main de
Scilab
2 Les nombres en
Scilab
3 Les variables
4 Les matrices
5 Les Bool´ens
e
6 Les chaˆ
ınes de caract`res
e
7 Les fonctions
8 Programmation
9 Sorties graphiques
3
5
6
8
13
15
17
21
23
Ce document est con¸u comme un recueil comment´ d’exemples “simples” de
c
e
commandes
Scilab
. Il permet de d´couvrir l’existence de certaines commandes
e
Scilab
et leur domaine d’utilisation, mais la lecture de ce document ne peut rem-
placer la lecture de l’aide en ligne pour une utilisation optimale des commandes
d´crites.
e
1
`
TABLE DES MATIERES
2
Scilab
est un logiciel de calcul num´rique, qui permet de manipuler la plupart
e
des objets math´matiques courants (nombres r´els, bool´ens, matrices, fonctions,
e
e
e
polynˆmes, graphes,. . .).
Scilab
est aussi un logiciel libre (depuis la version 5) dont
o
vous pouvez vous procurer la derni`re version sur le site de l’INRIA (Institut
National
e
de la Recherche en Informatique et en Automatique)
:
http://www.scilab.org/
Vous y trouverez les fichiers n´cessaires pour l’installer sur n’importe qu’elle plate-
e
forme (PC WINDOWS™/UNIX ou MACINTOSH™) . Techniquement,
Scilab
est
un interpr´teur de commandes, il se pr´sente donc comme une calculatrice ou un
e
e
shell : les commandes, tap´es ` l’invite des commande ou lanc´es ` partir d’un script,
e a
e a
sont traduites dans un autre langage (Fortran ou C), compil´es, puis ex´cut´es par
e
e e
le noyau du syst`me d’exploitation, le r´sultat (ou l’erreur) est r´cup´r´ par
Scilab
e
e
e
ee
et affich´ dans la console.
e
___________________________________________
scilab-4.1.2
Copyright (c) 1989-2008
Consortium Scilab (INRIA, ENPC)
___________________________________________
Startup execution:
loading initial environment
-->_
.
Fig.
1 – la console
Scilab
dans la suite les exemples de code
Scilab
ou de sortie
«
console
»
apparaissent
dans des cadres gris-bleu alors que les remarques sur les erreurs et les confusions les
plus fr´quentes apparaissent dans des cadres rouges :
e
erreur fr´quente . . .
e
1 PRISE EN MAIN DE
SCILAB
3
1
Prise en main de
Scilab
Lorsque vous d´marrez
Scilab
la fenˆtre principale s’ouvre comme sur la fi-
e
e
gure FIG.1. Un curseur apparaˆ juste apr`s l’invite des commandes (-->) c’est
ıt
e
` cet endroit que vous pourrez lancer les lignes de commandes qui seront ex´cut´es
a
e e
s´quentiellement, de la mˆme mani`re qu’avec une calculatrice ou que dans une
e
e
e
fenˆtre xterm sous linux. Pour pouvoir utiliser la console il faut comprendre les
e
quelques r`gles suivantes :
e
chaque commande
Scilab
doit se terminer par
– un retour ` la ligne (← ), ce qui nous limite ` une commande par ligne,
a
a
– une virgule (,), ce qui permet de mettre plusieurs commandes par ligne,
– ou un point virgule ( ;) qui permet aussi d’ex´cuter plusieurs commandes par
e
ligne en bloquant l’affichage du r´sultat pr´c´dant le point virgule. Le point
e
e e
virgule est tr`s utile pour masquer le r´sultat d’un calcul interm´diaire.
e
e
e
vous pouvez copier/coller des instructions avec la souris (mais pas modifier
une ligne de commande d´j` ex´cut´e)
ea e e
On peut rappeler les commandes pr´c´demment ex´cut´e en utilisant les touches
e e
e e
du curseur
et
↓.
dans une ligne tout ce qui suit un double slash (//) est ignor´ (ce qui permet
e
d’ins´rer du commentaire).
e
Scilab
poss`de une aide en ligne accessible depuis la barre de menus, dans
e
l’onglet
?.
Fig.
2 – L’aide en ligne de
Scilab
Vous pouvez aussi acc´der ` l’aide en ligne de
Scilab
directement depuis la console.
e
a
Pour cela il y a deux commandes diff´rentes suivant le type de recherche qu’on veut
e
faire dans l’aide en ligne :
help commande
si vous voulez connaˆ ce que fait une
commande
dont vous
ıtre
connaissez d´j` le nom,
ea
1 PRISE EN MAIN DE
SCILAB
4
apropos mot cl´
si vous cherchez des commandes ayant rapport avec un
e
th`me d´crit par un
mot cl´
e
e
e
Pour comprendre observez la diff´rence de r´sultat entre les deux commandes :
e
e
-->help sin
-->apropos sinus
la premi`re commande va trouver la page d’aide de la fonction sinus (sin en
Scilab
e
) alors que la deuxi`me va renvoyer la liste des commande ayant un rapport avec
e
la fonction sinus (en fait la liste des fonctions trigonom´triques comme sur la figure
e
FIG.2).
Une derni`re chose importante qu’il faut comprendre pour bien travailler avec
e
Scilab
c’est la notion der´
pertoire courant.
On a souvent besoin avec
Scilab
d’im-
e
porter des informations, ou au contraire d’en exporter, et ceci ` l’aide de fichiers.
a
Lorsque c’est le cas,
Scilab
va chercher ` effectuer ces op´rations avec les fichiers
a
e
pr´sents dans son r´pertoire courant. Au d´marrage de
Scilab
ce r´pertoire est le
e
e
e
e
r´pertoire depuis lequel
Scilab
a ´t´ lanc´. Par exemple, sous windows™, ¸a peut
e
ee
e
c
ˆtre
C:\Program Files\Scilab-x.x.x\bin\
si vous d´marrez
Scilab
depuis son
e
e
r´pertoire d’installation par d´faut. Il existe plusieurs fonctions d´di´es ` la mani-
e
e
e e a
pulation des r´pertoire courant :
e
Pour connaˆ le r´pertoire courant actuel :
getcwd()
ou
pwd()
ıtre
e
pour changer de r´pertoire courant :
cd()
ou
chdir()
e
pour cr´er un r´pertoire (dans le r´pertoire courant actuel) :
mkdir()
e
e
e
pour lister le contenu du r´pertoire courant
ls
e
Plus g´n´ralement, on peut aussi ex´cuter des commandes syst`mes avec la fonction
e e
e
e
unix()
(la sortie pouvant ˆtre redirig´ vers scilab ou pas).
e
e
-->getcwd()
ans =
C:\Program Files\Scilab-4.1.2\bin
1.
-->cd('C:/')
ans =
C:\
0.
-->ls
ans =
-->pwd()
ans =
-->chdir('scilab')
ans =
-->mkdir('scilab')
ans =
!temp
!
!
!
C:\scilab
!Program Files
!
-->cd('..')
!
!
ans =
!WINDOWS
!
!
!
C:\
!Documents and Settings !
On peut aussi acc´der ` certaines fonctionnalit´s, comme changer ou afficher le
e
a
e
r´pertoire courant, ` partir du menu
fichier.
e
a
2 LES NOMBRES EN
SCILAB
5
Fig.
3 – Le menu fichier
2
Les nombres en
Scilab
Les objets de base du langage
Scilab
sont les nombres r´els. Il sont repr´sent´s par
e
e
e
des nombres flottant double pr´cision (i.e. avec un exposant sign´ et une mantisse
e
e
d’environ 16 d´cimales),
Scilab
les affiche dans la console par d´faut sous forme
e
e
d´cimale avec 8 chiffres significatifs. Les op´rations usuelles sur les r´els sont cod´es
e
e
e
e
de mani`re naturelle, voici leur liste par ordre de priorit´ croissante :
e
e
addition
+
soustraction
multiplication
division
/
puissance
et on a en plus acc`s ` la plus part des fonctions sp´ciales :
e a
e
fonctions trigonom´triques
e
fonctions hyperboliques
fonctions d’arrondis
logarithme et exponentielle
autre
sin(), asin(), cos(), acos(), tan(),
atan(), cotg()
sinh(), asinh(), cosh(), acosh(), tanh(),
atanh(), coth()
,
round(), int(), floor(), ceil()
exp(), log(), log10(), log2()
sqrt()(racine), abs()
(valeur absolue),
pmodulo()
(modulo)
Voici quelques manipulations de base :
-->1+2
ans =
3.
-->2*3
ans =
-->1/3
ans =
0.3333333
-->1/4;sin(1)
ans =
1.4142136
ans =
1.4142136
6.
0.8414710
Notez qu’un nombre en
Scilab
contient toujours le caract`re “.”, y compris les
e
nombres entiers (mˆme si le point est facultatif lors de la saisie).
e
-->2^(1/2),sqrt(2)
ans =
Zgłoś jeśli naruszono regulamin