Magisterkurs i beräkningsteknik, 40 poäng
(BT5020)

(Master of Science course in Scientific Computing, 40 credits)


Kursplanen är fastställd av naturvetenskapliga fakultetsnämnden 2003-10-24.

Placering i utbildningen och förkunskapskrav

För tillträde till kursen krävs minst 120 poäng varav minst
  • 40 poäng i matematik, inklusive kunskaper inom linjär algebra, en- och flervariabelanalys, vektoranalys samt ordinära differentialekvationer,
  • 20 poäng i datalogi,
  • 10 poäng i beräkningsteknik,
  • 80 poäng totalt ska ha inhämtas i ämnena beräkningsteknik, matematik, datalogi och matematisk statistik.
    
    

    Mål

    Kursen ska ge kompetens i beräkningsteknik med tillämpningar inom valda delar av naturvetenskapen vilket innebär att studenten efter genomgången kurs ska ha
  • kunskap om matematisk modellering,
  • kunskap om beräkningsteknisk metodik,
  • kunskap om och kunna behärska olika programmeringsverktyg lämpliga för beräkningstekniska problem,
  • kunskap om olika tillämpningsområden av betydelse för forskning och industriell verksamhet. Vidare ska studenten under kursen utveckla förmågan till
  • självständigt arbete och grupparbete,
  • redovisning muntligt och skriftligt.
    
    
    Detaljerade mål för de olika delkurserna:

    Introduktion till högprestandaberäkningar
    Att ge en översikt av området högprestandaberäkningar, detaljkunskap om message passing och distribuerade parallella beräkningar samt detaljkunskap om visualisering för att studenterna ska kunna börja arbeta med egna högprestandaberäkningar vid Parallelldatorcentrum.
    Matematiska modeller, analys och simulering, del 1
    Att ge en sammanhållen belysning av viktiga delar av den tillämpade och numeriska matematiken samt erfarenhet av numeriska experiment med Matlab, för att studenterna ska kunna analysera och praktiskt behandla jämviktsmodeller och dynamiska system med ändligt antal frihetsgrader.
    Tillämpade numeriska metoder
    Att ge kunskaper om användning, analys, och implementering av avancerade datororienterade numeriska metoder för att studenterna ska kunna lösa tekniskt-matematiska problem från olika tillämpningsområden, ge en grund för fortsatta studier i beräkningsteknik.
    Tekniskt vetenskapliga datorberäkningar
    Att ge kunskap om några av fysikens ekvationer och numerisk approximation av dessa ekvationer samt mjukvarukonstruktion för en modern parallelldator för att studenterna numeriskt ska kunna lösa storskaliga, industriellt relevanta beräkningsproblem.
    Finita elementmetoden
    Att ge kunskap om moderna beräkningsmetoder, speciellt finita elementmetoden för att lösa differentialekvationer, förmåga att analysera beräkningars effektivitet och noggrannhet samt matematisk kunskap om grundläggande partiella differentialekvationer i tillämpningar, för att studenterna ska kunna göra effektiva och pålitliga datorberäkningar.
    Strömningsmekaniska beräkningar med tillämpningar
    Att göra studenterna bekanta med de differentialekvationer som beskriver olika typer av strömningsfenomen samt ge en sammanhållen översikt av moderna numeriska metoder för strömningsberäkningar med dator. Målet är även att ge studenterna erfarenhet av de olika metoder som används för olika strömningsidealiseringar, detta för att förstå olika beräkningsmodellers egenskaper och begränsningar. Studenterna ska också ges inblick i olika industriella och forskningsrelaterade tillämpningar inom CFD, samt en översikt av olika tillgängliga programvaror för lösning av CFD-problem. Studenterna ska dessutom praktiskt kunna tillämpa inhämtade kunskaper för att lösa avancerade problem.
    Examensarbete i beräkningsteknik
    Att den studerande skall bli förtrogen med hur beräkningsteknik tillämpas i praktiken i arbetslivet, genom att dels (för 20 poängs examensarbete) inhämta teoretiska kunskaper för genomförandet av en specifik enskild uppgift, dels (för samliga examensarbeten) i praktiken utföra en specifik enskild uppgift, vilken kan bestå av olika aspekter på beräkningsteknik alltifrån analys av problem till implementation av resultat.
    
    

    Innehåll

    Kursen består av de obligatoriska delkurserna 3.1-3.4 samt av antingen delkurserna 3.5-3.7 eller delkursen 3.8.

  • 3.1 Introduktion till högprestandaberäkningar, 5 poäng
    Datorarkitektur, strukturerad programmering för tekniskt-vetenskapliga beräkningar, parallella algoritmer, message passing, visualisering, stora datamängder. Introduktion till programspråk lämpade för vektor- och parallelldatorarkitekturer samt datorövningar på superdatorer vid Nada och Parallelldatorcentrum.

  • 3.2 Matematiska modeller, analys och simulering, del 1, 5 poäng
    Linjär algebra, jämvikts- och minimeringsproblem. Tillämpning på fackverk och elektriska nät. Dualitet och variationskalkyl, essentiella och naturliga randvillkor. System av ordinära differentialekvationer, linjära och ickelinjära. Fasplan, stabilitet, bifurkationer. Numeriska metoder för lösning av ickelinjära system och differentialekvationer. Tillämpningar på mekaniska och ekologiska system.

  • 3.3 Tillämpade numeriska metoder, 6 poäng
    Numerisk linjär och icke-linjär algebra. Direkta och iterativa metoder för linjära ekvationssystem. Icke-symmetriska, symmetriska, definita och indefinita problem. Faktoriseringar, glesa matriser, egensystem, Schurs sats, klassiska iterativa metoder, konjugerade riktningsmetoder.
    Linjär och icke-linjär modellanpassning, singulära värden, projektioner. Gauss-Newton, minimering med bivillkor.
    Begynnelse-, rand-, och egenvärdesproblem för ordinära differentialekvationer, styva problem, differential-algebraiska system. Stabilitet, lokalt och globalt fel, variations-ekvationen, logaritmiska normer, steglängdsreglering.
    Numerisk lösning av begynnelsevärdesproblem för partiella differentialekvationer. Method of lines. Finita differenser, finita element, finita volymer. Stabilitet, Fourieranalys, matrisanalys. Rättställdhet, randvillkor, konservativ form.

  • 3.4 Tekniskt vetenskapliga datorberäkningar, 4 poäng
    Differensmetoder på kurvlinjära nät. Tidsstegningsmetoder. Randvillkor. Orientering om andra approximationstekniker (spektralmetod, finita element). Nätgenerering. Orientering om numeriskt relevanta egenskaper hos olika typer av differentialekvationer.
    Objektorienterad programmering för numeriska metoder med språket C++. Orientering om parallelldatorer och hantering av cacheminne på RISC-processor. Datastrukturer för hantering av bl.a. randvillkor och geometri. Visualisering. Tillämpningsexempel från strömningsmekanik/fältproblem.
    Kursen ger en fullständig bild av hur man löser problem i realistiska geometrier, med fysikaliskt riktiga ekvationer. Tonvikten ligger på implementationsaspekterna.

  • 3.5 Finita elementmetoden, 4 poäng
    FEM-formulering för linjära och ickelinjära partiella differentialekvationer. Elementtyper och deras implementation. Nätgenerering. Adaption. Feluppskattningar. Effektiva lösningsmetoder (t.ex. med multigrid-metoden). Tillämpningar till stationära och transienta diffusionsprocesser, elasticitet, konvektion-diffusion, Navier-Stokes ekvation, kvantmekanik m.m.

  • 3.6 Strömningsmekaniska beräkningar med tillämpningar, 6 poäng
    Introduktion till grundläggande numeriska metoder, härledning av de grundläggande ekvationerna för att beskriva strömningsmekaniska problem -- Navier-Stokes ekvationer, förenklade modeller -- Eulers ekvationer, finita differenser för partiella differentialekvationer, matematiska egenskaper hos hyperboliska system -- Eulers ekvationer, moderna numeriska metoder för behandling av stötar, finita volymsmetoden, finita elementmetoden, randvillkor. Datorlaborationer med numerisk behandling av bland annat Eulers ekvationer och inkompressibla Navier-Stokes ekvationer.
    Programvara för CFD används för att lösa utvalda industriella och forskningsrelaterade problem. Detta görs i form av studentprojekt.

  • 3.7 Examensarbete i beräkningsteknik, 10 poäng
    Praktiskt arbete bestående av en självständig uppgift som ska motsvara minst tio veckors heltidsarbete, med fördel utfört vid företag eller myndighet utanför högskolan. Studenten har under hela examensarbetet tillgång till en handledare vid institutionen. Förslag till examensarbete ska, innan det påbörjas, godkännas av examinator.

  • 3.8 Examensarbete i beräkningsteknik, 20 poäng
    Teorimomentet ("inläsningsdelen") handlar om något delområde inom beräkningsteknik, matematik eller datalogi av speciell relevans för den enskilda studentens praktiska arbete. Det praktiska arbetet utgörs av en självständig uppgift som ska motsvara minst tre månaders heltidsarbete, med fördel utfört vid företag eller myndighet utanför högskolan. Studenten har under hela examensarbetet tillgång till en handledare vid institutionen. Förslag till examensarbete ska, innan det påbörjas, godkännas av examinator.
    
    

    Undervisning

    Undervisningen består av föreläsningar, lektioner, gruppövningar samt handledda och självständiga laborationer på dator. Deltagande i laborationer är obligatoriskt.
    För examensarbetet krävs närvaro vid minst två arbetsuppgiftspresentationer innan den egna arbetsuppgiften redovisas. Om särskilda skäl föreligger kan examinator, efter samråd med kursansvarig lärare, medge den studerande befrielse från skyldigheten att delta i vissa obligatoriska moment.
    
    

    Examination

    Examinationen utgörs av tentamen, hemuppgifter, projektuppgift samt datorlaborationer.
    För arbetsuppgiften inom examensarbetet utgörs examinationen av skriftlig rapport (på svenska eller engelska, med referat på det andra av dessa språk, framställd med hjälp av ordbehandlare), samt muntlig redovisning vid seminarium. Studenten ska dessutom delta i ett av institutionen anordnat seminarium samt opponera på en annan students rapport och muntliga presentation.
    Studerande som godkänts på tentamen får ej undergå förnyad tentamen för högre betyg. Studerande som underkänts i ordinarie tentamen har rätt att delta vid ytterligare tentamenstillfällen. Studerande som underkänts på tentamen två gånger har rätt att begära att annan lärare än den kursansvarige utses för att bestämma betyg på kursen. Framställan härom ska göras till institutionsstyrelsen.
    Som betyg på kursen används något av uttrycken underkänd, godkänd eller väl godkänd.
    
    

    Litteratur

    Kurslitteratur fastställs av institutionsstyrelsen. Aktuell litteraturlista.
    
    

    Övrigt

    Kursen får ej tas med i examen tillsammans med Introduktion till högprestandaberäkningar, påbyggnadskurs, 5 poäng (BT3110), Matematiska modeller, analys och simulering, del 1, fortsättningskurs, 5 poäng (NA3220), Numerisk och tillämpad matematik, fortsättningskurs, 7 poäng (NA2180), Tillämpade numeriska metoder, fortsättningskurs, 6 poäng (BT2040), Numerisk och tillämpad matematik, fortsättningskurs, 7 poäng (NA2180), Numerisk analys, fortsättningskurs, 8 poäng (BT2020), Tekniskt vetenskapliga datorberäkningar, påbyggnadskurs, 4 poäng (BT3160), Strömningsmekaniska beräkningar, påbyggnadskurs, 5 poäng (BT3170), Tillämpade strömningsmekaniska beräkningar, påbyggnadskurs, 2 poäng (BT3180), Examensarbete i beräkningsteknik, 20 poäng (BT5000).
    
    

    Kursinformation (om sådan finns tillgänglig)

    Magisterkurs i beräkningsteknik
    
    
    ^ Upp till kursplaner; innehållsförteckning.


    Senast ändrad 04-07-06 <svl-su@nada.kth.se>