Programmeren en Wetenschappelijk Rekenen in Python Wi1205AE, 13 mei 2014
Bijeenkomst 7 Onderwerpen Tips met betrekking tot boolse variabelen en loops Numpy Lijsten, tuples, arrays, matrices Wat is het verschil? Wanneer gebruik je wat? 13 mei 2014 1
Boolse variabelen Opmerking Initialisatie: running =True Gebruik daarna: if running en niet if running == True 13 mei 2014 2
Initialisatie: swescape =False Gebruik : while not swescape en niet while swescape == False 13 mei 2014 3
Loops Gebruik while-loops wanneer: van tevoren onbekend is hoe vaak een loop doorlopen moet worden, een stopcriterium bekend is die niet van een iterand afhangt, bijv.: zolang y 0. Pas op: zorg dat er geen oneindige loop ontstaat en gebruik eventueel een noodstop, bijv: or t > 500 (tijdsduur wordt te groot). 13 mei 2014 4
Loops Gebruik for-loops wanneer: van tevoren bekend is hoe vaak een loop doorlopen moet worden, het iteratieproces van de iterand, bijv: i, afhangt. 13 mei 2014 5
Numpy (en Scipy) Numpy en Scipy zijn modules die uitermate geschikt zijn om wetenschappelijk te rekenen. types: arrays en matrices, geschikt voor berekeningen uit de Lineaire Algebra, functiewaarden kunnen voor een heel array tegelijk worden uitgerekend, databestanden kunnen eenvoudig worden ingelezen. 13 mei 2014 6
Voorbeelden vb-1.xhtml: range versus arange, linspace versus arange vb-2.xhtml: arrays en matrices vb-3.xhtml: arrays en matrices, het product vb-4.xhtml: arrays en matrices, transponeren, inverteren, de determinant, het oplossen van matrixvergelijkingen vb-5.xhtml: arrays en matrices, de nulmatrix, de identieke matrix, (tri-)diagonaalmatrices vb-6.xhtml: arrays en matrices, het in-en uitwendig product van vectoren vb-7.xhtml: arrays en matrices, het berekenen van functiewaarden 13 mei 2014 7
Documentatie Numpy en Scipy Voor numpy zie: http://docs.scipy.org/doc/numpy/reference/ en voor Scipy zie: http://docs.scipy.org/doc/scipy/reference/ 13 mei 2014 8
Voorbeelden vb-8.xhtml: arrays, elementen zoeken vb-9.xhtml: arrays, samenvoegen arrays vb-10.xhtml: arrays, inlezen arrays 13 mei 2014 9
Tips bij de bonusopdracht Download het bestand pygmaps-0.1.1.zip van Blackboard, kopieer het bestand pygmaps.py naar de folder Lib\ site-packages, importeer de modules numpy, pygmaps, en de module webbrowser (standaard aanwezig), 13 mei 2014 10
lees het bijgeleverde tekstbestand read.txt, maak een mapobject mymap aan met de opdracht: mymap = pygmaps.maps(...) en voeg vervolgens vliegtuigroutes toe met de methode (functie): addpath bij het mapobject mymap. De opdracht wordt dus: mymap.addpath(...) 13 mei 2014 11
Gebruik tenslotte de methode (functie bij het mapobject mymap): draw om een html-bestand te maken en open dit met de functie webbrowser. 13 mei 2014 12
Jacco Hoekstra: Programming and Scientific Computing in Python (Version 3.10), Artikelnummer: 0691770043. David C. Lay: Linear Algebra and Its Applications (fourth edition), Pearson (2013), ISBN-13: 978-1-292-02055-6. James Stewart: Calculus, Early Transcedentals (seventh edition), Cengage Learning (2012), ISBN-13: 978-0-538-49887-6. C.Vuik, P. van Beek, F. Vermolen en J.van Kan: Numerical Methods for Ordinary Differential Equations, VSSD (2007), ISBN-13: ISBN 978-90-6562-156-6. 13 mei 2014 12