Calcolo Numerico 1(Milano) - a.a. 2019/2020


 

Diario delle esercitazioni in aula e in laboratorio- Materiale didattico

Premessa all'utilizzo della dispensa (a cura di E.Z.)







ARGOMENTO DELLA LEZIONE MATERIALE DIDATTICO
01 10 2018
EX - Chisini
9.30-10.30
Introduzione al corso. Problema fisico, matematico, numerico. Classificazione degli errori.    
01 10 2019
LAB - 309  
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB: menu, layout, plot, app, variables, command history.
Istruzioni: help, demo, diary, ls, doc, clc, pwd, lookfor, exist.
Variables: ans, pi, i, j, eps, who, whos, clear, format short/long.
Operazioni elementari: +,-,*,/,\,^.
Calcolo simbolico: syms.
Funzioni: elfun (trigonometriche, abs, exp, log, real, imag, fix, floor, ceil, round, mod, rem, sign, sqrt,nthroot).
Operazioni e funzioni con numeri complessi: function real, imag, abs, sign, atan2.
Vettori: assegnazione, riga, colonna, trasposto, componenti, [ ], length, size, zeros, ones, linspace, dot, cross, concatenazione, componente "end", "end-1", sum, prod, max, min, sort, diff.
Lab 1    
02 10 2019
EX - G10 10.30-12.30 Problema ben posto, ben condizionato. Concetti di stabilità e convergenza.
Numero di condizionamento del calcolo di y=f(x). Esercizi: n.2, 5/7/2018; n.1, 22/11/2012; n.1, 18/2/2016. Il numero di condizionamento del problema del calcolo delle radici di un'equazione di secondo grado. Condizionamento del calcolo di z=f(x,y). Applicazioni del  condizionamento del problema del calcolo di z=f(x,y): somma algebrica (cancellazione numerica), prodotto.
   
08 10 2019
EX - Chisini 9.30-10.30 Condizionamento del calcolo della potenza e della radice di un numero. Condizionamento del calcolo del quoziente di due numeri.
Esempi di cancellazione numerica.
Stabilità di algoritmi: esempi. Esercizio n.1, 16/11/2017.

08 10 2019 LAB - 309 
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB. Operazioni elemento per elemento: .* ./ .^
Norme di vettori: norm(u,1), norm(u), norm(u,2), norm(u,inf), norm(u,-inf).
Polinomi: poly, roots, polyval, polyder, polyint, conv, deconv.
Matrici: costruzione, elementi, trasposta, operazioni e operazioni per elemento, funzioni applicate a matrici, assegnazione di elementi o blocchi di elementi/matrici, eye, ones, zeros, hilb, vander, pascal, sum, prod, max, min, det, inv, size, eig.
Grafica 2D, 3D: plot, xlabel, ylabel, title, legend,  LineWidth, MarkerSize, MarkerEdgeColor; meshgrid, surf, contour, contourf, mesh.
Lab 2  
09 10 2019 EX - G10 10.30-12.30 Esempio di algoritmo stabile/instabile.

Rappresentazione dei numeri sul calcolatore. Insieme F(ß,t,L,U). Costruzione dell'insieme F(2,3,-1,2).

Metodo di Newton: esercizio pag. 38 (dispensa).
Esercizi stabilità algoritmi.
15 10 2019
EX - Chisini  9.30-10.30 Alcune considerazioni sul metodo di Newton applicato alla funzione f(x)=a-1/x: ordine, scelta di x_0, interpretazione geometrica. Test d'arresto del metodo di Newton e del metodo di bisezione. Esercizio n.1, 5/11/2012.
 
15 10 2019 LAB - 309  Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB. Grafica: axis, axis equal, axis square, loglog, subplot.
Script file.
Operatori relazionali:
== < <= > >= ~=
eq lt le gt ge ne
| & ~
or and xor not
Istruzione for.
Anonymous functions: f=@(x).
Richiami su inline e fcnchk.
Osservazioni sull'insieme F(ß,t,L,U): realmin, realmax, eps, non associatività della somma.
Esercizi sugli errori (dal file: "Esercizi cancellazione numerica, arrotondamento: 1-5").
Esercizio: file plotp6.m
Grafici in scala logaritmica  

Esercizi cancellazione numerica, arrotondamento  

EX1.M  EX2.M  EX3.M  EX4.M  EX5.M 
plot p_6(x) plotp6.m 
calcolo radici di p_15(x) radici_p15.m  
16 10 2019
EX - G10 10.30-12.30 Esercizio sul metodo di bisezione:  n.1, 23/1/2014.
Alcune considerazioni sulla convergenza, sull'ordine e sul test d'arresto dei metodi di bisezione e di Newton. Esercizi sul metodo di Newton: n.3, 9/9/2008, n.1, 24/6/2011, n.3, 22/1/2015.
 
22 10 2019
EX - Chisini  9.30-10.30 MATLAB. Descrizione della function MATLAB bisezione.
Convergenza del metodo di Newton: en<C(en-1)2
Stima/maggiorazione della costante C.
Il metodo di Newton per la ricerca di zeri di funzione con molteplicità p>1.
 
22 10 2019
LAB - 309
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
Condizionamento del calcolo delle radici del polinomio p=[1 -2 1].
Esercizio dal file: calcolo radici di p_15(x), radici_p15.m.
Istruzioni if, while, for.
Function file.
Metodi iterativi per equazioni non lineari (bisezione, Newton).
Implementazione del metodo di bisezione 

bisezione.m  main_bis1.m  main_bis2.m
newton.m  main_new1.m  main_new2.m 

Temi d'esame sul metodo di Newton per l'approssimazione di radici con molteplicità p>1:
n.2, 20 febbraio 2013
n. 3, 19 giugno 2015
n.3, 1 febbraio 2018.
23 10 2019
EX - G10 10.30-12.30 Esercizi sui metodi di punto fisso: n.3, 18/1/2016; n.2, 22/6/2017; n.4, 12/7/2012; n.2, 24/1/2019; n.4, 12/2/2015. Esercizio sullo studio della convergenza del metodo di Newton come metodo di punto fisso.   
29 10 2019
EX - Chisini
9.30-10.30 Esercizi sui metodi di punto fisso: n.3, 19/6/2006; n.2, 18/2/2016.  
29 10 2019 LAB - 309 Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB. Function pfisso.m; esercizi sui metodi iterativi per l'approssimazione di punti fissi; test d'arresto.
Tema d'esame:
n. 3, 19 giugno 2015.
pfisso.m  (function file)
pfisso_main_log.pdf pfisso_main_log.m
pfisso_main_exp.pdf pfisso_main_exp.m  
pfisso_main_newton.pdf pfisso_main_newton.m
30 10 2019
EX - G10
10.30-12.30
Esercizi sui metodi di punto fisso: n.2, 12/6/2018; n.3, 28/1/2016; n.2, 20/2/2018; n.3, 13/7/2006; n.1, 22/1/2015; n.2, 18/1/2018.    
05 11 2019
EX - Chisini
9.30-10.30
Esercizio:
g(x)= 0.5x^2+0.5, x<=1 & g(x)= 2sqrt(x)-1, x>1.
g(x)= 0.5x^2+0.5, x>1 & g(x)= 2sqrt(x)-1, 0<=x<=1.
Esercizi sui metodi di punto fisso: n.3, 24/4/2015; n.2, 30/1/2019.
    
05 11 2019
LAB - 309
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB. Fzero; function ragnatela.m (rappresentazione grafica delle successioni generate con i metodi di punto fisso).
Algebra delle matrici: blocchi di matrici, diag, tril, triu, eig, inv, det. Risoluzione di sistemi lineari: x=a\b.
Risoluzione di sistemi triangolari.
Richiami sulla stima dell'errore nei sistemi lineari.
Condizionamento della matrice di Hilbert.
Tema d'esame 6/7/2017.
Costruzione grafica iterazioni metodi di punto fisso.
script: es_ragnatela.m  
function file: ragnatela.m  

Condizionamento matrice di Hilbert: testo, hilbert_cond.m.
Matrici diagonali e triangolari: richiami
Forward backward substitution     
06  11 2019
EX - G10
10.30-12.30
Esercizi sui metodi di punto fisso: n.3, 29/01/2015.
Esercizi su norme e condizionamento di matrici: n.3, 31/01/2018; n.4, 19/1/2017; n.4, 26/4/2017; n.3, 21/2/2019.
 
11 11 2019
EX -G10
13.30-15.30
Esercizi su norme e condizionamento di matrici e sul primo teorema di Gershgorin: n.3, 2/5/2019; n.3, 20/2/2018; n.4, 16/2/2017; n.3, 4/7/2019; n.3, 9/6/2008; n.2, 15/6/2009; n.2, 18/6/2007. Complementi di teoria:
Matrici Elementari di Gauss 1  
Matrici Elementari di Gauss 2 
12 11 2019
EX - Chisini
9.30-10.30
Esercizi sulla fattorizzazione LU: n.2, 24/4/2007; n.1, 9/7/2015; n.3, 17/9/2018;  
  
12 11 2019 LAB - 309 Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB. Matrici di permutazione. Function lu. Fattorizzazione A=LU, PA=LU e applicazione alla risoluzione di sistemi lineari. Script file fill_in.m. Istruzioni spy, find. Fattorizzazione di matrici tridiagonali. Tema d'esame n.1, 8/5/2014 (calcolo della matrice inversa).
EG_1   EG_2   EG_3  
fill_in  
Matrici tridiagonali: dispensa (pag. 47, 53); MatTrid.  
trifat.m, triris.m, ex_tri.m.  
19 11 2019
CHISINI
10.00
PRIMA PROVA IN ITINERE
 
26 11 2019
CHISINI
9.30-10.30
Calcolo degli autovalori delle matrici di iterazione dei metodi di Jacobi e Gauss-Seidel. Esercizi.
  
26 11 2019 LAB - 309 Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB.
Function chol (metodo di Cholesky).
Function jacobi e gs. Esercizi da temi d'esame sui metodi iterativi di Jacobi e Gauss-Seidel.

Matrici di iterazione  
jacobi.m, gs.m, main_jac.m, main_gs.m  

Metodo SOR: dispensa pag. 59 e 60.
sor.m, main_sor.m
27  11 2019 EX - G10 10.30-12.30 Ripasso delle condizioni di convergenza dei metodi di Jacobi e Gauss-Seidel. Velocità asintotica di convergenza. Stima del minimo numero di iterazioni necessarie per soddisfare una data tolleranza per l'errore relativo. Esercizi: n.2, 24/4/2007; n.1, 24/2/2011; n.1, 7/2/2013; n.1, 9/7/2015; n.3, 15/11/2007; n.1, 17/2/2009.
 
28 11 2019
EX - G10
15.30-16.30
Teorema di convergenza del metodo di Gauss-Seidel per matrici simmetriche e definite positive (senza dimostrazione). Esercizio n.4, 23/1/2014.
Metodi del gradiente: equivalenza tra la soluzione del problema di minimizzazione del funzionale F(y)1/2(Ay,y)-(b,y) e la soluzione del sistema lineare Ax=b con A matrice simmetrica definita positiva.
 
3 12 2019
EX - Chisini
9.30-10.30
Metodi del gradiente: richiami sulla derivata direzionale, sul gradiente e sulla definizione di direzione di discesa; scelta della direzione di discesa;  calcolo dinamico del parametro alpha_k: minimizzazione di F(x^{k+1}), minimizzazione di (r^{k+1},r^{k+1}).  Alcune note sul metodo del gradiente   
3 12 2019
LAB - 309
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB: metodi del gradiente a parametro costante e dinamico. Temi d'esame: n1, 7/5/2013; n. 2, 18/9/2017; n. 3, 29/1/2015 (metodo iterativo per l'approssimazione dell'inversa di una matrice); n.2, 27/4/2017.
Dispensa pag. 60 e 61.
main_rich.m, main_rich_din.m 
4 12 2019
EX - G10
10.30-12.30
Esercizio p.62 dispensa.
Esercizi di riepilogo sui metodi iterativi e sul metodo del gradiente: n.4, 6/7/2017; n.4, 15/9/2017; n.3, 16/6/2016;  n.1, 24/4/2015.
 
10 12 2019
EX - Chisini 9.30-10.30 Polinomi ortogonali: definizione, zeri.
Polinomi di Chebyshev: formula implicita, ricorsiva, calcolo degli zeri.
Polinomi di Chebyshev    
10 12 2019 LAB - 309 
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30 
MATLAB: metodo di Vandermonde. Istruzione polyfit (per l'interpolazione). Metodo di interpolaizone di Lagrange. Esempio di Runge. Nodi di Chebyshev. Interpolazione negli zeri dei polinomi di Chebyshev (richiami sul teorema di convergenza).
Vandermonde.
[lagr.m  lagr_sin2x.m  lagr_runge.m]
lagr_vet.m  lagr_sin2x_vet.m  lagr_runge_vet.m   

Plot Nodi Chebyshev
lagr_cheb_runge_vet.m  
11 12 2019 
EX - G10 
10.30-12.30 
Esercizi sull'esistenza e unicità dei polinomi di interpolazione: n.5, 29/1/2015; n.5, 18/2/2016; n.1, 23/9/2019. Metodo di interpolazione di Lagrange e formula dell'errore di interpolazione: n.2, 7/2/2013; n.1, 26/1/2006; n.3, 11/7/2013. Il metodo delle differenze divise: n.2, 2/12/2010.  
Tabella delle differenze divise  
17 12 2019 EX - Chisini 9.30-10.30 Esercizi sul metodo di interpolazione delle differenze divise e sulla maggiorazione dell'errore di interpolazione: n.5, 15/9/2017; n.1, 16/2/2017; n.2, 20/11/2014.
 
17 12 2019 LAB - 309
Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB: interpolazione con spline lineari e cubiche (interp1, spline, mkpp, unmkpp, csape). 
spline_lineari.m  
Stima dell'errore. verifica sperimentale  
File A, File B.
Condizione not-a-knot: S2.
Condizione not-a-knot: S3.
Spline cubiche (a)  
Spline cubiche (b)  
Spline cubiche con calcolo derivata  
18 12 2019 EX - G10
10.30-12.30
Esercizi sull'interpolazione, sulla ricerca di nodi ottimali, sulle funzioni spline: n.3, 17/2/2009; n. 1, 16/6/2016; n.4, 21/2/2013; n.2, 21/11/2013; n.3, 18/9/2014; n.5, 13/7/2009;
 
07 01 2020
EX -Chisini
9.30-10.30
Esercizi sulle funzioni spline: n.5, 6/7/2017; n.5, 21/11/2016; n.3, 20/11/2014; n.4, 24/4/2015.
 
07 01 2020
LAB - 309 Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB: Temi d'esame. n.2, 9/7/2014; n.3, 11/7/2013;
n. 1, 11/4/2014; n.2, 8/5/2014; n.1, 18/9/2017.
Alcune note per lo svolgimento dei temi d'esame della prova MATLAB.    
13 01 2020
EX - G10
10.30-12.30
Esercizi sulle funzioni spline: n.1, 12/6/2018; n.1, 26/1/2017; n.5, 31/1/2018; n. 3, 17/11/2015.
Esercizi sul grado di precisione delle formule di quadratura: n.3, 22/6/2017; n.4, 10/2/2011; n.1, 21/2/2013.


14 01 2020
EX -Chisini 9.30-12.30
Calcolo dei pesi della formula di Cavalieri-Simpson. Formula di C.S. composita. Stima asintotica dell'errore delle formule di NC composite. Esercizi: n.4, 14/6/2005; n.3, 16/11/2009; n.2, 9/6/2008; n.2, 18/9/2014; n.3, 22/11/2012; n.2, 22/6/2009; n.3, 6/7/2017; n.4, 20/2/2018. Appunti:
pesi delle FQ di NC
FQ composite (punto medio, trapezi)    
FQ composite (Cavalieri Simpson)

Note sui temi d'esame:
n.2 11/4/2014; n.3 8/5/2014 
n.1 20/2/2013; n.2 20/6/2013  
14 01 2020
LAB - 309 Turno 2 - 13.30-15.30

Turno 3 - 15.30-17.30
MATLAB: istruzioni polyint, integral.
Implementazione delle formule del punto medio, dei trapezi e di cavalieri-Simpson composite. Implementazione efficiente del metodo dei trapezi compositi nel caso di M=2k sottointervalli di uguale ampiezza.
Function per formule di quadratura:
puntomedio.m, trapezi.m, cav_simpson.m

Script file per formule di quadratura:
p_medio.m, trap_comp.m, cs.m  

Esercizio  
Schema  
Implementazione
15 01 2020
EX - G10 10.30-12.30 Esercizi sulle formule di quadratura, in particolare di tipo  Gaussiano: n.5, 26/4/2017; n.4, 20/11/2014; n.4, 21/11/2013; n. 4, 15/9/2016; n.4, 2/5/2019; n.5, 7/6/2005.