Ricerca di contatti, progetti,
corsi e pubblicazioni

Numerical Programming

Persone

Elefante G.

Docente titolare del corso

Zulian P.

Docente titolare del corso

Fumagalli G.

Assistente

Marchi G.

Assistente

Descrizione

In this course, you will learn the principles of numerical programming for Data Science. We will explore algorithms, their numerical stability, computational efficiency, and proper implementation using the Python programming language.
This course adopts data-oriented programming concepts with a procedural flavor to align closely with the computational demands of Data Science. By emphasizing the layout, transformation, and flow of data through algorithms, you will develop an understanding of cache-friendly memory access patterns, vectorized computation, and performance-critical design. The procedural approach will allow us to write clear, testable code that mirrors the structure of numerical algorithms. This model maps naturally onto tools like NumPy, where array-based computation and explicit data flow are central.

Obiettivi

1.    Understand the mathematical concepts behind numerical algorithms and apply them in practice.
2.    Understand and apply data-centric programming paradigms.
3.    Implement and debug numerical algorithms using the Python programming language and its libraries for numerical computing.

Modalità di insegnamento

In presenza

Impostazione pedagogico-didattica

1.    Weekly theoretical lecture (2h)
2.    Weekly programming lecture (2h)
3.    Weekly tutorials / hands-on sessions (2h)

Modalità d’esame

Assignments and quiz (30%)
Final (70%)
Challenge exercises (10% bonus points)

Bibliografia

Approfondimento

Programma

Prerequisito