TDT4127
Programmering og numerikk
Høst og Vår
Trondheim
Engelsk
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.