Corso di Metodi Numerici avanzati
Programmi svolti durante il corso
- Metodi Spettrali, equazione di Burgers con trasformate di Fourier:
Programma per l'integrazione dell'equazione di Burgers dissipativa (eq: du/dt + u*du/dx = nu * d^2 u/dx^2): burgers.tar.gz.
L'archivio .tar.gz contiene i seguenti programmi:
- Programma burgers.f90: main program per l'integrazione dell'equazione di Burgers;
- Modulo fourier.f90: modulo che contiene le funzioni per effettuare le trasformate di Fourier;
- Modulo deriv.f90: modulo contenente alcune subroutines che calcolano le derivate prime e seconde delle funzioni;
Nota che per vedere l'output con gnuplot occorre eseguire il programma col comando: ./burgers.x | gnuplot
- Metodi Spettrali, equazione parabolica con Polinomi di Chebyshev:
Programma per l'integrazione di una equazione parabolica (eq: du/dt = nu * d^2 u/dx^2): par_cheb.tar.gz.
L'archivio .tar.gz contiene i seguenti programmi:
- Programma parabolica.f90: main program per l'integrazione dell'equazione parabolica;
- Modulo chebfft.f90: modulo che contiene le funzioni per effettuare le trasformate di Chebyshev;
- Modulo deriv.f90: modulo contenente alcune subroutines che calcolano le derivate prime e seconde delle funzioni;
- File input.dat: esempio di file di input dei parametri.
Nota che per vedere l'output con gnuplot occorre eseguire il programma col comando: ./parabolica.x | gnuplot
- Metodi Monte Carlo (distribuzioni):
Programmi per la generazione di numeri casuali secondo una data distribuzione e per la costruzione degli istogrammi dei dati: distribuzioni.tar.gz.
L'archivio .tar.gz contiene i seguenti programmi:
- Programma random.f90: genera un insieme di numeri casuali distribuiti in maniera uniforme, esponenziale, o gaussiana;
- Programma statistica.f90: legge i dati generati da random.f90 e costruisce un istogramma normalizzato su un dato numero di canali;
- Modulo stat.f90: modulo contenente alcune subroutines che calcolano la media, deviazione standard e istogramma di un insieme di dati.
- Metodi Monte Carlo (integrali):
Programmi per l calcolo di integrali con la tecnica Monte Carlo: monte_carlo.tar.gz.
L'archivio tar.gz contiene i seguenti programmi:
- Programma Monte_Carlo.f90: genera un insieme di numeri casuali distribuiti in maniera uniforme, e calcola l'integrale della funzione: x*exp(-(x^2+y^2+z^2))/(x^2+y^2+z^2) sul primo ottante di un guscio sferico di raggio R=1/2;
- Programma Trapezi.f90: esegue lo stesso calcolo di Monte_Carlo.f90, ma utilizzando invece la regola dei trapezi lungo ciascuna direzione dell'integrale, invece di una tecnica Monte Carlo.
Per utilizzare i programmi:
Aprire un terminale;
Creare una directory specifica per ogni archivio .tar.gz che si desidera utilizzare col comando: mkdir nome_dir;
Scaricare l'archivio tar.gz dalla pagina corrente salvandolo nella directory nome_dir;
Decomprimere l'archivio .tar.gz col comando: tar zxvf *.tar.gz;
Eseguire il comando: make per compilare tutti i programmi nell'archivio.
Esempi di tracce d'esame
Ritorna alla pagina precedente