Tu sei qui

Scientific Programming

Periodo di svolgimento

da Mercoledì, 1 Gennaio 2020 a Lunedì, 29 Giugno 2020
Ore del corso: 60
Ore dei docenti responsabili: 60

Modalità d'esame

  • Relazione o seminario

Prerequisiti

Il corso inzia con concetti di base sulla programmazione e la struttura interna dei computer moderni. Non sono richieste conoscenze particolari nella programmazione.

Programma

Il corso intende fornire una conoscenza pratica sullo sviluppo di programmi per l’esecuzione di simulazioni numeriche nel campo delle scienze computazionali e lo sfruttamento dei dati prodotti.

  • Introduzione alla programmazione e all’algoritmica
  • Introduzione al linguaggio di programmazione Fortran per calcoli intensivi:
    • Descrizione dei concetti principali dei linguaggi di programmazione: tipi di dati, strutture di controllo, procedure, tabelle, operazioni di input/output
    • Introduzione alla programmazione parallela
    • Ottimizzazione di codice
  • Introduzione al linguaggio interpretato Python
    • Introduzione allo sviluppo prototipico nell’ambito di calcoli ad alta prestazione con la libreria SciPy
    • Introduzione alla programmazione orientata agli oggetti
    • Estrazione e visualizzazione di dati con la libreria Matplotlib

Concetti chiave di ciascun linguaggio verrano illustrati attraverso la realizzazione progressiva di un programma completo durante il corso.

Il corso contiene una parte didattica di 44 ore (2 lezioni di 2 ore ciascuna per settimana) e una parte di esercizi in laboratorio di 16 ore (2 sessione di 4 ore per ciascun linguaggio: una di introduzione, una su concetti più avanzati).

 

Obiettivi formativi:

  • Comprensione degli aspetti pratici nello sviluppo di software per calcoli ad alta prestazione
  • Conoscenza dei linguaggi di programmazione Fortran e Python
  • Conoscenza di base di problemi algoritmici: dalla teoria all'implementazione