TDT4127

Programmering og numerikk

Høst og Vår

Trondheim

Engelsk

Oversikt

Ståprosent

98 %

1 poeng

Karakterfordeling
Snitt over tid
Ståprosent over tid

Om emnet

Faglig innhold

Emnet består at to deler: Grunnleggende prosedyreorientert programmering i Python (2/3) og Numerikk (1/3). Python-ferdighetene vil være av generell karakter, men så snart nivået er høyt nok går man i gang med å løse praktiske programmeringsoppgaver innen Numerikk.

Prosedyreorientert programmering:

  • Variabler og datatyper.
  • Input og output.
  • Kontrollstrukturer: Sekvens, valg, og repetisjon.
  • Strukturering og oppdeling av programmer; funksjoner og moduler.
  • Datastrukturer: Lister, tabeller, tekststrenger, mengder, tupler og poster (dictionary).
  • Filbehandling, persistent lagring av informasjon, unntaksbehandling.
  • Rekursjon.
  • Python som programmeringsomgivelse.
  • Behandling av N-dimensjonale matriser
  • Plotting av funksjoner

Numerikk:

  • Numerisk integrasjon av funksjoner: Trapes-metoden, Simpsons metode, Adaptiv Simpson metode
  • Newtons metode for å finne funksjoners nullpunkt
  • Gauss-eliminasjon for å løse lineære ligningssett
  • Numerisk løsning av ordinære differensialligninger
  • Fikspunktiterasjoner

Læringsmål

Kunnskaper: Ved emnets slutt kan kandidaten:

  • forklare sentrale konsepter og mekanismer i prosedyreorientert programmering
  • utlede resultatet av kjøring av små programmer og funksjoner
  • forklare tallrepresentasjon, presisjon av beregninger og virkemåten til sentrale numeriske metoder

Ferdigheter: Ved emnets slutt kan kandidaten:

  • bruke egnede verktøy for skriving og kjøring av Python-programmer.
  • anvende hensiktsmessige datastrukturer, kontrollstrukturer og oppdeling i funksjoner og moduler for å lage velstrukturert og fungerende kode.
  • anvende grunnleggende numeriske metoder i løsning av beregningsproblemer, og importere og bruke numeriske biblioteksfunksjoner til Python.
  • identifisere årsaker til feil og manglende presisjon i programmer, og korrigere feilene
  • demonstrere og forklare egen programkode til andre.

Læringsformer og aktiviteter

Forelesninger, øvingsforelesninger, obligatoriske øvinger.