Vak: Programmeren in MATLAB/Octave credits: 5

Vakcode
BFVP22PROGRAM
Naam
Programmeren in MATLAB/Octave
Studiejaar
2022-2023
ECTS credits
5
Taal
Nederlands
Coördinator
D.R.M. Langers
Werkvormen
  • Hoorcollege
  • Opdracht
  • Practicum / Training
  • Projectonderwijs
  • Werkcollege
  • Zelfstudie
Toetsen
  • Programmeren in MATLAB/Octave - Overige toetsing

Leeruitkomsten

Deze module kent de volgende leeruitkomsten 

  • Je schrijft scripts in Octave/MATLAB die gebruik maken van operaties, flow control, standaardfuncties, eigen functies, bestands-I/O en visualisatie 

  • Je voert efficiënt gevectoriseerde berekeningen uit door matrices als eenheid te manipuleren 

  • Je simuleert complex emergent gedrag op basis van een cellulair automaton in Octave/MATLAB 

  • Je legt de formuleringen uit van uiteenlopende cellulaire automata in de context van de biologie, chemie, fysica, of computer science 

  • Je karakteriseert het gedrag van een model of simulatie door gericht te experimenteren met beginconfiguraties en parameters 

  • Je werkt effectief samen met medestudenten met uiteenlopende natuurwetenschappelijke achtergronden 

Inhoud

Je maakt kennis met de MATLAB-compatibele programmeertaal (GNU) Octave ten behoeve van het uitvoeren van simulaties met data die georganiseerd zijn in multidimensionale grids. Eerst leer je aan de hand van beschikbare notebooks en online materiaal de basale syntax van de programmeertaal kennen met betrekking tot operatoren, flow control en functies, en maak je gebruik van enkelvoudige en samengestelde datatypen zoals vectoren, matrices, en multidimensionale arrays of cell-arrays. Met deze kennis implementeer je enkele discrete modellen op basis van cellulaire automata, waarbij je tevens gebruik maakt van visualisaties en bestands-I/O. Je ontdekt dat modellen die gebaseerd zijn op bedrieglijk eenvoudige basisregels kunnen leiden tot uiterst complex emergent gedrag op grotere schaal. Aanvankelijk doe je dit individueel door het implementeren en verkennen van een "toy model" (bv. het bekende Conway’s Game Of Life, maar ook Wolfram’s elementary Rule-N automata, Langton's ant, Paterson’s worms, wireworld, Brian’s brain, Fredkin's billiard ball machine, of het sandpile model). Later construeer je in kleine gemengde groepen ook realistischere discrete natuurwetenschappelijke modellen met praktisch relevante toepassingen in de biologie (bv. pigmentpatronen, cardiac waves in het hart, neuronen/fibroblasten, pathogenen/pandemieën), de chemie (bv. reactie-diffusie, Belousov–Zhabotinsky, kristalgroei), de fysica (bv. Ising model, vloeistofstromen, warmtegeleiding, golfvergelijking), de computerwetenschappen (bv. pseudo-RNG, Turing-machine, neural cellular automata), of eventueel een eigen voorstel. Jullie werken hierbij volgens een vereenvoudigde scrum methodologie. Eindresultaten presenteren jullie in de vorm van een interactieve digitale demonstratie-opstelling met bijbehorende documentatie in de vorm van een wiki.

Opgenomen in opleiding(en)

School(s)

  • Instituut voor Life Science & Technology