Vai al contenuto

Videocorso Fortran moderno CGFA

Il linguaggio del calcolo scientifico, scritto nel modo moderno: Fortran 2018 e 2023 con gfortran

  • Partenza: Da zero
  • 14 ore con gli esercizi
  • 10 lezioni in 3 livelli
  • 2 lezioni gratis

A chi serve

Studenti di ingegneria, fisica e matematica, ricercatori, tecnici che devono leggere o riscrivere vecchi programmi di calcolo, e chiunque voglia un linguaggio veloce per i numeri

Cosa serve per iniziare

  • Un computer Windows, Mac o Linux
  • Nessuna esperienza di programmazione: si parte dal primo programma
  • Matematica di scuola superiore (basta saper leggere una formula)

Cosa installare

gfortran (compilatore GNU Fortran, versione 14 o successiva)Gratuito. Su Linux: sudo apt install gfortran. Su Mac: brew install gcc. Su Windows: installa MSYS2 (msys2.org) e poi, dal terminale MSYS2, pacman -S mingw-w64-ucrt-x86_64-gcc-fortran
Visual Studio Code con l'estensione Modern FortranEditor gratuito da code.visualstudio.com; l'estensione "Modern Fortran" dà colori, suggerimenti e controllo degli errori
fpm (Fortran Package Manager)Gratuito, da fpm.fortran-lang.org: crea, compila e prova i progetti con un solo comando. Lo useremo nell'ultima lezione
Compilatore online (facoltativo)Se non vuoi installare nulla, i siti Compiler Explorer e Online GDB permettono di provare piccoli programmi Fortran dal browser

A cosa ti serve

  • Calcolo scientifico e simulazioni: meteorologia, clima, fluidodinamica, fisica
  • Ingegneria: strutture, aerodinamica, energia, progettazione di impianti
  • Calcolo ad alte prestazioni (supercomputer): Fortran è ancora tra i linguaggi più usati
  • Manutenzione e modernizzazione di codice storico in università, enti di ricerca e industria
  • Ricerca e dottorati in tutte le scienze che usano modelli numerici

Programma del corso

10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.

Progetto finale: Statistiche delle temperature delle città italiane

Un programma completo che legge da un file le temperature medie mensili di alcune città italiane, calcola media, minimo e massimo per ciascuna e scrive un rapporto ordinato in un nuovo file.

I passi

  1. Crea il file temperature.txt: ogni riga ha il nome della città e 12 valori (uno per mese), separati da spazi.
  2. Definisci un tipo derivato citta con nome e un array di 12 real(dp).
  3. Scrivi in un modulo le funzioni pure media_annua, minimo e massimo che lavorano su un array.
  4. Leggi il file con un ciclo e iostat, riempiendo un array allocatable di città.
  5. Scrivi rapporto.txt con una riga per città, usando un formato ben allineato.
  6. Compila con -Wall -Wextra -fcheck=all, correggi gli avvisi e poi prova -O2.
  7. Estensione: usa un ciclo con OpenMP o do concurrent per elaborare tutte le città e metti il progetto sotto fpm.

Esame e attestato

Alla fine del corso fai l'esame: 15 domande, serve il 75% di risposte giuste. Superato l'esame ottieni l'attestato stampabile con nome, ore, punteggio e un codice di controllo che chiunque può verificare.

Vai all'esame

Glossario di Fortran

Compilatore
Programma che traduce il codice scritto da te in un eseguibile. Per Fortran qui usiamo gfortran.
implicit none
Riga che obbliga a dichiarare tutte le variabili: evita errori di battitura.
Array
Elenco di valori dello stesso tipo con un solo nome. Il primo elemento ha di solito indice 1.
Subroutine
Procedura che esegue un compito e si chiama con call. Non restituisce un valore.
Function
Procedura che restituisce un valore e si usa dentro un'espressione.
Modulo
Contenitore di procedure, tipi e costanti che altri programmi richiamano con use.
intent
Dichiarazione del ruolo di un argomento: in (solo lettura), out (prodotto), inout (letto e modificato).
Tipo derivato
Tipo di dato definito da te, formato da più campi (type ... end type).
allocatable
Array la cui dimensione si decide durante l'esecuzione con allocate.
kind
Numero che sceglie la precisione di un tipo, per esempio real64 per la precisione doppia.
OpenMP
Sistema di direttive per far lavorare più core dello stesso computer sul medesimo programma.
fpm
Fortran Package Manager: strumento per creare, compilare e provare progetti Fortran.

Le prime 2 lezioni sono gratis

Per il corso completo, scuole e aziende: chiedi le condizioni.