Banner image by Sebastian Niedlich on Flickr, CC BY-NC-SA 2.0
Python voor Natuur- en Sterrenkundigen, Najaar 2015
Docent: dr. K. F. D. Rietveld
Practicumassistenten: dr. Tim Cocx, Mathe Zeegers, Tim van der Meij, Tobias Kappe, Leon Helwerda.
Beschrijving
De laatste maand van het college Programmeermethoden staat voor studenten Natuurkunde en Sterrenkunde in het teken van de programmeertaal Python. In het college Python voor Natuur- en Sterrenkundigen wordt een beknopte introductie tot Python gegeven aan de hand van hetgeen dat is behandeld in het college Programmeermethoden. De onderdelen van C++ die in Programmeermethoden zijn behandeld worden dus als bekend verondersteld. Naast het introduceren van de taal zelf zullen we ook oefenen in de context waarin Python in de Natuurkunde en Sterrenkunde wordt gebruikt: het doen van numeriek rekenwerk, dataverwerking en analyse, en het maken van mooie plots van hoge kwaliteit.
Examinering
Dit college vervangt het laatste deel van het college Programmeermethoden voor studenten Natuurkunde en Sterrenkunde. Voor dit college wordt een cijfer gegeven dat zal meetellen als het cijfer voor de vierde opdracht van het college Programmeermethoden. Dit cijfer is opgebouwd uit een eindopdracht (70%) en punten voor aanwezigheid (30%). Voor aanwezigheid zijn dus 3 van de 10 punten te scoren. Bij de eerste drie werkcolleges zal er worden gecontroleerd op aanwezigheid. Aanwezig zijn levert 0.5 punt op. In elk van deze drie werkcolleges zal er 1 opdracht verplicht zijn. Door deze opdracht goed uit te voeren en het resultaat te laten zien aan een assistent is ook een 0.5 punt te scoren. (Dus drie keer aanwezig zijn en drie keer de opdracht afmaken levert 6 * 0.5 = 3 punten op). Tijdens het laatste werkcollege is er geen aanwezigheidscontrole en zullen we voornamelijk werken aan de eindopdracht.
Eindopdracht
Net als de voorgaande opdrachten bij het college Programmeermethoden bestaat de eindopdracht uit het schrijven van een programma en een verslag. De deadline is vrijdag 11 december, 17:00 uur. Download hier de eindopdracht (PDF) en de databestanden behorende bij de opdracht (in Firefox rechts op de link klikken en dan kiezen "Save Link As", zodat je zeker weet dat de formattering van het bestand in stand blijft):
Dictaat
Het bij het college behorende dictaat omvat al hetgeen dat is besproken tijdens de hoorcolleges. Het dictaat is hier te downloaden (update 2 december 2015, tweede deel beschikbaar).
Tijdschema
Hoorcollege: woensdagen van 11:15 tot 13:00 in De Sitterzaal, Oortgebouw.
Werkcollege: donderdagen van 11:15 tot 13:00 in zalen 303-308, Snelliusgebouw.
- Week 1 - Kennismaken met Python
Hoorcollege, woensdag 18 november: Sheets.
Werkcollege, donderdag 19 november: Opgaven werkcollege 1.
- Week 2 - Datastructuren, functies en files
Hoorcollege, woensdag 25 november: Sheets.
Werkcollege, donderdag 26 november: Opgaven werkcollege 2, bestand getallen.txt behorende bij het werkcollege.
- Week 3 - Modules maken en gebruiken, NumPy en matplotlib
Hoorcollege, woensdag 2 december: Sheets.
Werkcollege, donderdag 3 december: Opgaven werkcollege 3.
- Week 4 - Vervolg NumPy en matplotlib, en hoe meer leren over Python?
Hoorcollege, woensdag 9 december: Sheets.
Werkcollege, donderdag 10 december: Opgaven werkcollege 4.
Links en referenties
Websites
- Officiële website van Python
- Python Tutorial van python.org
- Python Library Reference, hier staan alle modules van de Python standaard bibliotheek beschreven.
- Visualize Python, deze website kan het uitvoeren van (simpele) Python programma's grafisch weergeven. Erg handig als je moeite hebt van het begrijpen van Python datastructuren!
- Scipy Lecture Notes tutorial en oefeningen voor NumPy, Scipy en matplotlib.
Extra's
Boeken
- Dr. Eric Ayars, Computational Physics With Python (PDF, 7.55MB, 194 pagina's).
- Computational Physics With Python, een aantal hoofdstukken van dit boek zijn gratis te downloaden.
- Doing Math With Python
- Effective Computation in Physics
Vakken waarbij Python wordt gebruikt
Bij verschillende vakken in de studies Natuurkunde en Sterrenkunde wordt gebruik gemaakt van Python. Hier worden de basisprincipes van Python als bekend verondersteld en zal je Python gaan gebruiken als gereedschap bij het doen van onderzoek.