Lycée Fénelon BCPST 1 Informatique Cours Introduction A. L informatique en BCPST 3 A.1.Cequeditleprogramme.................................. 3 A.2.Conditionsmatérielles.................................. 3 A.3.Évaluation......................................... 3 B. SCILAB 4 B.1.PrésentationdeSCILAB................................. 4 a)qu est-cequematlab?............................ 4 b)qu est-cequescilab?............................. 4 c)c estquoicettebestiole?............................ 4 B.2.PremièreutilisationdeSCILAB............................. 5 a)installationdescilab............................. 5 b)miseenroute................................... 5 c)l éditeurdetexte................................ 5 d)aideenligne................................... 6 B.3.Exemples......................................... 7
2
A. L informatique en BCPST A.1. Cequeditleprogramme... Le cours d informatique en BCPST 1 représente un premier contact avec les Sciences Assistées par Ordinateur. Alors qu en classe préparatoire MPSI et PCSI, l accent est mis sur un cours théorique(logique, arbres, analyse descendante, complexité des algorithmes,...) et sur l utilisation de logiciels de calcul formel (MAPLE, MATHEMATICA,...), le programme d informatique en filière BCPST s inscrit dans une démarche plus pratique. L objectif est double. D une part, vous devez apprendre à analyser et résoudre algorithmiquement (1) desproblèmessimples. D autrepart,vousdevezsavoirconstruireunprogrammeinformatique correspondant à cet algorithme. La réalisation de ces objectifs passe ainsi par: la présentation d une algorithmique généraliste (dans le but de résoudre des problèmes directement inspirés par les enseignements de biologie et géologie, de physique et chimie ou de mathématiques); une introduction à la programmation élémentaire avec un logiciel scientifique spécialisé dans le calcul numérique(comme MATLAB ou SCILAB); la compréhension des principes de fonctionnement d un outil informatique(même si aucune connaissance sur la complexité des algorithmes ni sur l évaluation de la rapidité n est exigible). Le programme d informatique insiste par ailleurs sur l importance d une meilleure intégration de l outil informatique dans les disciplines scientifiques, en particulier pour les Travaux d Initiative Personnelle Encadrés (acquisition et exploitation de résultats expérimentaux, calcul formel et numérique, simulation, modélisation,...). A. 2. Conditions matérielles Les cours d informatique ont lieu toutes les deux semaines à raison de deux heures par séance (leshorairessontgérésparlecolloscope)etseprésententsousformedetravauxdirigésfaceàla machine. Le matériel nécessaire est réduit: une tête, des crayons, du papier ainsi qu un utilitaire de sauvegarde(clé USB). Je rappelle qu une machine ne commet jamais d erreur(sauf celles qu on lui demande de commettre) et qu il est donc totalement inutile de martyriser un ordinateur qui n affiche pas le résultat que vous escomptiez. A. 3. Évaluation En BCPST1, vous serez évalués tout au long de l année par des questions sournoisement glissées dans les devoirs surveillés de mathématiques. Au concours, l informatique est évaluée de deux manières. Vous pouvez trouver des questions d informatique dans les épreuves écrites(en particulier de mathématiques). Vous pouvez également choisir de présenter l informatique en option à l oral sur un thème développé au cours de l année de BCPST 2(c est rentable puisque la moyenne de l épreuve est de 13 au concours Agro Véto). 1 Unalgorithmeestunesuitefinieetnon-ambiguëd opérationspermettantdedonnerlaréponseàunproblème. Par exemple, une recette de cuisine est un algorithme. 3
B. SCILAB B. 1. Présentation de SCILAB a) Qu est-ce que MATLAB? MATLAB est un logiciel de calcul scientifique qui offre un environnement agréable pour faire du calcul numérique. Il est abondamment utilisé par les ingénieurs pour résoudre numériquement denombreuxproblèmesmathématiquesissusdelaphysique,delachimie,delabiologie,... La force de ce logiciel par rapport aux langages informatiques courants(fortran, C, PAS- CAL,...) provient des centaines d instructions précompilées, des multiples fonctions préprogrammées, des nombreuses commandes graphiques intégrées,... qui permettent de simplifier la phase de mise au point d un programme. Ainsi, pour simplifier, MATLAB est une grosse calculatrice avec de multiples fonctions! L inconvénient de MATLAB, c est son prix! b) Qu est-ce que SCILAB? SCILAB(contraction de Scientific Laboratory) est un pseudo-clone libre de MATLAB, c està-dire un graticiel(logiciel gratuit ou freeware) qui propose des fonctionnalités et un langage très proches de ceux de MATLAB. Ainsi, tout comme MATLAB, SCILAB contient des centaines de fonctions mathématiques avec la possibilité de rajouter interactivement des programmes écrits dans divers langages(for- TRAN, C, C++, JAVA). Il possède des structures de données sophistiquées(incluant les listes, les polynômes, les fractions rationnelles, les systèmes linéaires,...) et un langage de programmation de haut niveau. SCILAB a été conçu pour être un système ouvert dans lequel l utilisateur peut définir de nouveaux types de données et des opérations sur ces types de données. Enplusdetoutcela,SCILABpossèdeunautreavantage: c estunlogicielfrançais! Unepartie del aideenligneestdansnotrebellelangue... Développé depuis 1990 par l INRIA(Institut National de Recherche en Informatique et Automatique), SCILAB est, depuis 2003, pris en charge par le Consortium SCILAB composé, à ce jour, de22membres (2). Depuis2008, ceconsortiumaintégrélafondationdecoopérationscientifique Digiteo. SCILAB est actuellement utilisé dans le monde entier par des entreprises, des chercheurs et des enseignants. c) C est quoi cette bestiole? La mascotte de SCILAB est un macareux moine. Le macareux(en anglais puffin), qu il ne faut pas confondre avec les puffins(en anglais shearwater), appartiennent à l ordre des charadriiformes, plus précisément au sous-ordre des alciformes ou alcidae. Ce sous-ordre comprend les pingouins, les guillemots et les macareux(noël Mayaud, Zoologie IV, p. 537). Les macareux forment la famille des mormonidae. Le macareux moine(nom scientifique fratercula arctica) doit son nom français à son plumage noiretblancquiévoquelatenuedesmoines. Sonbecmulticoloreestunappendiceénorme(dont la hauteur égale celle de sa grosse tête ronde) qui s amincit latéralement et sert à l oiseau d arme, d outil et de moyen de communication avec ses congénères(fisher& Roux, 1971, p. 262). 2 ARCELOR MITTAL, ARTENUM, CEA, CNES, COSATEQ, CENTRALE PARIS, DGA, EADS, EDF, EN- GINSOFT FRANCE, HPC PROJECT, IFP, INRIA, KLIPPEL, OXALYA, POLYTECHNIQUE, PSA PEUGEOT CITROËN, RENAULT, RMS, RTaW, STYREL TECHNOLOGIES, SCIWORKS. 4
B. 2. Première utilisation de SCILAB a) Installation de SCILAB SCILABnecoûtepasuneuroetpeutêtretéléchargélibrementsurlewebàl adresse en cliquant sur l icône http://www.scilab.org Pour installer le logiciel, il suffit d exécuter le fichier scilab-5.2.2.exe en cliquant sur. b) Mise en route Pour lancer SCILAB, il suffit de double-cliquer sur l icône à l écran la fenêtre suivante: de SCILAB pour voir apparaître Laflèche-->estl invitedecommande,c est-à-direl endroit,marquéparlecurseur,oùvous allez pouvoir entrer vos instructions. c) L éditeur de texte Au tout début, SCILAB s utilise simplement comme une calculatrice scientifique. Mais, dès que l on programme, on est amené à écrire des scripts (suite d instructions SCILAB), puis des fonctions et il est nécessaire d utiliser l éditeur de texte intégré à SCILAB. Pour accéder à cet éditeur, il suffit de cliquer sur l icône (ou de taper editor(); derrière l invite de commande). Une nouvelle fenêtre s ouvre dans laquelle vous allez pouvoir taper vos lignes de programme. Les fichiers écrits sous cet éditeur (des scripts) devront être sauvés sur le disque dur de la bécane. Vous devez par conséquent vous créer un dossier personnel dans lequel vous rangerez vos scripts. 5
d) Aide en ligne Étant donné le nombre d instructions et de fonctions préexistantes dans SCILAB, il est hors de question de les retenir toutes. Il est donc indispensable de savoir utiliser l aide en ligne afin de retrouver les fonctions et la syntaxe d une commande connue ou, réciproquement, de connaître l instruction qui effectue une tache désirée. Onaccèdeàl aideenlignededeuxmanières. Lorsqu on recherche le nom d une commande, on clique sur l icône (ou l on tape help(); derrière l invite de commande). Une nouvelle fenêtre s ouvre contenant les différentes instructions rangées par chapitres. La recherche s effectue alors: Oubienparsimplenavigationcommepourlespagesweb: Exemple: Dans le chapitre Heure et date, choisissons la fonction date. Dans la partie droite de la fenêtre, toutes les informations nécessaires concernant l objet et la syntaxe de cette fonction apparaissent: Notonsqu aubasdelafenêtrededescriptiondelacommande,ontrouvedesliens (en vert) qui renvoient sur des fonctions similaires ou associées. Oubienparmotcléencliquantsurl icône : Exemple: Entronslemot heure danslechampderecherche. Plusieurspropositions apparaissent alors en dessous: Lorsqu onconnaîtlenomd unecommande,parexempleclf, etquel onrecherchesadescription, on tape directement, derrière l invite de commande, l instruction help clf; 6
B. 3. Exemples Pour apprécier l étendue des possibilités offertes par SCILAB, on peut accéder aux démonstrations que propose le logiciel. Pour cela,danslabarredemenudelafenêtrescilab,onchoisitle point d interrogation puis, dans le menu déroulant, les démonstrations SCILAB. Onouvreainsiunefenêtre Demos quipermetdechoisir les démonstrations que l on veut visualiser. N hésiter pas à fouiller dans les différents chapitres. 7