02635 Programmering af matematisk software

2022/2023

Kursusinformation
Mathematical software programming
Engelsk
5
Bachelor
Kandidat
Kurset udbydes som enkeltfag
E1B (tors 13-17)
Campus Lyngby
Forelæsninger, øvelser og mindre programmeringsprojekter.
13-uger
E1B
Skriftlig eksamen og bedømmelse af rapport(er)
Skriftlig eksamen: 4 timer
Alle hjælpemidler er tilladt
7-trins skala , intern bedømmelse
02525/02631/02633.02601 , eller tilsvarende kurser der giver kendskab til numeriske metoder samt grundlæggende datalogiske begreber som løkker, variabeltyper og simple matematiske operationer.
Martin Skovgaard Andersen , Lyngby Campus, Bygning 303B, Tlf. (+45) 4525 3036 , mskan@dtu.dk
01 Institut for Matematik og Computer Science
I studieplanlæggeren
Dette kursus giver den studerende en mulighed for at lave eller forberede et projekt som kan deltage i DTUs studenterkonference om bæredygtighed, klimateknologi og miljø (GRØN DYST). Se mere på http://www.groendyst.dtu.dk
Overordnede kursusmål
At gøre deltagerne i stand til at skrive software som kan løse numeriske problemer på baggrund af en matematisk model.

At give deltagerne en indføring i imperativ og objekt-orienteret programmering samt evnen til at kunne gøre brug af disse paradigmer vha. gængse imperative og objekt-orienterede programmeringssprog. I kurset anvendes C/C++, da C-baserede programmeringsprog anvendes i stor udstrækning til programmering af matematisk software.

Deltagerne indføres også i de grundlæggende algoritmer og datastrukturer, der ofte anvendes til programmering af matematisk software.

For at sikre at man som deltager udvikler praktiske færdigheder, arbejdes der i kurset med mindre matematiske projekter, hvor programmering indgår som et uundværligt værktøj. Desuden trænes dokumentering af software i rapporter.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Evaluere diskrete og kontinuerte matematiske udtryk.
  • Beskrive og bruge datastrukturer såsom lister, arrays, og tyndt befolkede matricer.
  • Vælge passende datatyper og datastrukturer til et givent problem.
  • Sammenligne iterativ og rekursiv løsning af simple problemer.
  • Analysere kørslen af et simpelt program, herunder tids- og pladskompleksitet.
  • Kalde eksterne (tredjeparts) programmer og biblioteker.
  • Designe, implementere og dokumentere et program som løser et matematisk problem.
  • Fejlfinde og teste matematisk software.
  • Beskrive og anvende basale objektorienterede programmeringskoncepter såsom klasser og objekter.
  • Forklare afrundingsfejl og flydende-komma-repræsentation af reelle tal.
Kursusindhold
Programmeringsparadigmer: imperativ programmering, objekt-orienteret programmering.
Datastrukturer: lister, arrays, tyndt befolkede matricer.
Programmeringsprojekter omfatter:
- Indlæsning af data.
- Kald af eksterne programmer og biblioteker (især numeriske).
- Optimering og parallelisering.
Sidst opdateret
02. maj, 2022