Studiegids

nl en

Programmeermethoden NA

Vak
2024-2025

Toegangseisen

Wiskunde en Natuurkunde op het niveau van respectievelijk VWO Wiskunde B en VWO Natuurkunde

Beschrijving

Programmerenvaardigheden zijn essentieel binnen de wetenschap. Bijvoorbeeld om numerieke problemen op te lossen, fysische processen te simuleren, en experimentele data te analyseren. Gedurende de hele natuurkunde en sterrenkunde opleidingen zal Python gebruikt worden voor opdrachten en onderzoeksprojecten.

Programmeermethoden NA biedt de mogelijkheid om de eerste drempel over te komen in het vertrouwd raken met het schrijven van programmeercode voor verschillende vraagstukken. De meest effectieve manier om een programmeertaal te leren is door het zelf regelmatig toe te passen. De nadruk zal tijdens de hoor- en werkcolleges daarom op de praktijk liggen, waarbij concepten worden uitgelegd maar studenten voornamelijk zelf actief aan de slag gaan met de opdrachten.

De colleges en gerelateerde opdrachten zijn opgedeeld in vier thema's:

  1. Getallen, vectoren en matrices
  2. Afgeleiden en integralen
  3. Simulaties
  4. Data analyse

Tijdens de colleges zullen basis concepten en functionaliteiten van Python worden geïntroduceerd. Daarnaast zullen een aantal modules worden gebruikt (NumPy, Matplotlib, en SciPy) die een verscheidenheid aan numeriek gereedschap bieden dat vaak van pas komt met wetenschappelijke onderzoek.

Leerdoelen

Algemene leerdoelen:

Na het afronden van dit vak zijn studenten in staat om:

  • Te motiveren waarom programmeren belangrijk is voor onderzoek

  • Basis Python te begrijpen, lezen, schrijven en uitvoeren van code

  • Gebruik te maken van Jupyter Notebooks

  • Functies te definiëren en object-georiënteerd te programmeren

  • Resultaten te visualiseren door het maken van plots

  • Gestructureerde, becommentarieerde, en duidelijk leesbare code te schrijven

  • Geschreven code in eigen woorden uit te leggen

  • Feedback te geven aan medestudenten over elkaars code

  • Gebruik te maken van online bronnen over modules, functionaliteiten, en parameters

De thema's bestaan uit specifieke leerdoelen. Studenten kunnen:

  • Wiskundige berekeningen uitvoeren

  • Gebruik maken van lijsten en arrays

  • Vectoren en matrices manipuleren en er operaties op uitvoeren

  • Numeriek een integraal en afgeleide van een functie berekenen

  • Een generator voor willekeurige getallen gebruiken

  • Een simulatie van een natuurkundig systeem opzetten

  • Gebruik maken van simulaties om een fysisch vraagstuk op te lossen

  • Data inlezen uit en schrijven naar CSV bestand

  • 1D, 2D, en 3D datasets analyseren als arrays

  • Functies van NumPy, SciPy, en Matplotlib gebruiken

Rooster

Rooster

In MyTimetable (login) kun je alle vak- en opleidingsroosters vinden, waarmee jij je persoonlijke rooster kunt samenstellen. Onderwijsactiviteiten waarvoor je je via MyStudymap hebt ingeschreven, worden automatisch in je rooster getoond. Daarnaast kun je My Timetable gemakkelijk koppelen aan een agenda-app op je telefoon en worden roosterwijzigingen automatisch in je agenda doorgevoerd; bovendien ontvang je desgewenst per e-mail een notificatie van de wijziging. Je kunt notificaties aanzetten bij Instellingen, na login.

Vragen? Bekijk de video, lees de instructie of neem contact op met de ISSC helpdesk. Let op: Joint Degree studenten Leiden/Delft dienen de informatie uit de Leidse en Delftse MyTimetable's samen te voegen om een volledig rooster te zien. Deze video leg uit hoe dat werkt.

Onderwijsvorm

Elke week is er een hoorcollege van 2x45 min en een werkcollege van 2x45 min. Studenten dienen zelf een laptop mee te nemen naar de werkgroepen. Daarnaast is zelfstudie van ongeveer 5 uur per week een belangrijke component om vertrouwd te raken met het programmeren.

Toetsing en weging

Elk van de vier thema's bestaat uit een set opdrachten die voor 15% meewegen met het eindcijfer (60% in totaal). Opdrachten moeten individueel worden ingeleverd op Brightspace. Elke opdracht moet met minimaal een 5,5 worden afgerond.

Naast de vier modules is er een tentamen dat voor 40% meetelt. Het tentamen zal deels uit multiple-choice en deels uit programmeer opdrachten bestaan. De vragen van het tentamen worden uitgevoerd in een computerzaal met de ANS applicatie. Voor het tentamen moet minimaal een 5,5 worden gehaald.

Elke module en het tentamen kan worden herkanst indien er een onvoldoende is gehaald voor dat onderdeel. Als herkansing van een module moet dezelfde opdracht worden verbeterd en opnieuw worden ingeleverd, met in alle gevallen een maximum van 6,0 als cijfer. Voor de herkansing van het tentamen kan wel maximaal een 10,0 worden gehaald.

Literatuurlijst

Er dient gebruik gemaakt te worden van de uitgebreide informatie en voorbeelden die te vinden zijn op de websites van Python, NumPy, Matplotlib, SciPy.

Verder wordt dit open access boek aangeraden: Introduction to Scientific Programming with Python, Joakim Sundnes, ISBN 978-3-030-50356-7

Inschrijven

Als student ben je zelf verantwoordelijk om je tijdig, dat wil zeggen 14 dagen voor aanvang van het vak, in te schrijven. Dat kan via Mystudymap. Dit doe je twee keer per jaar: één keer voor de vakken die je wilt volgen in semester 1 en één keer voor de vakken die je wilt volgen in semester 2. Let op: na-inschrijven is niet mogelijk.

Inschrijven voor vakken in het eerste semester is mogelijk vanaf juli; inschrijven voor vakken in het tweede semester is mogelijk vanaf december. Eerstejaars bachelorstudenten worden voor semester 1 door de facultaire studentenadministratie ingeschreven; zij hoeven dit niet zelf te doen. Zie voor meer informatie deze pagina

Daarnaast is het voor alle studenten, inclusief eerstejaars bachelorstudenten, verplicht om zich in te schrijven voor tentamens. Dit kan tot en met uiterlijk 10 kalenderdagen voorafgaand aan het tentamen of tot vijf kalenderdagen in het geval van een hertentamen. Zonder geldige voorinschrijving in My Studymap kun je niet deelnemen aan het (her)tentamen.

Contact

Evert van Nieuwenburg

Tomas Stolker

Opmerkingen

Studenten worden verwacht een eigen laptop mee te nemen naar zowel het hoorcollege als werkcollege. Tijdens beide contactmomenten wordt actieve deelname verwacht in de vorm van oefeningen. Indien niet in het bezit van een laptop dan kan er een koppel worden gevormd om samen aan de opgaven te werken.

Verder is het is belangrijk om Python te installeren voorafgaand aan het eerste college. We raden aan om de gratis versie van Anaconda te installeren.