Kunskap och förståelseUttrycka matematiska formler med hjälp av programmeringsspråket och lämpliga algoritmerVälja lämpliga datatyper och datastrukturer för olika typer av dataStrukturera stora program i hanterbara och återanvändbara moduler genom att använda funktionerHitta relevanta numeriska analysverktyg och programbibliotek samt använda dem på adekvata sättLära sig Pythons syntaxKompetens och färdigheterAnvända funktionalitet från befintliga Python-moduler, t.ex. Numpy och ScipyBl.a. använda begrepp från linjär algebra, differentialkalkyl integrationskalkyl, ekvationslösning och andra matematiska modeller för att lösa vetenskapliga problemSkriva väl kommenterade program som hanterar både numerisk data och textdata samt producera korrekt formaterade diagramSkapa program som läser, omvandlar och genererar filer i filsystemetAnvända standardbibliotek och tillämpa de bäst lämpade programmeringsmetodernaTesta olika programmeringsmetoderAnvända programmeringsverktyg såsom kodredigerare och versionskontrollsystemBedömning och tillvägagångssättBedöma den komplexitet och de beräkningsresurser som behövs för typiska programmeringsuppgifterBestämma effektiviteten och tillförlitligheten hos en algoritmAnalysera kod skriven av andra och hitta fel och möjligheter till förbättringar
Kursinnehåll
Kursen introducerar programmering främst m.h.a. Python med specifikt fokus på algoritmbaserade numeriska lösningar av vanliga vetenskapliga problem. Studenten får omfattande kunskaper om algoritmerna via Python och introduceras till de grundläggande begreppen och verktygen för datorprogrammering och numerisk analys, nämligen: Tolkning av algoritm och källkodDatatyper, variabler och matriserFörhållanden och looparFunktionerFelanalys och flytande aritmetikNumerisk differentialkalkyl och integrationskalkylLinjär algebra: arbeta med matriserEkvationslösningInterpoleringar och approximationerOrdinära differentialekvationer
Förutsättningar
Grundläggande behörighet för grundnivå
Litteratur
Numerical Methods in Physics with Python - Alex Gezerlis, Cambridge University Press, ISBN 9781108772310