Fra forelesningene forventes det god forståelse av følgende:
- Grunnleggende Bash-programmering (forelesning 26/8, 2/9 + oblig 1)
- Python-syntaks og grunnleggende moduler fra Python-biblioteket (2/9, 9/9, 16/9, 21/10+ oblig 1-3)
- math, os, shutil, argparse, pytest/nose, doctest, re, profile/cProfile, time, timeit
- Det forventes selvfølgelig ikke at dere skal kunne alle detaljer om disse modulene, bare de delene som er brukt i forelesninger og obliger
- Regulære uttrykk (16/9, 23/9 + oblig 2, oversikt over syntaks blir lagt ved eksamen)
- Grunnleggende numpy-operasjoner, generering og kopiering av arrayer, slicing, matematiske operasjoner på arrayer, grunnleggende vektorisering (14/10)
I tillegg forventes grunnleggende kjennskap (ikke detaljer) til følgende verktøy:
- Python C-API
- Web programmering med Python
Angående oblig 2 og 3 gjelder følgende presiseringer:
- Fra oblig 2 er Latex ikke pensum, men regulære uttrykk, tekstpresisering og generell filbehandling i Python er svært relevant
- Fra oblig 3 er programmeringsspråket C ikke pensum, men det forventes grunnleggende kjennskap til hvordan Python kan kombineres med kompilerte språk, og hvordan weave kan brukes til å effektivisere Python-løkker
Følgende eksamensoppgaver fra tidligere år kan være relevante for årets eksamen:
2010: 1, 2, 3, 5
2011: 1, 2, 3, 5
2012: 1, 2, 3, 5, 6
2013: 1, 2, 3, 4, 7
For oppgavene med vedlagt dokumentasjon er detaljene i løsningen og dokumentasjonen ikke relevant, men oppgaveformen kommer sannsynligvis igjen i år.
Følgende ukeoppgaver fra 2013 kan være relevante:
Alle oppgaver i uke 1-5
Oppgave 6.1-6.2, delvis 6.3-6.4 (Monte Carlo simulering er ikke viktig, men disse er ment som generelle Python oppgaver)
Oppgave 7.2-7.3, delvis 7.5-7.6 (grunnleggende forståelse av vektorisering er viktig, men det er litt mindre fokus på dette enn i fjor)
Oppgave 8.1-8.5 også delvis relevant (grunnleggende numpy og vektorisering er viktig, avansert bruke mindre viktig)
Oppgave 9.2-9.3 (dette er generelle Python-oppgaver, men sannsynligvis for omfattende til å løses i detalj som eksamensforberedelse)
10.1, 10.4 (samme som over, en generell og relevant scripteoppgave, men relativt omfattende)