̽»¨¾«Ñ¡

Detaljert undervisningsplan

Løsning på gjennomgått i plenum legges ut på etter timen (send mail til Joakim Sundnes eller Ole Christian Lingjærde hvis dette ikke er gjort).

Anbefalte forberedelser til hver uke:


Undervisningsuke 1 (kalenderuke 34; 22/8-28/8)

Oppgaver i plenum: 1.1 (1plus1.py, side 42), 1.2 (hello_world.py, side 43), 1.3 (seconds2years.py, side 43) fra

Forelesninger: kap. 1 og 2 i (intro, formulas)

Foreleser: Joakim Sundnes

Anbefalte oppgaver: 1.1 (hello.py, side 2), 1.2 (versions.py side2) fra , 1.1 (massdensity.py, side 5), 1.2 (solarmass.py, side 5) fra , 1.1 (glucose.py, side 1) fra

Mer informasjon om


Undervisningsuke 2 (kalenderuke 35; 29/8-4/9)

Oppgaver i plenum: 1.4 (length_conversion.py, side 43), 1.12 (egg.py, side 46), fra

Forelesninger: kap. 3 i (loops, lists)

Foreleser: Ole Christian Lingjærde

Anbefalte oppgaver: 2.5 (hydrogen.py, side 4), 2.6 (formulas_shapes.py, side 5), 3.1 (multiplication.py, side 6) fra , 2.1 (f2c_table_while.py, side 82), 2.2 (f2c_approx_table.py, side 82), 2.4 (odd.py, side 82) fra , 2.2 (relativistic_momentum.py, side 8) fra , 1.3 (ideal_gas.py, side 1), 2.1 (energy_levels.py, side 3) fra

Obligatoriske innleveringsoppgaver: 2.2 (interest_rate.py, side 3), 2.3 (population.py, side 3), 2.4 (find_roots.py, side 4) fra

Mer informasjon om


Undervisningsuke 3 (kalenderuke 36; 5/9-11/9)

Oppgaver i plenum: 2.1 (f2c_table_while.py, side 82), 2.3 (primes.py, side 82), 2.4 (odd.py, side 82), 2.7 (coor.py, side 83), 2.8 (ball_table1.py, side 83), 2.14 (inverse_sine.py, side 85), 2.15 (index_nested_list.py, side 85), 3.20 (hw_func.py, side 136), 3.23 (egg_func.py, side 137), 3.28 (maxmin_list.py, side 139) fra

Forelesninger: kap. 4 i (functions, if-tests)

Foreleser: Ole Christian Lingjærde

Anbefalte oppgaver: 3.12 (interest_rate_loop.py, side 8), 4.2 (sumint.py, side 10), 4.3 (factorial.py, side 10) fra , 2.6 (energy_levels.py, side 83), 3.4 (f2c.py, side 128) fra , 3.1 (nernst_function.py, side 5), 3.3 (pH_titration.py, side 5) fra

Obligatoriske innleveringsoppgaver (frist 9/9 kl 17.00): 3.4 (sum_for.py, side 6), 3.5 (sum_while.py, side 7), 3.7 (population_table.py, side 7), 3.8, (population_table2.py, side 7), 3.11 (alkane.py, side 8), fra

Mer informasjon om

Undervisningsuke 4 (kalenderuke 37; 12/9-18/9)

Oppgaver i plenum: 2.19 (repeated_sqrt.py, side 87), 2.20 (machine_zero.py, side 87), 2.21 (compare_floats.py, side 87), 3.7 (sum_func.py, side 129), 4.1 (f2c_qa.py, side 216), 4.2 (f2c_cml.py, side 216), 4.3 (f2c_file_read.py, side 216), 4.4 (f2c_file_read_write.py, side 217), 4.5 (f2c_cml_exc.py, side 217) fra

Forelesninger: kap. 5 i (user input, error handling)

Foreleser: Joakim Sundnes

Anbefalte oppgaver: 3.11 (trapezint.py, side 130), 3.21 (sinesum1.py, side 136), 3.36 (L3_recursive.py, side 142), 3.37 (cos_sum.py, side 142), 4.1 (f2c_qa.py, side 216), 4.2 (f2c_cml.py, side 216) fra , 4.2 (particle_accelerator.py, side 16), 4.5 (newton_gravitation_file.py, side 19) fra , 4.1 (nernst_equation2.py, side 7) fra

Mer informasjon om

Obligatoriske innleveringsoppgaver (frist 16/9 kl 17.00): 4.1 (pop_func.py, side 10), 4.4 (triangle_area.py, side 11), 4.5 (half_wave.py, side 11), 4.8 (statistics.py, side 12, 2 poeng) fra

Undervisningsuke 5 (kalenderuke 38; 19/9-25/9)

Oppgaver i plenum: 4.6 (objects_qa.py, side 217), 5.7 (slicing.py, side 314), 5.9 (plot_ball1.py, side 314), 5.10 (plot_ball2.py, side 314), 5.11 (plot_ball3.py, side 314), 5.13 (plot_trajectory.py, side 314) fra

Forelesninger: kap. 6 i (arrays, plotting)

Foreleser: Joakim Sundnes

Anbefalte oppgaver: 5.11 (unnamed_exception.py, side 18) fra 4.21 (sinesum2.py, side 222), 4.22 (sinesum3.py, side 222), 5.12 (f2c_shortcut_plot.py side 314), 5.28 (plot_wavepacket.py side 322) fra , 5.2 (momentum_plot.py, side 20), 5.3 (capacitor_vectorization.py, side 21) fra

Mer informasjon om

Obligatoriske innleveringsoppgaver (frist 23/9 kl 17.00): 5.1 (quadratic_roots_input.py, side 14), 5.2 (quadratic_roots_cml.py, side 14), 5.3 (quadratic_roots_error.py, side 14), 5.4 (quadratic_roots_error2.py, side 14), 5.7 (read_file_isotopes.py, side 15) fra . I oppgave 5.7 skal man lese fra en fil, som kan lastes ned herfra:

Undervisningsuke 6 (kalenderuke 39; 26/9-2/10)

Oppgaver i plenum: A.1 (sequence_limits.py, side 671), A.4 (loan.py, side 672), 5.29 (judge_plot.py, side 322), 5.39 (animate_Taylor_series.py, side 326) fra

Om plotting: Hintet i oppgave 5.39 refererer til scitools, som er en utdatert pakke som vi ikke bruker lenger. Vi bruker matplotlib og følger oppskriftene i , se kap 6.

Forelesninger: kap 1 i (difference equations)

Foreleser: Ole Christian Lingjærde

Anbefalte oppgaver: 6.6 (roots.py, side 21) fra , 5.32 (plot_Taylor_sin.py, side 323), 5.40 (plot_velocity_pipeflow.py, side 327), 5.45 (energy_physics.py, side 328), A.6 (fortune_and_inflation2.py, side 672), A.12 (diffeq_midpoint.py, side 675) fra

Mer informasjon om

Obligatoriske innleveringsoppgaver (frist 30/9 kl 17.00): 5.10 (temp_read_write.py, side 17, 2 poeng), 6.1 (fill_log_arrays_loop.py, side 19), 6.2 (fill_log_arrays_vectorized.py, side 19), 6.4 (oscillating_spring.py, side 19, 2 poeng) fra I oppgave 5.10 skal man lese fra to filer, som kan lastes ned herfra: ,

Undervisningsuke 7 (kalenderuke 40; 3/10-9/10)

Oppgaver i plenum: A.14 (sin_Taylor_series_diffeq.py, side 676), 5.14 (read_2columns.py, side 315) fra

Forelesninger: kap 7 i (dictionaries, strings)

Forelesere: Ole Christian Lingjærde

Anbefalte oppgaver: 6.15 (graph2.py, side 23), 6.16 (prime_ineff.py, side 24) fra , A.13 (arclength.py, side 675), 6.5 (stars_data_dict1.py, side 403), 6.6 (stars_data_dict2.py, side 403) fra

Mer informasjon om

Obligatoriske innleveringsoppgaver (frist 7/10 kl 17.00): 6.13 (approx_abs.py, side 23, 2 poeng), 6.14 (graph1.py, side 23, 2 poeng) A.2 (fibonacci.py, side 41), A.4 (finding_pi.py, side 42) fra

Undervisningsuke 8 (kalenderuke 41; 10/10-16/10)

Midttermineksamen.

Undervisningsuke 9 (kalenderuke 42; 17/10-23/10)

Oppgaver i plenum: 5.16 (read_density_data.py, side 316), 5.18 (fit_density_data.py, side 317), 6.7 (humans.py, side 404), 6.9 (area_triangle_dict.py, side 405), 7.1 (F.py, side 470), 6.11 (poly_diff.py, side 405), 7.2 (Account2.py, side 471) fra

Forelesninger: kap 8 i (klasser)

Forelesere: Joakim Sundnes

Anbefalte oppgaver: 7.3 (poly_dict.py, side 27) fra , 5.19 (fit_pendulum_data.py, side 318), 6.14 (temperature_data.py, side 407) fra

Obligatoriske innleveringsoppgaver (frist 21/10 kl 17.00): A.6 (lotka_volterra.py, side 43, 2 poeng), 7.2 (chemical_elements_dict.py, side 26), 7.4 (atm_moon.py, side 27), 7.5 (plot_round_off_error.py, side 27), 7.6 (people_dict.py, side 28) fra

Tekstfilen som trengs til atm_moon.py kan lastes ned her. Programmet approx_derivative_sine.py som skal brukes i Oppgave 7.5 finnes her. I tilfelle noen har problemer med å kjøre programmet finnes det også en ferdig output-fil som kan lastes ned.

Mer informasjon om


Undervisningsuke 10 (kalenderuke 43; 24/10-30/10)

Oppgaver i plenum: 7.3 (Account3.py, side 471), 7.10 (Hello.py, side 474), 7.11 (F2.py, side 474), 7.12 (Sum.py, side 474), 7.25 (Polynomial_sub.py, side 480), 9.1 (dir_subclass.py, side 635), 9.3 (sin_plus_quadratic.py, side 636) fra

Forelesninger: kap 8 og 9 i (klasser, OOP)

Ekstra forberedelser: Kort Gjør denne før undervisningen i uke 10, for å være sikker på at du har forstått det grunnleggende om klasser før vi bygger videre på det.

Forelesere: Joakim Sundnes

Anbefalte oppgaver: 8.7 (class_diff.py, side 34) fra ,

Obligatoriske innleveringsoppgaver (frist 28/10 kl 17.00): 8.1 (class_people.py, side 31), 8.2 (right_triangle.py, side 31, 2 poeng), 8.3 (F.py, side 32, 2 poeng), 8.4 (BankAccountP.py, side 32) fra

Oppgave 8.4 refererer til klassen BankAccountP i . Klassen finnes på side 122, og py-fil med koden kan lastes ned herfra:

Mer informasjon om


Undervisningsuke 11 (kalenderuke 44; 31/10-6/11)

Oppgaver i plenum: 9.4 (Polynomial_hier.py, side 636) fra

Forelesninger: kap 9 i (OOP), kap 2 i (ODEer)

Forelesere: Ole Christian Lingjærde

Anbefalte oppgaver: 9.3 (vector.py, side 39) fra ,

Obligatoriske innleveringsoppgaver (frist 4/11 kl 17.00): 8.7 (class_diff.py, side 34, 2 poeng), 8.9 (Coords.py, side 35, 3 poeng), 9.2 (polynomial.py, side 39, 2 poeng) fra

Mer informasjon om


Undervisningsuke 12 (kalenderuke 45; 7/11-13/11)

Oppgaver i plenum: 9.6 (PolarPoint.py, side 636), E.21 (RK4_func.py, side 811), E.22 (RK4_class.py, side 811) fra

Forelesninger: Kap 2 og 3 i (ODEer og systemer av ODEer)

Forelesere: Ole Christian Lingjærde

Obligatoriske innleveringsoppgaver (frist 11/11 kl 17.00): E.1 (simple_ODE_func.py, side 44), E.2 (simple_ODE_class.py, side 44), E.3 (simple_ODE_class_ODE_solver.py, side 44), E.5 (Midpoint.py, side 45), E.7 (coffee.py, side 46, 2 poeng) fra

Mer informasjon om


Undervisningsuke 13 (kalenderuke 46; 14/11-20/11)

Forelesninger: Ingen ordinær undervisning, men det blir satt opp orakeltimer for spørsmål om prosjektet. Tidspunkt og andre detaljer blir annonsert senere.

Obligatoriske innleveringsoppgaver: Totalt 25 poeng.. Filer som brukes i prosjektet ODESolver.py og beta_values.txt


Undervisningsuke 14 (kalenderuke 47; 21/11-27/11)

Det blir ingen ordinær undervisning denne uka, men det kan bli satt opp tid til spørsmål om eksamen og gjennomgang av eksamensoppgaver. Informasjon om dette blir lagt som beskjeder på emnesiden.