redogöra för och utföra uppgifter som kräver kännedom om de nyckelbegrepp som ingår i kursen;
beskriva och använda de algoritmer som ingår i kursen;
undersöka egenskaper hos beräkningsalgoritmer och matematiska modeller med hjälp av de analysförfaranden som ingår i kursen;
lösa tekniska och naturvetenskapliga beräkningsproblem givet en matematisk modell, genom att strukturera problemet, välja lämplig numerisk metod, samt generera lösning med hjälp av matematisk programvara och egen kod.
Kursinnehåll
Numeriska algoritmer för funktioner och ekvationer samt användning av programvara för att lösa sådana problem. Innehållet är indelat i tre huvudområden med algoritmer för: polynomanpassning och numerisk integration, numerisk lösning av ordinära differentialekvationer inklusive system av dessa, lösning av icke-linjära ekvationer och ekvationssystem. Numerisk integration: Trapetsregeln, Simpsons metod och Gausskvadratur. Ordinära differentialekvationer: Runge-Kutta metoder, explicita och implicita metoder. Lösning av icke-linjära ekvationer och ekvationssystem: Bisektion, Newton-Raphsons metod och Newtons metod för system. Analys av algoritmernas noggrannhet, stabilitet, konvergens och effektivitet. IEEE-standard för flyttalsrepresentation. Problemlösning och programmering i Python. Problemlösningsmetodik. Uppdelning av ett problem i delproblem och implementation i Python. Användande av avancerad programvara för numeriska problem. Viktiga nyckelbegrepp som ingår i kursen är bl.a. algoritm, numerisk metod, diskretisering och diskretiseringsfel, stabilitet och instabilitet, avrundningsfel, maskinepsilon, overflow och underflow, kancellation, flyttal, noggrannhet och noggrannhetsordning, iteration och iterativ metod, adaptivitet och adaptiv metod, styva problem, konvergens hos iterativ metod, konvergenshastighet.
Förutsättningar
Programmeringsteknik I, Envariabelanalys, Flervariabelanalys och Linjär Algebra II ska vara genomgångna.