Programmazione Scientifica++

Logo Sapienza

← Torna alla Home del Sito Personale
📦 Scarica tutto il materiale pubblicato (ZIP)

Scarica l'intero sito web per consultare le slide offline.

Benvenuti al corso di Programmazione Scientifica++ per la laurea triennale in Fisica.

In questo corso esploreremo i fondamenti e i concetti avanzati del linguaggio C++. A partire dalle basi della programmazione procedurale (confrontandola con il C che già conoscete), passeremo alla programmazione orientata agli oggetti (OOP), all’utilizzo delle classi, dei template e all’uso pratico della memoria.

La teoria verrà subito messa in pratica: durante le ore di laboratorio lavoreremo insieme allo sviluppo da zero in C++ di una Rete Neurale MLP (Multilayer Perceptron) per il riconoscimento di numeri scritti a mano utilizzando il dataset MNIST, ispirandoci alla metodologia del libro “Make Your Own Neural Network” di Tariq Rashid.

📚 Lezioni Teoriche

💻 Laboratori Pratici (BASIC_NEURAL++)


🔧 Informazioni Tecniche

Per seguire le esercitazioni pratiche e sviluppare il progetto finale, avrai bisogno di un ambiente di sviluppo configurato. In particolare saranno richiesti:

  1. Un compilatore C++ (es. g++ o clang++ con supporto a C++17).
  2. CMake come sistema di build.
  3. Libreria Eigen 3 per l’algebra lineare ad alte prestazioni.
  4. Libreria OpenCV per visualizzare le immagini del dataset MNIST.
  5. Python 3 con matplotlib (per i grafici di addestramento).

Tutto il software può essere facilmente installato gratuitamente su Linux (tramite apt), su macOS (tramite Homebrew) o su Windows (utilizzando WSL o MSYS2).

[!NOTE] I dettagli passo-passo su come installare il compilatore e le librerie in questi tre sistemi operativi verranno affrontati direttamente nella Prima Lezione di Laboratorio. Non preoccuparti di installarli prima!