INF305 Vitenskapelige beregninger
Studiepoeng:5
Ansvarlig fakultet:Fakultet for realfag og teknologi
Emneansvarlig:Jonas Kusch
Campus / nettbasert:Undervises campus Ås
Undervisningens språk:Engelsk
Frekvens:Årlig (vårsemester, andre halvdel)
Forventet arbeidsmengde:125 timer = 24 timer forelesninger + 12 timer øvelser + 89 timer selvstudium, inkludert arbeid med øvingsoppgaver.
Undervisnings- og vurderingsperiode:Emnet blir tilbudt i vårparallellen. Emnet har undervisning/vurdering heilt gjennom den siste halvdelen avvårparallellen.
Om dette emnet
Dette kurset introduserer studenter til vitenskapelige beregninger, samlingen av verktøy, teknikker og teorier som kreves for å løse matematiske modeller av problemer innen vitenskap og ingeniørfag på datamaskinen. Et spesielt fokus ligger på å forstå teoretisk og effektivt implementere diskuterte algoritmer for å løse fysiske balanselover i C++. Kurset gir ikke en introduksjon til C++, som dekkes av INF205. Programmeringsdelen dekker essensielle så vel som verdifulle verktøy i C++ som er nødvendige for effektive vitenskapelige beregninger.
Spesifikke tema og spørsmål som vil bli besvart, er:
- Hva er vitenskapelige beregninger? Hva er en numerisk simulering?
- Fysiske balanselover og deres forbindelse til fysikk, ingeniørfag og datavitenskap.
- Hvordan verifiserer man en algoritme? Bestemme et testproblem med en analytisk løsning.
- Implementering av differanseskjemaer i C++. Hva er de løsningene en algoritme skal gi?
- Konsistens, stabilitet og konvergens av en algoritme.
- Biblioteker for vitenskapelige beregninger.
- Implementering av en 2D-finite-volummetode.
- Verifikasjon og validering.
- Hvordan å parallellisere koden din ved hjelp av MPI.
Dette lærer du
Etter å ha fullført kurset, vil du være i stand til å
- implementere fysiske balanselover i C++ ved hjelp av standardbiblioteker for vitenskapelig databehandling.
- skrive parallell kode ved hjelp av Message Passing Interface (MPI).
- verifisere og validere programmet ditt.
- forstå ulike løsningskonsepter som klassiske, svake og entropiløsninger.
- forstå begrepene konsistens, stabilitet og konvergens.
Læringsaktiviteter
Læringsstøtte
Pensum
Forutsatte forkunnskaper
Anbefalte forkunnskaper
Vurderingsordning, hjelpemiddel og eksamen
Sensorordning
Obligatorisk aktivitet
Undervisningstider
Opptakskrav