Calcolo Numerico (C.d.S. Informatica (L)) A.A.2018/19
(1^ semestre, 2^ anno)
Esame: orale
Crediti: 6
Docente: Giulio Casciola (modulo 1)
Docente: Elena Loli Piccolomini (modulo 2)
Avviso
E' disponibile la dispensa del Modulo 1 del corso (vedi Documenti)
Scopo
Dare i fondamenti del calcolo numerico.
Contenuto
Numeri finiti e aritmetica floating point;
funzioni polinomiali; interpolazione e approssimazione minimi quadrati;
integrazione numerica; equazioni non lineari;
sistemi lineari: metodi diretti e metodi iterativi; calcolo degli
autovalori e autovettori di una matrice;
Il corso prevede un'attività di laboratorio (facoltativa)
in cui si utilizza il sistema MATLAB/Octave.
Testi Consigliati
- R.Bevilacqua, D.Bini, M.Capovani, O.Menchi, Metodi numerici,
Zanichelli (1992)
- J.Stoer, R.Bulirisch, Introduction to Numerical Analisys,
(second edition) Springer Verlag (1997)
Altri testi in italiano
- V.Comincioli, Analisi Numerica Metodi Modelli Applicazioni,
McGraw-Hill Libri Italia, (1995)
- I.Galligani, Elementi di Analisi Numerica, Calderini (1986)
- F.Fontanella, A.Pasquali, Calcolo Numerico, Vol.I e II,
Pitagora Editrice Bologna (1985)
Orario delle Lezioni
- Le lezioni inizieranno martedi' 25 settembre 2018 con il seguente orario:
Martedi' ore 13:30-15:30 Aula Ercolani 1
Venerdi' ore 8:30-11:30 Aula Ercolani 1
Lezioni e Argomenti trattati
- Ma.25/09/18, ore 13.30-15.30: Aula E1
Slide: Introduzione e informazioni sul corso.
(file .pdf)
Numeri Finiti
Richiami sui numeri reali e rappresentazione in base.
Insieme F dei numeri finiti: base, numero cifre della mantissa, range degli esponenti.
Esercizio 1:
determinare e posizionare sull'asse reale gli elementi di F(2,3,-1,2).
- Ve.28/09/18, ore 8.30-11.30: Aula E1
Svolto l'Esercizio 1 in aula.
Approssimazione di un numero reale nell'insieme dei numeri finiti:
rappresentazione dell'esponente (casi di underflow e overflow),
approssimazione della mantissa per troncamento e arrotondamento.
Rappresentazione in memoria dei numeri Finiti (segno, esponente e mantissa). Esempi in base 10.
ANSI/IEEE Std 754-1985: formati Basic-Single e Basic-Double e corrispondenti insiemi dei numeri finiti; NaN, infinity, ecc..
Esercitati su conversione e rappresentazione in memoria.
Esempio: dato F(2,5,-3,4) per arritondamento (8 bit: 1 segno, 3 esponente, 4 mantissa),
rappresentare in memoria il numero reale in base 10, -13.9; fare poi il procedimento
opposto per produrre in output quanto memorizzato.
Esercizio 2:
Ripetere l'esempio, ma per troncamento.
Esercizio 3:
Ripetere l'esercizio con F(2,4,-7,8) sia per troncamento che arrotondamento
(8 bit: 1 segno, 4 esponente, 3 mantissa) per +13.9.
Definizione di errore assoluto e relativo.
Teorema di maggiorazione dell'errore assoluto, definizione di unita' di arrotondamento (U),
teorema di maggiorazione dell'errore relativo.
- Ma.2/10/18, ore 13.30-15.30: Aula E1
Ripreso l'esercizio 2, calcolato U e confrontato con gli errori relativi prima ottenuti;
Calcolo di U nei casi basic/single e basic/double.
Aritmetica floating point: precisione di calcolo fra numeri finiti;
in aritmetica finita non valgono le principali proprieta' sulle operazioni aritmetiche;
Analisi degli errori in avanti e all'indietro.
Corollario sulla rappresentazione di fl(a);
Analisi in avanti per la moltiplicazione di due numeri reali,
analisi in avanti per l'addizione di due reali, cancellazione numerica.
Esempio sulla cancellazione numerica.
Condizionamento di un problema e stabilita' di un algoritmo per problemi ben posti.
- Ve.5/10/18, ore 8.30-11.30: Aula E1
Errore Inerente, Algoritmico e Totale. Teorema su E_TOT, E_IN ed E_ALG.
Funzioni non razionali ed Errore Analitico.
Stima di E_IN nel caso di problemi del tipo f:R->R e mumero di condizione;
esempio grafico su f(x)=sqrt(1-x).
Generalizzazione per problemi f:R^n->R;
esempi: f(x1,x2)=x1*x2 e f(x1,x2)= x1+x2.
Attivita' di LABoratorio
LAB1: introduzione all'ambiente e al linguaggio Matlab
Slide: MATLAB: ambiente e linguaggio (in Documenti)
Eserc.1: visionato testo Esercitazione 1 (vedi LAB1_cn1718.pdf in Documenti))
Matlab: vedi archivio script LAB1_cn1718.tgz (in Dowload Software e Manuali)
- Lu.8/10/18, ore 8.30-10.30: Aula E1
Attivita' di LABoratorio (Numeri Finiti)
LAB1: svolta l'Esercitazione 1 in aula/LAB insieme agli studenti. (vedi LAB1_cn1718.pdf, archivio script LAB1_cn1718.tgz e LAB1_numerifiniti_1819.pdf).
- Ma.9/10/18, ore 13.30-15.30: Aula E1
Esempi da guardare sulle dispense: f(x1,x2)=sqrt(x_1+x_2) - sqrt(x_1) e determinazione delle radici di un'eq. di secondo grado.
Funzioni Polinomiali
Richiami sulle funzioni polinomiali.
Valutazione numerica di un polinomio: metodo della definizione, metodo di Horner, metodo di Ruffini
e loro complessita' computazionale. Valutazione numerica della derivata di un polinomio; esempi numerici.
Cenno alla stabilita' dell'algoritmo di Ruffini/Horner.
E_IN nella valutazione polinomiale: esempio numerico. Stima di E_IN nel caso dell'esempio numerico.
- Ve.12/10/18, ore 8.30-11.30: Aula E1
Generalizzazione della stima di E_IN per valutazione di polinomi di grado n in una generica base.
Componente di E_IN che dipende dalla rappresentazione e componente
che non dipende dalla rappresentazione.
Base dei polinomi di Bernstein su un intervallo; proprieta' dei polinomi base di Bernstein.
Polinomi e invarianza per traslazione e scala (cambio di variabile).
Cambio di variabile per polinomi di Bernstein nell' intervallo [0,1].
Ripreso esempio numerico nella base di Bernstein.
Definizione ricorrente dei polinomi base di Bernstein, valutazione numerica dei polinomi base,
ALG1 basato su valutazione pol. di Bernstein con schema ricorrente; complessita' computazionale, stabilita'.
- Ma.16/10/18, ore 13.30-15.30: Aula E1
Non ci sara' lezione
- Ve.19/10/18, ore 8.30-11.30: Aula E1
ALG2 di de Casteljau; complessita' computazionale.
Suddivisione di polinomi su un intervallo via algoritmo di de Casteljau.
Formula ricorrente per la derivata dei polinomi base di Bernstein.
Espressione della derivata nella base di Bernstein e valutazione numerica
applicando de Casteljau.
Primitiva e integrale di un polinomio nella base di Bernstein.
Esercizio 4: Determinare l'integrale fra 0 ed 1 di un polinomio base di Bernstein B_i,n(x).
Applicazione dei polinomi nella base di Bernstein al disegno al calcolatore.
Slide: Le Curve di Bezier nel disegno al calcolatore (in Documenti)
Matlab: vedi archivio script matlab_bezier_curve.tgz (in Download Software e Manuali).
- Ma.23/10/18, ore 13.30-15.30: Aula E1
Interpolazione con Funzioni Polinomiali
Introduzione al problema dell'interpolazione polinomiale di dati e funzioni.
Esistenza e unicita' del polinomio interpolante (sistema lineare e matrice di Vandermonde).
Esempio.
Interpolazione polinomiale nella base di Bernstein: soluzione via sistema lineare; condizionamento del problema e costo computazionale. Apllicazione: interpolazione di punti con curve di Bézier.
Interpolazione polinomiale nella base di Newton.
- Ve.26/10/18, ore 8.30-11.30: Aula E1
Esempi numerici. Valutazione nella base di Newton.
Interpolazione adattiva: aggiunta di un punto di interpolazione alla volta.
Interpolazione nella forma di Lagrange; polinomi elementari di Lagrange.
Costo computazionale. Valutazione nella base di Lagrange: I e II forma di Lagrange e complessita' computazionale.
Interpolazione di funzione: errore di interpolazione. Espressione dell'errore di interpolazione ed
esempio su e^x. Esempio test di Runge; distribuzione secondo gli zeri di Chebyshev di grado n+1 e convergenza.
Funzioni polinomiali a tratti vs funzioni polinomiali (meno regolari ma piu' flessibili).
- Ma.30/10/18, ore 13.30-15.30: Aula E1
non ci sara' lezione di CN, ma di Ottimizzazione.
- Ve.2/11/18, ore 11.30-13:30: Aula E1
Interpolazione polinomiale tratti. Interpolazione polinomiale a tratti cubica C1 di Hermite;
convergenza e bound. Funzioni Spline.
Attivita' di LABoratorio (Polinomi e polinomi a tratti di interpolazione).
LAB2: svolta l'Esercitazione 2 in aula/LAB (vedi LAB2_cn1819.pdf, archivio script LAB2_cn1819.tgz).
Documenti
Download Software e Manuali
Sitografia
Modalita' d'Esame
Torna alla
home page di Giulio Casciola