Den exakta aritmetik som människor använder skiljer sig fundamentalt från den aritmetik med ändlig precision som datorer använder. Det beräknade värdet av en summa beror på termernas ordning. Det beräknade medelvärdet av två tal kan hamna utanför de två talens intervall. En enda subtraktion på ett kritiskt ställe är tillräckligt för att förstöra noggrannheten av en komplicerad beräkning. En utvecklare som inte är medveten om dessa skillnader mellan exakt och ändlig aritmetik kan inte skriva programkod som är tillförlitlig och noggrann.
Den här kursen introducerar tekniker som kan användas för att tvinga en dator att producera resultat som är tillförlitliga och noggranna. Om beräkningarna är enkla kan vi hitta gränser för avrundningsfelen. Om beräkningarna istället är komplexa, så kan vi avgöra när avrundningsfelen är irrelevanta och noggrannt estimera skillnaden mellan det exakta resultatet och den beräknade approximationen.
Kursen motiveras av att vår civilisation är beroende av vår förmåga att modellera komplexa naturliga fenomen. Våra modeller uttrycks ofta som system av differentialekvationer. För att lösa sådana ekvationer behövs en mängd olika ämnen såsom funktionsapproximationer, derivator, integraler och hur system av linjära och icke-linjära ekvationer kan lösas. Alla dessa ämnen introduceras och studeras i den här kursen. Vi är också intresserade av den ändliga aritmetikens fundamentala begränsningar. Vi introducerar och studerar koncepten problemkondition och algoritmstabilitet.
Genom hela kursen försöker vi konstruera algoritmer som är noggranna och snabba, estimera eller avgränsa felet och viktigast av allt försöker vi förklara varför resultaten är tillförlitliga.
Kursen är uppdelade i två moduler.
Modul 1, teori, 4,5 hp I den här modulen introduceras den teori, algoritmer, mjukvara och de underliggande exempel som används för att illustrera alla aspekter av kursens innehåll.
Modul 2, laboration, 3,0 hp I den här modulen tillämpar vi teorin på praktiska problem och utvecklar mjukvara för att lösa numeriska problem. Vi använder den numeriska plattformen Matlab. Teorin, algoritmerna, mjukvaran och resultaten från numeriska experiment dokumenteras i skriftliga rapporter.
Förväntade studieresultat
Kunskap och förståelse Efter avklarad kurs ska studenten kunna:
(FSR 1) redogöra för olika typer av approximationer i numeriska metoder och hur de samverkar
(FSR 2) förklara grunderna för analys av effektivitet och kvalitet i numeriska algoritmer
Färdighet och förmåga Efter avklarad kurs ska studenten kunna:
(FSR 3) formulera och använda sig av numeriska algoritmer för att lösa problem inom olika tillämpningar
(FSR 4) använda och skriva funktioner för den numeriska plattformen Matlab
(FSR 5) dokumentera teori, algoritmer, mjukvara och resultat från numeriska experiment i form av en skriftlig rapport
Behörighetskrav
För behörighet krävs följande kurser (eller motsvarande): - Envariabelanalys 1, 7,5 hp - Envariabelanalys 2, 7,5 hp - Linjär algebra, 7,5 hp - minst 7,5 hp grundläggande programmering
Undervisningens upplägg
Undervisningen bedrivs i form av föreläsningar, arbete i datorlabb och övningsuppgifter. Utöver schemalagda aktiviteter krävs även individuellt arbete med materialet.
Examination
Examination av modul 1, teori (FSR 1-4) Examination sker genom salstentamen. På modulen sätts något av betygen Underkänd (U), Godkänd (3), Icke utan beröm godkänd (4) eller Med beröm godkänd (5).
Examination av modul 2, laboration (FSR 1-5) Examination sker genom ett antal programmeringsuppgifter som redovisas genom skriftliga inlämningsuppgifter. På modulen sätts något av betygen Underkänd (U) eller Godkänd (G).
Betyg på kursen som helhet På kursen som helhet sätts något av betygen Underkänd (U), Godkänd (3), Icke utan beröm godkänd (4) eller Med beröm godkänd (5). Graden av godkänt bestäms av betyget på modul 1.
Stöd på grund av funktionsnedsättning Avsteg från kursplanens examinationsform kan göras för en student som har beslut om pedagogiskt stöd på grund av funktionsnedsättning. Individuell anpassning av examinationsformen ska övervägas utifrån studentens behov. Examinationsformen anpassas inom ramen för kursplanens förväntade studieresultat. Efter begäran av studenten ska kursansvarig lärare, i samråd med examinator, skyndsamt besluta om anpassad examinationsform. Beslutet ska sedan meddelas studenten.
Byte av examinator En student som utan godkänt resultat har genomgått två prov för en kurs eller en del av en kurs, har rätt att få en annan examinator utsedd, om inte särskilda skäl talar emot det (HF 6 kap. 22 §). Begäran om ny examinator ställs till prefekten för Institutionen för datavetenskap.
Övriga föreskrifter
I en examen får denna kurs ej ingå, helt eller delvis, samtidigt med en annan kurs med likartat innehåll. Vid tveksamheter bör den studerande rådfråga studievägledare vid Institutionen för datavetenskap och/eller programansvarig för sitt program.
Särskilt gäller att kursen inte kan ingå i en examen samtidigt som kursen 5DV005 med samma namn.
Om kursplanen har upphört att gälla eller kursen slutat erbjudas garanteras en student som någon gång registrerats på kursen minst tre provtillfällen (inklusive ordinarie provtillfälle) enligt denna kursplan under en tid av maximalt två år från det att kursplanen upphört att gälla eller kursen slutat erbjudas.
Litteratur
Giltig från:
2022 vecka 26
Material som tillhandahålls av institutionen/Material provided by the department Inst för datavetenskap : Obligatorisk