METODI NUMERICI PER L'INFORMATICA

Informatica METODI NUMERICI PER L'INFORMATICA

0512100050
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA
INFORMATICA
2017/2018

ANNO CORSO 3
ANNO ORDINAMENTO 2015
SECONDO SEMESTRE
CFUOREATTIVITÀ
652LEZIONE
Obiettivi
CONOSCENZA E CAPACITÀ DI COMPRENSIONE
L’INSEGNAMENTO, È FINALIZZATO A FAR ACQUISIRE AGLI STUDENTI LA CONOSCENZA TEORICA DI BASE SUI PRINCIPALI METODI NUMERICI UTILI ALLO SVILUPPO DI SOFTWARE MATEMATICO PER LA RISOLUZIONE DI PROBLEMI DI CALCOLO SCIENTIFICO DI INTERESSE NELL’INFORMATICA. IN PARTICOLARE:
•CALCOLO NUMERICO SU MATRICI: ARITMETICA FLOATING-POINT, RISOLUZIONE DI SISTEMI LINEARI, TRATTAMENTO NUMERICO SEQUENZIALE E PARALLELO DI MATRICI SPARSE E DI GRANDI DIMENSIONI CON APPLICAZIONI,
•CALCOLO DI AUTOVALORI E AUTOVETTORI, MATEMATICA DEL WEB: IL PROBLEMA DI GOOGLE E PAGERANK,
•APPROSSIMAZIONE DI DATI E FUNZIONI CON APPLICAZIONI ALLA GRAFICA COMPUTERIZZATA, TRASFORMAZIONI 2D E 3D BASATE SU AFFINITA’: ROTAZIONE, RIFLESSIONE, SCALING, SHEARING, TRASLAZIONI.
•CALCOLO NUMERICO PARALLELO: IL PARADIGMA DELLO SCAMBIO DI MESSAGGI. LO STANDARD MPI (MESSAGE PASSING INTERFACE). CALCOLO NUMERICO MATRICIALE SU GRAPHICS PROCESSING UNITS (GPUS).
•INTRODUZIONE A PHYTON: SVILUPPO DI LIBRERIA DI SOFTWARE MATEMATICO.

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE
L’INSEGNAMENTO HA COME OBIETTIVO RENDERE LO STUDENTE CAPACE DI RISOLVERE PROBLEMI DI CALCOLO SCIENTIFICO PRESENTI NELLE APPLICAZIONI INFORMATICHE, MEDIANTE LO SVILUPPO E L’UTILIZZO DI SOFTWARE MATEMATICO NEI PIU’ DIFFUSI AMBIENTI DI CALCOLO E LINGUAGGI DI PROGRAMMAZIONE.
Prerequisiti
ELEMENTI DI MATEMATICA DISCRETA E ALGEBRA LINEARE: SPAZIO DELLE MATRICI SU CAMPO REALE. ELEMENTI DI ANALISI MATEMATICA: FUNZIONI CONTINUE E PRINCIPALI TEOREMI, CONCETTO DI DERIVATA.
Contenuti
•NOZIONI DI ANALISI DEGLI ERRORI. ERRORI E LORO PROPAGAZIONE.
•SISTEMI DI EQUAZIONI LINEARI. METODI DIRETTI: METODO DI GAUSS NAIVE E CON PIVOTING.
•AUTOVALORI DI MATRICI. METODI ITERATIVI: METODO POTENZE E POTENZE INVERSE. METODI BASATI SU TRASFORMAZIONI PER SIMILITUDINE: METODO QR. MATEMATICA DEL WEB: IL PROBLEMA DI GOOGLE E PAGERANK.
•APPROSSIMAZIONE. INTERPOLAZIONE POLINOMIALE: ERRORE, CONVERGENZA. INTERPOLAZIONE CON FUNZIONI POLINOMIALI A TRATTI E SPLINE. APPROSSIMAZIONE NEL SENSO DEI MINIMI QUADRATI. APPLICAZIONI ALLA GRAFICA COMPUTERIZZATA, TRASFORMAZIONI 2D E 3D BASATE SU AFFINITÀ: ROTAZIONE, RIFLESSIONE, SCALING, SHEARING, TRASLAZIONI.
•CALCOLO NUMERICO PARALLELO: IL PARADIGMA DELLO SCAMBIO DI MESSAGGI. LO STANDARD MPI (MESSAGE PASSING INTERFACE). CALCOLO NUMERICO MATRICIALE SU GRAPHICS PROCESSING UNITS (GPUS).
•AMBIENTE DI CALCOLO MATLAB, PYTHON. LINGUAGGIO C CON PRIMITIVE DI MPI E CUDA PER IL CALCOLO PARALLELO.
•SVILUPPO DI ELEMENTI DI SOFTWARE MATEMATICO RELATIVI AI PRINCIPALI ALGORITMI TRATTATI.
Metodi Didattici
4 CFU, 32 ORE, PER
-LEZIONI FRONTALI
2 CFU, 20 ORE PER
-LABORATORIO
-SVILUPPO DI ELEMENTI DI SOFTWARE MATEMATICO

OBIETTIVO DELLE LEZIONI IN LABORATORIO È RICHIAMARE L’ATTENZIONE DEGLI STUDENTI SUI PRINCIPI SU CUI SI BASA LO SVILUPPO DI SOFTWARE MATEMATICO EFFICIENTE, CON RIFERIMENTO ALLA STIMA DELL'ATTENDIBILITÀ DEI RISULTATI OTTENUTI, ALLA VALUTAZIONE DELLE PRESTAZIONI DEL SOFTWARE SVILUPPATO O UTILIZZATO, AL CONFRONTO TRA LE PRESTAZIONI DI CODICI BASATI SU METODI NUMERICI DIFFERENTI, ALLA SCRITTURA DELLA DOCUMENTAZIONE INTERNA ED ESTERNA DEL SOFTWARE SVILUPPATO.
Verifica dell'apprendimento
•PROVA PRATICA: TESTING E VALUTAZIONE DEL SOFTWARE MATEMATICO SVILUPPATO O UTILIZZATO NELLE LEZIONI DI LABORATORIO PER VERIFICARE LE CAPACITÀ DELLO STUDENTE DI VALUTARE ATTENDIBILITÀ, ACCURATEZZA ED EFFICIENZA, E DI CONFRONTARE LE PRESTAZIONI DI CODICI DIVERSI.
•COLLOQUIO ORALE SUI CONTENUTI TEORICI PER VERIFICARE LA CONOSCENZA DELLE NOZIONI DI BASE DEI METODI NUMERICI E I PRINCIPI PER LA RISOLUZIONE DI SEMPLICI PROBLEMI DI CALCOLO SCIENTIFICO.
•PER GLI STUDENTI CHE FREQUENTANO IL CORSO SONO PREVISTE DUE PROVE IN ITINERE, SECONDO LE STESSE MODALITÀ DELL’ESAME.
Testi
1A. G.MONEGATO, FONDAMENTI DI CALCOLO NUMERICO, CLUT
OPPURE
1B. A. QUARTERONI, F. SALERI, ESERCIZI E PROBLEMI RISOLTI CON MATLAB E OCTAVE, SPRINGER.
2.ALMERICO MURLI, LEZIONI DI CALCOLO PARALLELO. LIGUORI EDITORE SRL, 2006.
3.LES PIEGL, WAYNE TILLER. THE NURBS BOOK. SPRINGER SCIENCE & BUSINESS MEDIA, 2012.

TESTI DI APPROFONDIMENTO (MANUALI) PER LO SVILUPPO DI SOFTWARE
4.CLEVE MOLER, MATLAB USERS' GUIDE. UNIVERSITY OF NEW MEXICO, 1982,
HTTPS://CCRMA.STANFORD.EDU/~JOS/MATDOC/MATDOC.PDF
5.GUIDO VAN ROSSUM, IL TUTORIAL DI PYTHON,
HTTP://DOCS.PYTHON.IT/HTML/TUT/TUT.HTML
6.MPI: A MESSAGE-PASSING INTERFACE STANDARD VERSION 3.0, 2012, HTTP://MPI-FORUM.ORG/DOCS/MPI-3.0/MPI30-REPORT.PDF
7.CUDA PROGRAMMING GUIDE 1.0
HTTP://DEVELOPER.DOWNLOAD.NVIDIA.COM/COMPUTE/CUDA/1.0/ NVIDIA_CUDA_PROGRAMMING_GUIDE_1.0.PDF
Altre Informazioni
•ANCARDONE@UNISA.IT
•HTTP://ELEARNING.INFORMATICA.UNISA.IT/EL-PLATFORM/
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2019-05-14]