NUMERICAL ALGORITHMS

Anno accademico
2025/2026 Programmi anni precedenti
Titolo corso in inglese
NUMERICAL ALGORITHMS
Codice insegnamento
CT0582 (AF:608569 AR:256642)
Lingua di insegnamento
Inglese
Modalità
In presenza
Crediti formativi universitari
6
Livello laurea
Laurea
Settore scientifico disciplinare
MAT/08
Periodo
II Semestre
Anno corso
3
Sede
VENEZIA
Il corso di Numerical Algorithms si inserisce nel percorso formativo del corso di laurea in Informatica come un insegnamento fondamentale per l'acquisizione di competenze nel calcolo scientifico e nella risoluzione numerica di problemi matematici. Il corso fornisce gli strumenti teorici e pratici per affrontare problemi computazionalmente complessi che non ammettono soluzioni analitiche o che richiedono approssimazioni efficienti e stabili per essere risolti al calcolatore.

L'insegnamento ha l’obiettivo di introdurre gli studenti ai principali metodi numerici per l’analisi e la soluzione di problemi matematici ricorrenti in informatica, ingegneria e scienze applicate. Particolare enfasi è posta sia sull’analisi concettuale degli algoritmi (in termini di accuratezza, stabilità e complessità computazionale), sia sulla loro implementazione pratica in un ambiente di calcolo scientifico (Python), al fine di sviluppare competenze operative e un atteggiamento critico nell’uso di strumenti numerici.

Alla fine del corso, lo studente sarà in grado di scegliere e applicare in modo consapevole algoritmi numerici adeguati a diversi tipi di problemi, valutandone limiti, prestazioni e affidabilità. Il corso mira inoltre a rafforzare le capacità di modellazione numerica e a gettare le basi per studi più avanzati nell’ambito del calcolo scientifico e della simulazione numerica
La frequenza e la partecipazione alle attività formative proposte nel corso e lo studio individuale consentiranno agli studenti di:

1. Conoscenza e comprensione
-- conoscenza e comprensione dei concetti base del Calcolo numerico
-- conoscenza e comprensione dei principali algoritmi numerici per la risoluzione di problemi matematici.

2. Capacità di applicare conoscenza e comprensione
-- capacita di implementare al calcolatore alcuni algoritmi numerici
-- capacità di stabilire le condizioni di convergenza di algoritmi numerici
-- capacità di integrare numericamente equazioni differenziali ordinarie
-- capacità di approssimare la soluzione di equazioni non lineari e di sistemi lineari.

3. Capacità di giudizio
-- interpretare i risultati di un programma numerico.
Lo studente deve conoscere i fondamenti dell'Algebra Lineare e del Calcolo in una e più variabili reali.
- Discretizzazione e approssimazione: algoritmi di approssimazione e rappresentazione dei numeri reali (sistema floating point). Setup di un ambiente Python per il calcolo scientifico.
- Metodi diretti per la soluzione numerica di sistemi lineari.
- Soluzione numerica di equazioni non lineari: metodi di punto fisso, di Newton, e della secante. Estensione a sistemi di equazioni nonlineari. Applicazione all'ottimizzazione non vincolata.
- Approssimazione e interpolazione: interpolazione polinomiale e spline, approssimazione polinomiale ai minimi quadrati.
- Integrazione numerica: metodi di Newton-Cotes semplici e composti, metodo di Gauss.
- Soluzione numerica di equazioni differenziali ordinarie: metodi di Eulero, di Heun e Crank-Nicolson, e metodo di Runge-Kutta.
- Metodi iterativi per la soluzione numerica di sistemi lineari: metodi di matrix-splitting e metodi di tipo gradiente.
Le note del corso verranno distribuite tramite la pagina Moodle del corso (inclusi ulteriori riferimenti bibliografici).
La verifica dell'apprendimento avviene attraverso una prova orale, che si basa sulla discussione di quattro esercitazioni che verranno assegnate durante il corso.

Le quattro esercitazioni sono organizzate come segue:
- La soluzione di ciascuna esercitazione (cioè l’implementazione della soluzione e un report che discute i risultati ottenuti) va consegnata dallo studente tramite la piattaforma Moodle entro la data dell’esame orale.
- Per sostenere l'orale bisogna aver consegnato le soluzioni di tutte le esercitazioni.
- Ciascuna esercitazione riguarda un tema visto in classe, il confronto di diversi metodi, e il loro utilizzo per la soluzione di un problema applicativo.
- Le esercitazioni riguarderanno i temi seguenti:
a) Equazioni non lineari
b) Approssimazione e interpolazione
c) Equazioni differenziali ordinarie.
d) Soluzione di sistemi lineari


orale
Durante la prova orale, di circa 30 minuti, verranno valutate:
- La correttezza delle soluzioni delle esercitazioni e la qualità dei report consegnati (40% del voto);
- La conoscenza degli algoritmi implementati nella soluzione delle esercitazioni, le scelte fatte rispetto alla scelta di parametri e varianti degli algoritmi stessi, e la capacità di saperne discutere i risultati (30% del voto);
- La conoscenza degli argomenti svolti durante il corso e la capacità di saperli esporre in modo formale (30% del voto).
Lezioni frontali, esercizi teorici ed esercitazioni al calcolatore. Uso della piattaforma Moodle per proporre esercizi e materiali integrativi.
Lingua di insegnamento: Inglese
Programma definitivo.
Data ultima modifica programma: 24/06/2025