Argomenti trattati a lezione
07.10.13
Presentazione del
corso
(programma, modalità dell'esame ecc.). Testi consigliati:
A. Quarteroni, F. Saleri e P. Gervasio, Calcolo scientifico - Esercizi e problemi risolti con MATLAB e Octave,
Springer-Verlag Italia, Milano, 5a ed., 2012.
Si cerca di trattare i primi 6 capitoli.
M. Bramanti, C. D. Pagani, S. Salsa : Matematica. Calcolo infinitesimale e algebra lineare. 2a ed., Zanichelli, Bologna, 2004.
Questo testo tratta tutti gli argomenti del corso di Matematica con
laboratorio di informatica tranne gli aspetti compuatzionali.
S. Salsa, A. Squellati, Esercizi di Analisi matematica 1, 2 (due volumi), Zanichelli, Bologna, 2011.
P. Ghelardoni, G. Gheri e P. Marzulli, Elementi di Calcolo Numerico,
una dispensa gratuita.
Software consigliato:
Octave - l'alternativagratuita a MATLAB.
Octave è un programma open source di calcolo numerico
che può essere caricato assieme ai Octave-forge packages
da Octave-Forge.
(Ci sono anche programmi open source di calcolo simbolico,
ad esempio REDUCE per
tante piattaforme, in particolare il
reduce-windows64-20110414 (9.1 MB).)
Laboratorio di informatica con la
prima sessione Octave
(vedi anche la storia dei comandi dal file .octave_hist):
operazioni aritmetiche (+,-,*,/), elevamento a potenza (^), sqrt, format, format long, a : step : b,
ciclo for,
quit, file di inizializzazione
octaverc, diary,
algoritmo per la conversione di un numero decimalein
un
numero binario, esempio di un numero decimale finito che necessita infinite cifre binarie, esempio per l'accumulazione di errori a causa degli errori di arrotondamento di un numero.
Compito a casa: installare Octave (+ Octave-Forge packages) sul proprio computer,
vedi le istruzioni per Windows 7.
Usando il programma di installazione octave-3.6.4-vs2010-setup.exe, l'installazione è più facile (ma sul mio computer ha prodotto un'Octave molto lento).
09.10.13
Numeri naturali,
interi,
razionali,
numeri razionali come numeri decimali periodici,
somma parziale e somma di una
serie geometrica, sua applicazione ai numeri periodici per trovare
le loro
frazioni generatrici,
la radice di due non è un numero razionale,
successione di intervalli annidati che definisce la radice di due,
numeri irrazionalicome numeri decimali con un allineamento decimale
infinito non periodico, numeri reali in
notazione scientifica,
numeri binari,
algoritmi per la conversione della parte intera e della parte frazionaria di un numero decimale in
un
numero binario, esempi,
numeri floating-point:
approssimazione della mantissa per troncamento o per arrotondamento,
range degli esponenti,
memorizzazione dei numeri floating-point (segno, mantissa, esponente)
secondo lo standard
IEEE-754,
precisione singola (32 bit) e precisione doppia (64 bit),
cardinalità dell'insieme dei numeri floating-point,
numeri floating-point in MATLAB/Octave, il più grande
(realmax) e il più
piccolo numero floating-point positivo (realmin).
Sessione Octave
(storia dei comandi):
realmax, realmin, format bit, pwd() (print working directory),
distribuzione non uniforme dei numeri floating-point,
visualizzazione dei numeri floating point mediante la funzione
vis_floating.m.
Esercizi consigliati: foglio del 13/10/2013.
14.10.13
Errori di rappresentazione di un numero reale attraverso un numero floating-point, teorema sulla maggiorazione dell'errore relativo,
precisione della macchina,
unità di arrotondamento,
cenno alla aritmetica floating-point:
maggiorazione dell'errore relativo di una somma di numeri reali in aritmetica
floating-point (si veda C. Guerrini, pagina 32),
effetto della cancellazione di cifre significative,
non unicità dello zero, non valgono le leggi
associative e distributive.
Sessione Octave
(storia dei comandi):
eps (precisione della macchina), esempio per l'effetto della
cancellazione numerica, plot del grafico di una funzione, comandi
linespace,
size,
length, axis equal, grid, hold on, hold off,
funzione esponenziale
exp, numero di Nepero o di Eulero e = exp(1) = 2,7IbsenIbsen4590 ...
(Henrik Ibsen, 1828-1906,
poeta e drammaturgo norvegese).
16.10.13
Numeri complessi,
definizione, piano dei numeri complessi
o piano di
Wessel-Argand-Gauss,
operazioni aritmetiche,
complesso coniugato,
valore assoluto o modulo di un numero complesso,
esempi,
richiamo sulle
funzioni trigonometriche e loro funzioni inverse,
coordinate polari, conversione da coordinate polari a
coordinate cartesiane, conversione di coordinate cartesiane in coordinate
polari usando le funzioni
arcocoseno e
arcotangente2, esempio,
numeri complessi in forma polare o trigonometrica.
Sessione Octave
(storia dei comandi):
visualizzazione dell'effetto della cancellazione numerica,
comandi per il calcolo con i numeri complessi
(complex, abs, angle, compass, real, imag, conj),
conversione da coordinate cartesiane in coordinate polari
(cart2pol) e viceversa (pol2cart).
Esercizi consigliati: foglio del 20/10/2013.
21.10.13
Numeri complessi in forma polare o trigonometrica,
interpretazione geometrica della moltiplicazione di numeri complessi come
composizione di una rotazione e un'omotetia del piano di centro O e di rapporto positivo,
formula di de Moivre,
radici n-esime,
in particolare
radici dell'unità e
poligoni regolari,
equazioni polinomiali di secondo grado con coefficienti complessi,
formula risolutiva (si veda la dispensa, pag. 5), esempio,
calcolo della radice quadrata di un numero complesso usando le
formule di bisezione per il coseno e il seno, esempio.
Sessione Octave
(storia dei comandi):
calcolo di radici di numeri complessi, risoluzione di equazioni
polinomiali, principali comandi MATLAB relativi ai polinomi
(roots,
polyval, conv, deconv, polyder, polyint),
realizzazione di una rotazione nel piano attraverso la moltiplicazione
per un numero complesso di modulo uno.
23.10.13
Sviluppo in serie di Taylor della funzione esponenziale e
delle funzioni seno e coseno,
formula di Eulero,
funzione esponenziale complessa,
numeri complessi in forma esponenziale.
Esempio di una
funzione (o trasformazione) lineare da R2 in R2 e la matrice associata,
definizione di matrice reale
o complessa, algebra delle
matrici: uguaglianza, somma, differenza, matrice zero, moltiplicazione di
una matrice per uno scalare,
prodotto di matrici conformabili e composizione delle trasformazioni lineari definite dalle matrici fattori, esempio.
Sessione Octave
(storia dei comandi):
operazioni sulle matrici,
non commutatività del prodotto matriciale,
divisori dello zero,
comandi size, zeros,
trasposta (A.') e
trasposta coniugata (A') di una matrice,
vettore riga, vettore colonna,
vari metodi per definire
una funzione (funzione inline, anonymous function con l'ausilio
di function handle @, m-file di una funzione, vedi
nostra_funzione).
Esercizi consigliati: foglio del 24/10/2013.
28.10.13
Trasposta di una matrice,
regole relative alle
matrici trasposte,
matrice identità,
definizione di
matrice inversa,
proprietà delle matrici inverse,
matrice contragrediente,
vettori numerici,
vettore riga, vettore colonna,
scalari e vettori, vettori geometrici
(si veda anche il
video - in lingua inglese - on YouTube), somma o risultante
di vettori, poligono vettoriale, differenza di vettori, vettore
nullo o vettore zero, moltiplicazione di un vettore per uno scalare,
regole dell'algebra vettoriale,
definizione di spazio vettoriale,
scomposizione di un vettore lungo due direzioni assegnate,
componenti di un vettore, legame tra i vettori geometrici e i vettori
numerici.
Sessione Octave
(storia dei comandi):
matrice identità (eye), matrice inversa
(inv),
matrice diagonale (diag),
matrici con numeri casuali (rand), divisione dalla destra (/)
e dalla sinistra (\), risoluzione di un sistema lineare Ax = b
attraverso x = A \ b e confronto con x = inv(A) * b.
30.10.13
Prodotto interno o prodotto scalare,
esempio introduttivo (lavoro meccanico in fisica) e
definizione per vettori di Rn,
proprietà del
prodotto scalare e sua definizione assiomatica come
forma bilineare simmetrica definita positiva,
norma indotta da un prodotto scalare,
distanza (metrica) indotta da una norma,
vettori ortogonali,
proiezione di un vettore su un vettore non nullo,
esempio,
disuguaglianza di
Cauchy-Buniakovskii-Schwarz,
angolo tra due vettori di Rn.
Sessione Octave
(storia dei comandi):
risoluzione di un sistema lineare impossibile con la divisione
a sinistra fornisce una soluzione nel senso dei minimi quadrati
(si veda Quarteroni-Saleri-Gervasio, 5.8 Cosa si nasconde dierto al comando \),
calcoli con vettori: prodotto scalare (dot) angolo tra vettori
(usando acos), norma euclidea (norm), visualizzazione di
vettori nel piano (quiver) e nello spazio (quiver3, maxheadsize, autoscale).
Esercizi consigliati: foglio del 31/10/2013.
04.11.13
Combinazione lineare di una
famiglia di vettori,
sottospazi vettoriali,
span (copertura) lineare o sottospazio
generato da una famiglia di vettori,
famiglia
di vettori
linearmente indipendente e linearmente dipendente, esempi,
base di uno spazio vettoriale, basi ortonormali,
base canonica di Rn.
Sessione Octave
(storia dei comandi):
programmare in MATLAB/Octave, MATLAB source code files (M-files):
script e function, esempi (lo script moltiplicazione.m, la funzione angolo.m).
06.11.13
Procedimento di
ortogonalizzazione di Gram-Schmidt
(J. P. Gram, 1850-1916; E. Schmidt, 1876-1959),
proiezione di un vettore in
un sottospazio, esempio (trovare una base ortonormale di un sottospazio
di dimensione due di R3),
coordinate di un vettore rispetto ad una base.
Prodotto scalare standard di Cn
(prodotto hermitiano),
prodotto scalare o prodotto interno in uno spazio vettoriale complesso
come forma sesquilineare
hermitiana e definita positiva,
norma indotta dal prodotto scalare, esempio,
spazio unitario o prehilbertiano, cenno allo
spazio di Hilbert,
si veda anche la voce "meccanica quantistica" di Wikipedia.
Equazioni non lineari,
metodo di bisezione, errore assoluto del metodo, criteri di arresto.
Sessione Octave
(storia dei comandi):
implementazione del metodo di bisezione come function
bis.m (programma grezzo)
di Octave/MATLAB; Saleri e Quarteroni propongono la function
bisection.m (programma molto più raffinato, però
contenente un errore, si veda il
progetto 4).
Esercizi consigliati: foglio del 07/11/2013.
11.11.13
Metodo di Newton(-Raphson) o metodo delle tangenti,
criteri di arresto, richiamo sul teorema di Taylor,
convergenza quadratica del metodo di Newton nel caso di uno zero semplice,
iterazione di punto fisso,
condizione sufficiente per
l'esistenza e l'unicità del punto fisso e per la convergenza
della successione generata dal metodo di iterazione funzionale.
Sessione Octave
(storia dei comandi):
discussione del codice di un'implementazione del metodo di Newton
(newton.m), utilizzo del
programma per il calcolo di uno zero di una funzione contenente un
parametro.
13.11.13
Condizione sufficiente per la convergenza locale di iterazioni di punto fisso
(teorema di
Ostrowski,
A. M. Ostrowski, 1893-1986), ordine di convergenza,
rappresentazione grafica delle iterazioni di punto fisso nei casi di convergenza e divergenza, come arrestare un'iterazione di punto fisso,
metodo di Ruffini-Horner
(Paolo
Ruffini, 1765-1822,
William George Horner, 1786-1837) per la valutazione efficiente
di un polinomio e della sua derivata in un punto assegnato e per la divisione di polinomi, algoritmo di divisione sintetica,
metodo di Newton-Horner per il calcolo di tutte le radici di un polinomio,
comandi Octave polyval e roots.
Approssimazione di funzioni e dati: introduzione.
Sessione Octave
(storia dei comandi):
estrarre elementi e sottomatrici da una matrice, discussione del codice
del metodo di Horner (horner.m)
e uso del programma, discussione del codice del metodo di Newton-Horner
(newtonhorner.m)
e uso del programma.
Esercizi consigliati: foglio del 14/11/2013.
18.11.13
Interpolazione polinomiale di Lagrange, esistenza e
unicità del polinomio interpolatore,
quantificazione dell'errore che si commette sostituendo una funzione
con un suo polinomio interpolatore,
fenomeno di Runge (Carl Runge,
1856-1927).
Sessione Octave
(storia dei comandi):
comandi polyfit,
polyval,
interpolazione polinomiale della funzione di Runge usando un
numero crescente di nodi equidistanti
e rappresentazione grafica dei risultati ottenuti con Octave.
20.11.13
Interpolazione rispetto ai
nodi di Chebyshev
(P. L. Cebisceff, 1821-1894),
stabilità dell'interpolazione polinomiale,
costante di Lebesgue
(
H. Lebesgue, 1875-1941)
come numero di
condizionamento del problema dell'interpolazione,
crescita esponenziale della costante di Lebesgue nel caso
dell'interpolazione di Lagrange su nodi equispaziati,
cenno alla costante di Eulero-Mascheroni,
retta dei minimi quadrati o retta di regressione, cenno alla
varianza campionaria e alla
covarianza campionaria.
Sessione Octave
(storia dei comandi):
interpolazione della funzione di Runge rispetto ai nodi di Chebyshev,
esempio di un interpolazione instabile (comandi
polyfit, polyval,
randn).
Esercizi consigliati: foglio del 21/11/2013.
25.11.13
Richiami sui numeri complessi (radici dell'unità), interpolazione trigonometrica,
serie discreta di Fourier (DFT),
trasformata rapida di Fourier (FFT) e
comandi MATLAB/Octave relativi (fft, ifft, fftshift, interpft).
Applicazione:
FT-NMR,
si veda in particolare
The Basics of NMR - Fourier transforms.
27.11.13
Sistemi di equazioni lineari, sistemi lineari in forma matriciale,
loro soluzione con il
metodo di eliminazione Gauss, sostituzione all'indietro,
fattorizzazione triangolare LU.
Sessione Octave
(storia dei comandi):
calcolo e visualizzazione del polinomio di interpolazione e della retta di regressione, confronto delle rette di regressione di y rispetto ad x e di x rispetto a y, interpolazione trigonometrica,
calcolo dell'interpolatore trigonometrico di un insieme di dati,
rappresentazione dei grafici di funzioni e di loro interpolatori
trigonometrici, in particolare esemplificazione del fenomeno
dell'
aliasing,
calcolo della trasformata discreta di Fourier,
calcolo dei coefficienti di Fourier con il comando fftshift
e dei coefficienti reali del polinomio trigonometrico.
Esercizi consigliati: foglio del 28/11/2013.
02.12.13
Soluzione di sistemi lineari mediante la fattorizzazione LU e gli algoritmi delle sostituzioni in avanti e delle sostituzioni all'indietro,
esempio di una matrice che non ha una fattorizzazione LU,
teorema sull'esistenza e unicità della fattorizzazione LU
per matrici invertibili,
fattorizzazione triangolare LU
di una matrice quadrata con pivoting per righe,
matrice di
permutazione.
Sessione Octave
(storia dei comandi):
fattorizzazione triangolare LU
di una matrice quadrata con pivoting per righe (comando lu)
e senza scambio di righe
(function lugauss.m dal libro di
Quarteroni-Saleri),
creare una matrice di permutazione,
calcolo della
trasformata discreta di Fourier (DFT) di un segnale
(signal1) e sua visualizzazione.
04.12.13
Errore algoritmico del metodo di Gauss, tecnica del
pivoting ed esempio relativo (pivoting per righe),
scaled
pivoting,
errore inerente (errore sulla rappresentazione dei dati),
esempio di un sistema lineare mal condizionato, numero di
condizionamento di una matrice quadrata non singolare.
Definizione assiomatica del determinante secondo
Weierstrass
come funzione lineare, alternante e normalizzata delle righe di una matrice
quadrata, esistenza, unicità e proprietà elementari del
determinante ed esempi, in particolare:
determinante di una matrice triangolare,
calcolo del determinante con l'algoritmo di Gauss,
teorema di Binet
(J. Binet, 1786-1856),
formula di Leibniz per il determinante (definizione costruttiva),
richiamo sulle permutazioni (trasposizioni, inversioni, segno di una permutazione),
determinante di
matrici quadrate di ordine 2 e 3,
regola di Sarrus
(P. F. Sarrus,
1798-1861), determinante della trasposta di una matrice,
calcolo del determinante mediante lo
sviluppo di Laplace, esempi.
Esercizi consigliati: foglio del 05/12/2013.
09.12.13
Compilazione dei questionari sulla valutazione della didattica.
Richiamo sul calcolo del determinate mediante lo sviluppo di Laplace,
calcolo della matrice inversa di una matrice quadrata non singolare
con il
metodo della matrice dei cofattori (o dei complementi algebrici
o aggiunti), esempi,
regola di Cramer per risolvere sistemi lineari di n equazioni in
n incognite, esempio.
11.12.13
Uso del determinante per calcolare il
rango di una matrice (criterio dei minori),
teorema di
Kronecker o dei minori orlati (cenno),
esempio di un sistema lineare con matrice dei coefficienti non invertibile
e con spazio delle soluzioni unodimensionale, risoluzione con l'algoritmo di Gauss-Jordan (riduzione della matrice completa del sistema a scala
per righe, poi a scala per righe in forma ridotta), esempio di un sistema impossibile,
teorema di Rouché-Capelli (E. Rouché, 1832-1910; A. Capelli, 1855-1910),
sistema omogeneo associato e dimensione dello
spazio vettoriale delle sue soluzioni (spazio nullo),
spazio (affine) delle soluzioni del sistema non omogeneo,
soluzioni di un sistema non omogeneo come somma di una soluzione particolare
e della soluzione "generale" del sistema omogeneo associato
(si veda la dispensa, pag. 24),
norme vettoriali,
norma matriciale,
norma matriciale indotta da una norma vettoriale,
condizionamento di una matrice quadrata non singolare,
maggiorazione dell'errore relativo sulla soluzione di un sistema lineare perturbato
(teorema di Wilkinson).
Sessione Octave
(storia dei comandi):
risoluzione dei due sistemi lineari (precedentemente risolti a mano)
con la divisione dalla sinistra A \ b e con il metodo di eliminazione
di Gauss lu e la funzione sol di Saleri-Quarteroni, risoluzione del sistema omogeneo associato con il
comando null, comandi
rank,
cond (numero di condizionamento) e norm.
Esercizi consigliati: foglio del 12/12/2013.
16.12.13
Definizione di funzione, trasformazione o applicazione lineare,
unicità dell'applicazione lineare, cioè le immagini dei vettori di base dello spazio di partenza
determinano unicamente la trasformazione,
esempi di trasformazioni lineari e controesempi,
matrice associata ad un'applicazione lineare tra spazi vettoriali di dimensioni finite con basi fissate e applicazione lineare definita
da una matrice,
l'insieme delle trasformazioni lineari tra due spazi vettoriali è
uno spazio vettoriale,
l'insieme delle matrici di formato fissato è uno spazio vettoriale,
la corrispondenza tra applicazioni lineari e matrici è
un isomorfismo di spazi vettoriali,
esempio (proiezione ortogonale del piano su una retta),
coordinate di un vettore rispetto ad una base,
cambiamento di base e cambiamento delle coordinate mediante la
matrice contragrediente della matrice di trasformazione dei
vettori di base.
18.12.13
Esempio per la trasformazione di coordinate sotto cambiamento di base,
matrice associata a un prodotto scalare,
matrice
simmetrica reale e definita positiva,
cenno alla formula di Taylor di ordine 2 per funzioni reali di due variabili reali,
se la matrice
hessiana in un punto critico è definita positiva, allora il punto
è un punto di minimo locale,
cambiamenti di base negli spazi di partenza e di arrivo di un'applicazione
lineare e formula di trasformazione della
matrice rappresentativa dell'applicazione rispetto alle basi,
relazione di
equivalenza fra matrici,
matrici sono equivalenti, cioè rappresentano rispetto a basi
diverse la stessa trasformazione lineare, se e solo se le matrici hanno lo
stesso rango,
nucleo e
immagine
di una trasformazione lineare,
formula di dimensione (teorema del rango),
la matrice "più semplice" fra le matrici equivalenti
(matrice in froma canonica),
endomorfismi di spazi vettoriali, formula di trasformazione per la matrice rappresentativa di un endomorfismo,
relazione di
similitudine fra matrici,
matrici rappresentano lo stesso endomorfismo di uno spazio
vettoriale di dimensione finita rispetto a basi diverse dello
spazio se e solo se sono simili,
autovettori e autovalori di endomorfismi
e matrici quadrate, esempio (proiezione ortogonale),
endomorfismi diagonalizzabili (di spazi vettoriali di dimensione finita).
08.01.14
Autovettori e autovalori di endomorfismi
e matrici quadrate, endomorfismi e matrici diagonalizzabili,
autospazio relativo ad un autovalore, autospazi relativi ad autovalori
distinti hanno solo il vettore nullo in comune,
autovettori relativi ad autovalori distinti sono linearmente
indipendenti,
polinomio caratteristico di una matrice quadrata e di un
endomorfismo,
la dimensione dell'autospazio di un autovalore (ossia la sua
molteplicità geometrica) non supera la sua molteplicità
algebrica, autovalori regolari,
esempi per il calcolo di autovalori e autospazi e per la
diagonalizzazione di endomorfismi o matrici,
calcolo della matrice di passaggio dalla base canonica alla base
composta di autovettori,
autovalori di una
matrice triangolare,
esempio di una matrice non diagonalizzabile.
13.01.14
Definizione di endomorfismo autoaggiunto di
uno spazio
euclideo
(prehilbertiano), sua matrice rappresentativa rispetto a una base ortonormale e
simmetrica (hermitiana),
teorema spettrale per endomorfismi autoaggiunti di spazi vettoriali
reali o complessi muniti di un prodotto scalare e di dimensione finita
(senza dimostrazione), endomorfismi autoaggiunti hanno (sia nel caso reale che
complesso) autovalori reali ed autospazi ortogonali,
esempio per la diagonalizzazione di una matrice quadrata reale simmetrica
con una matrice di passaggio ortogonale e descrizione geometrica dell'endomorfismo.
15.01.14
Autovalori e autovettori reali e complessi di
rotazioni nel piano e di
rotazioni nello spazio (asse della rotazione come autospazio
rispetto all'autovalore uno, ricavare l'angolo della rotazione
dagli autovalori complessi coniugati o dalla traccia),
rette isotrope,
esempio della diagonalizzazione di un endomorfismo autoaggiunto
di R3 (con un autovalore di molteplicità due)
mediante una rotazione, equazioni di rette e piani in forma vettoriale
parametrica.
Sessione Octave
(storia dei comandi):
calcolo della matrice ortogonale di passaggio e della diagonalizzazione
dell'esempio precedente con il comando
eig, calcolo dell'angolo
di rotazione definita dalla matrice di passaggio.
20.01.14
Endomorfismi ortogonali e matrici ortogonali, sue propietà,
cenno al gruppo ortogonale e al gruppo ortogonale speciale.
Integrazione numerica, formule di quadratura
semplici
(formula del punto medio,
formula del trapezio,
formula di Simpson) e cenno alle formule composite,
loro errori, gradi di esattezza e ordini di accuratezza.
Esercizio sui numeri complessi.
last updated 20th January 2014
Rüdiger Achilles