DM562: Scientific programming  

Det Naturvidenskabelige Studienævn

Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N330025102
Censur: Intern prøve, to eller flere bedømmere
Bedømmelse: 7-trinsskala
Udbudssteder: Odense
Udbudsterminer: Efterår
Niveau: Bachelor

STADS ID (UVA): N330025101
ECTS-point: 10

Godkendelsesdato: 14-03-2022


Varighed: 1 semester

Version: Arkiv

Kommentar

NEDLÆGGES - udbydes sidste gang E22

  1. eksamensforsøg afholdes januar 2023
  2. eksamensforsøg afholdes marts 2023
  3. eksamensforsøg afholdes august 2023

Kurset samlæses med DM857 og DS830.

Indgangskrav

Kurset kan ikke følges hvis DM574, DM550, DM857, DS831, DS801, DS830 eller MM560 er bestået, eller hvis DM574, DM550, DM857, DS831, DS801, DS830 eller MM560 indgår obligatorisk i din studieordning.

Faglige forudsætninger

Ingen

Formål

Kurset giver en introduktion til struktureret programmering, med særligt fokus på anvendelsesområdet scientific computing. Kurset giver et videnskabeligt grundlag for at løse problemer via modellering og implementering af programmer, og lærer herunder de studerende, hvordan metoder fra lineær algebra kan bringes i anvendelse via programmering. 

Kurset bygger oven på den viden, der er erhvervet i kurserne MM505 og giver den studerende nødvendige forudsætninger for kurser senere i uddannelsen, specielt DM507 og MM546.

I forhold til uddannelsens kompetenceprofil har kurset
eksplicit fokus på at:

  • at give kompetence til at planlægge og udføre computerprogrammer
  • viden om fælles programmering metoder
  • udvikling af færdigheder i at programmere i flere typer programmeringssprog
  • udvikling af færdigheder i softwareudvikling
  • udvikling af færdigheder i at konstruere større softwaresystemer
  • udvikling af færdigheder i at træffe og begrunde fagligt relaterede beslutninger
  • udvikling af færdigheder i at beskrive, formulere og formidle problemstillinger og resultater til enten fagfæller og ikke-specialister eller samarbejdspartnere og brugere
  • at give kompetence i at håndtere komplekse og udviklingsorienterede situationer i studie- og arbejdssammenhænge
  • at give kompetence i at identificere egne læringsbehov og strukturere egen læring i forskellige læringsmiljøer
  • at giver kompetence til at designe højere niveau software arkitekturer

Målbeskrivelse

For at opnå kursets formål er det læringsmålet for kurset,
at den studerende demonstrerer evnen til at:

  • designe modeller for konkrete problemer
  • udarbejde en programstruktur baseret på modellen
  • implementere det planlagte program i det konkret anvendte
    programmeringssprog.
  • finde og bruge egnede elementer i det til sproget hørende
    programbibliotek.
  • lanlægge og gennemføre en afprøvning af programmet.
  • designe og implementere rekursiv løsning af problemer;
  • anvende basale træstrukturer og algoritmer for disse.
  • lave programmer, som anvender metoder fra lineær algebra

Indhold

Kurset indeholder følgende faglige hovedområder: 

  • De basale struktureringsredskaber sekvens, gentagelse, betinget
    instruktion og underprogram.
  • Fundamentale datastrukturer som lister, maps, træer.
  • Struktureretprogrammeringsteknik, herunder eksempler og anvendelser.
  • Rekursion og rekursive data strukturer.
  • Eksempler på abstrakte datatyper og deres realisering.
  • Lineær algebra og programmering
  • Anvendelser af programmering baseret på metoder fra
    lineær algebra 

Kurset undervises i Python.

Litteratur

Se itslearning for pensumlister og yderligere litteraturhenvisninger.

Eksamensbestemmelser

Eksamenselement a)

Tidsmæssig placering

Efterår og januar

Udprøvninger

Portfolio med mundtlig forsvar

EKA

N330025102

Censur

Intern prøve, to eller flere bedømmere

Bedømmelse

7-trinsskala

Identifikation

Fulde navn og SDU brugernavn

Sprog

Følger, som udgangspunkt, undervisningssprog

Hjælpemidler

Tilladt

ECTS-point

10

Uddybende information

Portfolioeksamen med mundtlig forsvar består af små individuelle opgaver og et gruppeprojekt (med skriftlig rapport og mundligt forsvar). Den mundtlige eksamens er placeret i eksamensperioden i januar måned.

Vejledende antal undervisningstimer

66 timer per semester

Undervisningsform

På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.

  • Introfase (forelæsning, holdtimer) - Antal timer: 28
  • træningsfase: Antal timer: 38, heraf eksaminatorietimer 28 timer, laboratorieøvelser 10 timer.

I introfasen benyttes en kombination af klassiske forelæsninger, hvor fagets grundbegreber og metoder præsenteres, og mere anvendelsesorienterede forløb, hvor der undervises i hvordan den opnåede viden kan anvendes i konkrete scenarier.

Træningsfasen er opdelt i eksaminatorier og labs, hvor de studerende lærer de kompetencer, der sætter dem i stand til at omsætte deres viden til løsning og efterfølgende til konkrete computerprogrammer.

I studiefasen arbejder de studerende selvstændigt med at øge deres forståelse og deres kompetencer vedrørende fagets indhold. Aktiviteter i studiefasen: Programmering af små opgaver og projekter.

    Ansvarlig underviser

    Navn E-mail Institut
    Marco Peressotti Peressotti@imada.sdu.dk Concurrency

    Skemaoplysninger

    Administrationsenhed

    Institut for Matematik og Datalogi (datalogi)

    Team hos Uddannelsesjura & Registratur

    NAT

    Udbudssteder

    Odense

    Anbefalede studieforløb

    Profil Uddannelse Semester Udbuds periode

    Overgangsordninger

    Overgangsordninger beskriver, hvordan et kursus erstatter et andet kursus, når der ændres i et studieforløb.
    Hvis der er lavet en overgangsordning for et kursus vil den fremgå af oversigten.
    Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.