METODI NUMERICI CON ELEMENTI DI PROGRAMMAZIONE

Obiettivi formativi

L’obiettivo del corso è far acquisire allo studente alcune tecniche fondamentali della programmazione dei calcolatori elettronici, attraverso il linguaggio di programmazione C++, le tecniche fondamentali per il calcolo numerico e l’uso della programmazione per risolvere problemi numerici.I risultati di apprendimento riguardano la capacità di analizzare e formulare in modo algoritmico soluzioni di problemi ed implementarle mediante programmi in C++ e Fortran. Tali capacità vengono particolarmente sviluppate con riferimento a problemi numerici, per i quali si richiede l'applicazione di un insieme di metodi risolutivi, determinando le condizioni di applicabilità ed i criteri di convergenza.

Canale 1
VITTORIA BRUNI Scheda docente

Programmi - Frequenza - Esami

Programma
1. Concetti di condizionamento di un problema e stabilità di un algoritmo 2. Metodi iterativi per la soluzione di equazioni non lineari e di sistemi di equazioni non lineari: metodo delle bisezioni, metodo delle iterazioni successive, metodo di Newton e delle secanti; analisi della convergenza dei metodi; criteri di arresto 3. Algebra lineare numerica: soluzione di sistemi lineari con metodi diretti e applicazioni; costruzione di metodi iterativi, metodi di Jacobi, Gauss-Seidel e SOR e loro convergenza 4. Approssimazione polinomiale di dati e funzioni: approssimazione ai minimi quadrati nel caso lineare; interpolazione con polinomi algebrici, base dei polinomi di Lagrange, polinomio di Newton alle differenze divise e finite, convergenza del polinomio interpolatore. Splines 5. Integrazione numerica: formule di Newton-Cotes elementari del trapezio e di Cavalieri-Simpson; formule generalizzate dei trapezi e delle parabole; convergenza delle formule generalizzate 6. Metodi numerici per la soluzione di equazioni differenziali ai valori iniziali: metodi di Eulero e di Runge-Kutta e loro convergenza; metodi impliciti. 7. Metodi alle differenze finite per la soluzione di problemi differenziali ai limiti: equazioni differenziali ordinarie lineari e non lineari 8. Nozioni di base della programmazione 9 .Introduzione alla programmazione in Matlab: tipi di dato primitivi, variabili, espressioni e assegnazioni, array e matrici, funzioni e script; istruzioni condizionali e espressioni booleane, cicli 10. Implementazione dei metodi studiati (Matlab)
Prerequisiti
Conoscenze di base di analisi matematica, geometria e algebra lineare acquisite nei corsi di Analisi Matematica e Geometria
Testi di riferimento
L. Gori, Calcolo Numerico, Ed. Kappa, 2006 L. Gori, L. Gori, M.L. Lo Cascio, F. Pitolli, Esercizi di Calcolo Numerico, Ed. Kappa, 2007 Materiale integrativo disponibile sul sito web del corso sulla piattaforma Moodle
Modalità insegnamento
L’insegnamento prevede sia lezioni tradizionali in aula, in cui il docente illustrea tutti gli argomenti contenuti nel programma, che esercitazioni al laboratorio informatico, in cui il docente spiega gli elementi base di programmazione in Matlab e illustra come implementare i metodi numerici. Durante il corso il docente fornisce anche la soluzione guidata di alcuni esercizi esemplificativi di calcolo numerico e di programmazione assegnando agli studenti ulteriori esercizi da risolvere in autonomia.
Frequenza
La frequenza del corso non è obbligatoria
Modalità di esame
La prova scritta consiste in 5 esercizi di cui 2 da svolgere al calcolatore. La durata della prova è di 3 ore. Ogni esercizio è valutato in trentesimi. Il voto finale della prova scritta è calcolato come media pesata delle valutazioni di ogni singolo esercizio con pesi (2/9, 2/9, 1/9, 2/9, 2/9). E' possibile sostenere la prova orale se si raggiunge un punteggio superiore o uguale a 16/30 alla prova scritta. Il materiale utilizzabile durante la prova consiste dei soli formulari La prova orale consiste in una discussione del compito scritto ed eventuali domande al fine di completare la verifica delle conoscenze acquisite relative agli argomenti trattati e della capacità di analizzare un problema, selezionare il metodo numerico più adatto alla soluzione dello stesso, analizzare e interpretare i risultati. La prova orale è valutata in trentesimi con i seguenti criteri: conoscenza minima (valutazione tra 18 e 20); conoscenza media (21-23); capacità di applicare la conoscenza in maniera sufficiente (24-25); buona capacità di applicare la conoscenza con sufficienti capacità di comunicazione e senso critico (26-27); capacità di applicare la conoscenza in maniera eccellente con buone capacità di comunicazione e senso critico (28-30 con lode). Il voto finale è calcolato come la media aritmetica dei punteggi assegnati alla prova scritta e a quella orale.
Bibliografia
"Modellistica numerica per problemi differenziali" di Alfio Quarteroni, Springer Verlag
Modalità di erogazione
L’insegnamento prevede sia lezioni tradizionali in aula, in cui il docente illustrea tutti gli argomenti contenuti nel programma, che esercitazioni al laboratorio informatico, in cui il docente spiega gli elementi base di programmazione in Matlab e illustra come implementare i metodi numerici. Durante il corso il docente fornisce anche la soluzione guidata di alcuni esercizi esemplificativi di calcolo numerico e di programmazione assegnando agli studenti ulteriori esercizi da risolvere in autonomia.
  • Codice insegnamento1037941
  • Anno accademico2024/2025
  • CorsoIngegneria Aerospaziale
  • CurriculumIngegneria Aerospaziale (percorso valido anche ai fini del conseguimento del doppio titolo italo-venezuelano)
  • Anno3º anno
  • Semestre1º semestre
  • SSDMAT/08
  • CFU9
  • Ambito disciplinareMatematica, informatica e statistica