2013/2014

02635 Programmering af matematisk software

Engelsk titel:

Programming for mathematical software

Sprog:

Point( ECTS )

5

Kursustype:

Kandidat
Kurset udbydes under åben uddannelse
 

Skemaplacering:

E1B (tors 13-17)

Undervisningens placering:

Campus Lyngby

Undervisningsform:

Forelæsninger, øvelser og mindre programmeringsprojekter.

Kursets varighed:

13-uger

Eksamensplacering:

E1B

Evalueringsform:

Eksamens varighed:

Hjælpemidler:

Bedømmelsesform:

Anbefalede forudsætninger:

,

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++ da det over hele verden 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. Desuden betragtes matematiske algoritmers numeriske stabilitet; dvs. om de er robuste overfor afrundingsfejl og overflow/underflow.

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:
  • Designe og dokumentere strukturen i imperative og objekt-orienterede programmer.
  • Implementere et udarbejdet design.
  • Definere og konstruere datastrukturer og funktioner.
  • Analysere kørslen af et program.
  • Beskrive og anvende programmeringssprogs basale objekt-orienterede funktionaliteter.
  • Beskrive og anvende dynamiske datastrukturer.
  • Beskrive og anvende sekventielle og associative containere.
  • Kalde eksterne (tredjeparts) programmer og biblioteker.
  • Diskretisere simple kontinuerte matematiske udtryk og evaluere dem på en computer.
  • Implementere software til effektive beregninger på PC og andre platforme.
  • Redegøre for et implementeret programs numeriske stabilitet.

Kursusindhold:

Programmeringsparadigmer: imperativ programmering, objekt-orienteret programmering.
Datastrukturer: vektorer, lister, nøgletabeller.
Programmeringsprojekter omfatter:
- Indlæsning af rigtige data.
- Kald af eksterne programmer og biblioteker (især numeriske).
- Optimering og parallelisering.

Mulighed for GRØN DYST deltagelse:

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

Institut:

01 Institut for Matematik og Computer Science

Tilmelding:

I CampusNet
Sidst opdateret: 01. april, 2014