Undervisningsmateriale og pensumliste IN1900
Undervisningsmateriale IN1900 H20
L?ringsm?let for IN1900 er god forst?else av ukeoppgavene og oppgavene fra plenums?velser (se undervisningsplanen). Eksamen vil teste denne forst?elsen.
Alle oppgavene er knyttet til tema fra l?reboken Introduction to Scientific Programming with Python av Joakim Sundnes, og til kompendiet Solving ODEs in Python. B?de l?reboka og kompendiet er i hovedsak oppdaterte kortversjoner av utvalgte kapitler i A Primer on Scientific Programming with Python av Hans Petter Langtangen. Denne boka har v?rt brukt som l?rebok i IN1900 og tidligere INF1100 i mange ?r, og g?r mer i dybden og har flere eksempler enn den nye l?reboka. Denne boka er en veldig nyttig ressurs ? bruke i tillegg til ?rets l?rebok. Den er skrevet for Python 2, s? noen detaljer i koden er annerledes enn i den nye boka som bruker Python 3, men forskjellene er veldig sm?. Begge b?kene er tilgjengelige gratis som e-bok. Den nye l?reboka er ?pent tilgjengelig for alle, mens Langtangen sin bok er tilgjengelig via UiO-biblioteket og kan lastes ned hvis man er logget p? et UiO-nettverk.
Oppgavene som g?s gjennom i kurset er hentet fra flere kilder: * De fleste av oppgavene som g?s gjennom p? forelesningene er fra Langtangen sin bok, og alle oppgavene fra denne boka er tilgjengelige som egen PDF fil.
- Alle de obligatoriske ukeoppgavene er hentet fra et eget oppgavehefte.
- Undervisningsplanen inneholder ogs? noen anbefalte oppgaver for hver uke, som er hentet enten fra Langtangen sin bok, fra oppgaveheftet, eller hefter egne hefter med fysikk- og kjemi-relaterte oppgaver. Alle oppgavesamlingene er tilgjengelig her.
Eksamen
Eksamen best?r av to deler, en midttermineksamen i uke 41 og en avsluttende eksamen i desember. Maksimal score er til sammen 100 poeng, 25 poeng p? midttermineksamen og 75 poeng p? avsluttende eksamen. Poenggrensene for de forskjellige karakterene varier noe fra ?r til ?r ut fra hvordan eksamen sl?r ut, men gjennomsnittstall fra de fem siste ?rene er A: 93, B: 81, C: 62, D: 50, E: 40.
Et tilstrekkelig antall obligatoriske oppgaver m? v?re best?tt
For ? ta eksamen m? man ha nok godkjente obligatoriske ukeinnleveringer. Vi har et poengsystem hvor de fleste oppgaver teller ett poeng, mens noen st?rre oppgaver teller to eller flere. I 2020 kommer det til ? v?re 80 poeng tilgjengelig totalt, og man m? oppn? 50 poeng for ? kunne ta eksamen i kurset.
Pensumliste IN1900 H20
Pensumliste til midttermineksamen i IN1900 7. okt 2020
Relevante kapitler fra l?reboka er kapittel 1-6 (kapittel 1-5 i Langtangen sin bok). Se ogs? undervisningsplanen, inkludert den mer detaljerte siden om hver uke, for informasjon om l?ringsm?l og viktige tema hver uke. Alle oppgaver som har v?rt obligatorisk ukeoppgaver eller har v?rt gjennomg?tt i plenum er relevante for eksamen. F?lgende oppgaver er spesielt relevante til midttermineksamen 2020:
Fra "A Primer on Scientific Programming with Python" av H.P. Langtangen:
-
1.4 (
length_conversion.py
, side 43) -
2.7 (
coor.py
, side 83) -
2.15 (
index_nested_list.py
, side 85) -
3.23 (
egg_func.py
, side 137) -
4.4 (
f2c_file_read_write.py
, side 217) -
4.5 (
f2c_cml_exc.py
, side 217) -
4.13 (
ball_cml_ValueError.py
, side 219) -
5.7 (
slicing.py
, side 314) -
5.11 (
plot_ball3.py
, side 314) -
5.13 (
plot_trajectory.py
, side 314)
Fra oppgaveheftet:
-
3.4 (
sum_for.py
, side 6) -
3.8 (
population_table2.py
, side 7) -
4.1 (
pop_func.py
, side 10) -
4.4 (
triangle_area.py
, side 11) -
4.5 (
half_wave.py
, side 11) -
5.1 (
quadratic_roots_input.py
, side 14) -
5.3 (
quadratic_roots_error.py
, side 14) -
5.10 (
temp_read_write.py
, side 17) -
6.1 (
fill_log_arrays_loop.py
, side 19) -
6.2 (
fill_log_arrays_vec.py
, side 19)
P? eksamen vil det bli gitt oppgaver som tematisk ligger tett opp til oppgavene som er gitt som ukeinnleveringer og plenums?velser, men p? midttermin-eksamen h?sten 2020 gis bare flervalgsoppgaver. De fleste av oppgavene vil v?re av typen hva skrives ut, som handler om ? lese og forst? sm? Python-programmer, og avgj?re hva som skrives ut. I tillegg vil det v?re oppgaver hvor man skal finne feil i programmer, og oppgaver hvor man m? velge mellom flere mulige l?sninger i et program. Tidligere midttermin-eksamener er relevante, selv om disse ogs? inneholder oppgaver hvor man skal skrive sm? programmer selv. Disse er ogs? relevante, men ?rets oppgaver vil ha mest felles med hva skrives ut-oppgavene og flervalgsoppgavene fra 2017, 2018 og 2019.
Eksamen er digital og skjer i programsystemet Inspera.
Pensumliste til avsluttende eksamen i IN1900 2020
Relevante kapitler fra boken er kapittel 1-9, og i tillegg kapittel 1-4 i kompendiet "Solving ODEs in Pythhon". Se ogs? undervisningsplanen, inkludert den mer detaljerte siden om hver uke, for informasjon om l?ringsm?l og viktige tema hver uke. Alle oppgaver som har v?rt obligatorisk ukeoppgaver eller har v?rt gjennomg?tt i plenum er relevante for eksamen. F?lgende oppgaver er spesielt relevante til avsluttende eksamen 2020:
Alle oppgaver fra det avsluttende prosjektet
Fra "A Primer on Scientific Programming with Python" av H.P. Langtangen:
-
1.4 (
length_conversion.py
, side 43) -
2.7 (
coor.py
, side 83) -
2.15 (
index_nested_list.py
, side 85) -
3.23 (
egg_func.py
, side 137) -
4.4 (
f2c_file_read_write.py
, side 217) -
4.5 (
f2c_cml_exc.py
, side 217) -
4.13 (
ball_cml_ValueError.py
, side 219) -
5.7 (
slicing.py
, side 314) -
5.11 (
plot_ball3.py
, side 314) -
5.13 (
plot_trajectory.py
, side 314) -
5.16 (
read_density_data.py
, side 316) -
5.18 (
fit_density_data.py
, side 317) -
6.7 (
humans.py
, side 404) -
6.11 (
poly_diff.py
, side 405) -
7.1 (
F.py
, side 470) -
7.2 (
Account2.py
, side 471) -
7.25 (
Polynomial_sub.py
, side 480) -
9.4 (
Polynomial_hier.py
, side 636) -
A.14 (
sin_Taylor_series_diffeq.py
, side 676) -
E.1 (
simple_ODE_func.py
, side 802) -
E.2 (
simple_ODE_class.py
, side 802) -
E.21 (
RK4_func.py
, side 811) -
E.22 (
RK4_class.py
, side 811)
Fra oppgaveheftet:
-
3.4 (
sum_for.py
, side 6) -
3.8 (
population_table2.py
, side 7) -
4.1 (
pop_func.py
, side 10) -
4.4 (
triangle_area.py
, side 11) -
4.5 (
half_wave.py
, side 11) -
5.1 (
quadratic_roots_input.py
, side 14) -
5.3 (
quadratic_roots_error.py
, side 14) -
5.10 (
temp_read_write.py
, side 17) -
6.1 (
fill_log_arrays_loop.py
, side 19) -
6.2 (
fill_log_arrays_vec.py
, side 19) -
7.6 (
people_dict.py
, side 28) -
8.4 (
AccountP.py
, side 32) -
8.7 (
class_diff.py
, side 34) -
A.6 (
lotka_volterra.py
, side 43), -
E.1 (
simple_ODE_func.py
, side 44) -
E.2 (
simple_ODE_class.py
, side 44) -
E.3 (
simple_ODE_class_ODESolver.py
, side 44) -
E.5 (
Midpoint.py
, side 45) -
E.6 (
heuns_method_func.py
, side 45)
P? eksamen vil man f? oppgaver som ligger tett opptil disse oppgavene. Alle oppgavene har v?rt gitt som ukeinnleveringer eller gjennomg?tt i plenum p? forelesninger. De fleste tidligere eksamensoppgaver er ogs? veldig relevante, men pensum forandrer seg litt fra ?r til ?r s? enkelte tidligere oppgaver er ikke relevante.
Eksamen vil best? av tre oppgavetyper:
-
Flervalgsoppgaver
-
Oppgaver av typen "Hva skrives ut", hvor svaret skrives som tekst
-
Oppgaver hvor det skal skrives sm? programmer
?rets eksamen er en hjemmeeksamen med alle hjelpemidler tilgjengelig, og fordelingen mellom de ulike oppgavetypene vil derfor endres noe. Det blir f?rre av de enkleste flervalgsoppgavene og noe flere programmeringsoppgaver. Tidliere eksamenssett er likevel veldig relevante for ? ?ve til eksamen, siden oppgavetypene i hovedsak blir de samme. Mer informasjon om hjemmeeksamen finnes ogs? [her]((http://www.uio.no/studier/emner/matnat/ifi/IN1900/h20/digital-hjemmeeksamen-i-in1900.html).