Grafikus processzorok tudományos célú programozása 2 ea.

Az előadás időpontja: Hétfőként, 10:20-11:50

Neptun kód: ff2n1i09
Helyszín: Északi Tömb 5.56 Információtechnológiai laboratórium

Jegyszerzés:

Szóbeli Vizsga az előadás diák anyagából + Programozási feladat(ok) megoldása és bemutatása.

Szorgalmi feladatok

  • 1 ember vagy 1db 1 pontosat, vagy 2db 1 pontosat, vagy 1db 2 pontosat választhat
  • minden feladatot max 1 ember választhat
  • jelentkezés a feladatra, illetve kérdés, pontosítás e-mailben

Leadási határidő: a szóbeli vizsga előtt 2 héttel.
Lesz még várhatóan egy második adag szorgalmi is a félév második feléből. Minden egyes helyes megoldásért kapott pont 1-el kevesebb gyakorlati feladatot jelent a vizsgán.

Tematika:

  1. Bevezetés a funkcionális programozásba, Kategóriaelméleti létminimum
  2. Funkcionális alapelemek: Functor, Applicative, Monad, Fold, Zip, Fixpont kombinátor
  3. Funkcionális programozás a C++ template-metanyelv szintjén
  4. Lineáris algebra felépítése funkcionálisan
  5. Lineáris algebra felépítése funkcionálisan a GPU-n történő számolások sajátosságaival
  6. Végeselem diszkretizációk
  7. Közönséges differenciálegyenlet rendszerek
  8. Klasszikus N-test problémák
  9. Statisztikus fizikai szimulációk
  10. Monte-Carlo szimulációk
  11. Parciális differenciálegyenletek megoldása végeselem diszkretizációval
  12. Parciális differenciálegyenletek megoldása bázistranszformációs módszerekkel

Példakódok: frissítve!
Functor, Applicative, Monad C++-ban std::future Functor, C++-ban ODE megoldó

Régebbi példakódok:

Funkcionális példa 1. (Linalg)
Funkcionális példa 2. (ODE léptető)
Funkcionális példa 3. (Numerikus integrálok)
Funkcionális példa 4. (Véges differencia sémák) (LinearForm kód)
Funkcionális példa 5. (Adaptív ODE megoldó)
Funkcionális példa 6. (FFT)
Funkcionális példa 7. (Expression tree alapú párhuzamosítás)

Szorgalmi megoldása