Sei sulla pagina 1di 16

CALCOLO NUMERICO E MATLAB

ARITMETICA, ERRORI

Si definisce rappresentazione FLOATING-POINT di un numero reale la seguente


espressione:

dove N rappresenta la base del sistema di numerazione.


Si definisce NORMALIZZATA se P SODDISFA LA RELAZIONE:
In tal caso la MANTISSA P (non negativo, reale) e
l’ESPONENTE Q (intero) sono UNICI.

I numeri rappresentabili dal calcolatore hanno un numero di cifre di


mantissa fisso (T) e un esponente che deve seguire la limitazione:

SI DEFINISCONO NUMERI DI MACCHINA I NUMERI CON MANTISSA ED ESPONENTE


ESATTAMENTE RAPPRESENTABILI NEGLI SPAZI A LORO RISERVATI DAL
CALCOLATORE. L’insieme finito dei numeri di macchina è quindi:

Si definisce regione di UNDERFLOW l’insieme dei numeri reali


diversi da zero e appartenenti a (−m, m).

Si definisce regione di OVERFLOW l’insieme dei


numeri appartenenti a (−∞, −M) ∪ (M, +∞).

TECNICA DI ARROTONDAMENTO ROUND TO EVEN: la mantissa p viene approssimata


con la mantissa di macchina p̄ più vicina e se p è equidistante da due mantisse di macchina
consecutive allora p viene approssimata con quella delle due che ha l’ultima cifra pari.

Sia x̃ un’approssimazione del numero x. Si definisce ERRORE ASSOLUTO ed ERRORE


RELATIVO associato a x̃ le quantità:

Si definisce EPSILON DI MACCHINA e PRECISIONE DI MACCHINA le quantità:


La precisione di macchina è una costante caratteristica di ogni aritmetica floating-point; essa
rappresenta il massimo errore relativo che si commette quando si approssima il numero
reale a con il corrispondente numero di macchina ā.

L’OPERAZIONE DI MACCHINA associa a due numeri di macchina un terzo numero di


macchina, ottenuto arrotondando l’esatto risultato dell’operazione in questione.

Due espressioni/quantità si definiscono EQUIVALENTI nell’aritmetica del calcolatore


quando, valutate nel calcolatore stesso, forniscono risultati che differiscono per una
tolleranza relativa dell’ordine della precisione di macchina o minore. Ne consegue che εm
rappresenta la massima precisione (relativa) di calcolo raggiungibile: non ha senso cercare
di determinare approssimazioni con precisione relativa inferiore a εm .

Un PROBLEMA NUMERICO si dice BEN CONDIZIONATO se accade che l’errore relativo


associato a ȳ è dello stesso ordine di grandezza dell’errore relativo associato a x̄ o minore;
altrimenti, si dice mal condizionato. Pertanto, un problema è ben condizionato quando le
perturbazioni nei dati non influenzano eccessivamente i risultati.
Un ALGORITMO si dice NUMERICAMENTE STABILE se accade che l’errore relativo
associato al risultato ỹ ha lo stesso ordine di grandezza della precisione di macchina o
minore; altrimenti, si dice instabile. Pertanto, un algoritmo è numericamente stabile quando
la sequenza delle operazioni non amplifica eccessivamente gli errori di arrotondamento
presenti nei dati.
APPROSSIMAZIONE DI FUNZIONI E DI DATI

Approssimare una funzione f , nota in forma analitica, significa sostituirla con una funzione f’
che le sia “vicina” in qualche senso e abbia una forma più semplice (per esempio,
polinomiale) su cui si possa facilmente operare.
Approssimare un insieme di dati (xi, yi) (ove, per esempio, yi = f(xi) e f non è nota
esplicitamente) significa determinare una funzione f’ che abbia un andamento analogo a
quello dei dati (o della funzione che ha generato i suddetti dati).

SI hanno sia interpolazioni POLINOMIALI che POLINOMIALI A TRATTI.


Di quelle polinomiali le più interessanti sono la MONOMIALE e quella di LAGRANGE,
mentre quelle polinomiali a tratti si dicono SPLINE.

Assegnati n + 1 punti (xi , yi ), con le ascisse distinte tra loro, esiste uno e un sol polinomio
pn (x) di grado minore o uguale a n interpolante i dati assegnati, ovvero soddisfacente le
condizioni di interpolazione:

La determinazione del polinomio interpolante mediante la sua rappresentazione monomiale


comporta la risoluzione di un problema mal condizionato. Tale problema è tanto più mal
condizionato, quanto più è grande n. Pertanto, quando n è grande, è necessario calcolare il
polinomio interpolante attraverso rappresentazioni alternative.
Si dice che una successione di polinomi CONVERGE UNIFORMEMENTE a f solo se il limite
per n che tende ad infinito della norma infinito della differenza tra la funzione f e il polinomio
è uguale a zero.

Per far si che un polinomio interpolante sia uniformemente convergente, bisogna trovare dei
nodi che garantiscano questa proprietà.

Per trasporre poi i nodi di Chebyschev o Chebyshev-Lobatto in un intervallo [a,b]:

Si precisa che la convergenza uniforme NON è garantita se la funzione f è solo continua.


FUNZIONI POLINOMIALI A TRATTI: LE SPLINE
Si definisce funzione polinomiale a tratti di grado d associata a una partizione dell’intervallo
[a, b], una funzione continua in [a, b] e definita da un’unione di tratti contigui di polinomi
algebrici diversi, ciascuno di grado d. Le funzioni polinomiali a tratti sono continue ma,
generalmente, non sono derivabili nei punti di raccordo. Le funzioni spline sono particolari
funzioni polinomiali a tratti che soddisfano opportune proprietà di regolarità nei punti di
raccordo.

Le spline cubiche S3 (x) sono funzioni polinomiali a tratti di grado locale 3 molto utilizzate
nelle applicazioni. Per determinare S3 (x) è necessario assegnare 4 condizioni per ciascun
sottointervallo, tante quanti sono i coefficienti che definiscono la spline in ogni sottointervallo,
quindi 4n condizioni. Dalla definizione di spline mancano due condizioni, per garantire
l’esistenza e unicità delle spline cubiche.
la CONVERGENZA uniforme delle spline interpolanti, a differenza dei polinomi interpolanti,
è comunque GARANTITA qualunque sia la funzione continua f e qualunque sia la scelta dei
nodi xi per h → 0.
SISTEMI LINEARI

La risoluzione di un sistema lineare è un problema che si presenta in moltissime


applicazioni, sia esplicitamente come modello (formulazione matematica) di un fenomeno
fisico; sia come passo intermedio o finale nella risoluzione numerica del modello in
questione, rappresentato, per esempio, da equazioni differenziali. Prima di analizzare i
metodi numerici per la risoluzione di sistemi lineari, si richiamano alcune nozioni riguardanti
vettori e matrici.

Sia x = (x1 , . . . , xn )T ∈ R(n) un vettore colonna e sia A = (aij) i=1,...,m, j=1,...,n ∈ R(m,n)
una matrice di dimensioni m × n. Nel seguito verranno considerate le seguenti NORME di
vettore e matrice:

La norma 2 di un vettore si dice anche NORMA EUCLIDEA mentre la norma 2 di una


matrice si dice NORMA SPETTRALE e viene definita in seguito. Inoltre vale che:
Se si moltiplica una matrice A o un vettore b a sinistra per un’opportuna matrice di
permutazione P, si possono realizzare scambi di righe in A oppure di componenti in b.

Il condizionamento di un sistema lineare non dipende dalla norma scelta. Pertanto, se un


sistema è ben/mal condizionato rispetto alla norma 1, lo è pure, per esempio, rispetto alla
norma infinito.

METODI NUMERICI:
Si descrivono ora alcuni metodi numerici e gli algoritmi, che implementano i suddetti metodi,
per la risoluzione di sistemi lineari di ordine n. Per ciascun algoritmo verrà fornito il COSTO
COMPUTAZIONALE, ovvero il numero di operazioni aritmetiche (addizioni e moltiplicazioni)
che esso richiede per la sua esecuzione. Nel caso dei sistemi lineari il costo è legato alla
dimensione n del sistema e, in generale, viene quantificato il numero di operazioni per valori
di n grandi.

1. matrice triangolare superiore: metodo di sostituzione all’indietro


2. matrice triangolare inferiore: metodo di sostituzione in avanti
3. METODO DI ELIMINAZIONE DI GAUSS

Il costo computazionale in termini di moltiplicazioni del metodo


delle eliminazioni di Gauss è essenzialmente:
Questo metodo si può usare quando la matrice A del
sistema Ax=b non ha una struttura particolare

Il metodo delle eliminazioni di Gauss consta essenzialmente di due fasi:


Trasformazione, in n − 1 passi, del sistema assegnato Ax = b nel sistema Ux = b̄
equivalente a quello assegnato (ovvero che ammette la stessa soluzione x), con U
matrice triangolare superiore; e risoluzione del sistema Ux = b̄ mediante la tecnica di
sostituzione all’indietro.

FATTORIZZAZIONE PA=LU
il metodo delle eliminazioni di Gauss, quando non richiede scambi, realizza la fattorizzazione
della matrice A (A=LU) ove U è la matrice triangolare superiore del sistema equivalente al
sistema di partenza e L è la matrice triangolare inferiore dei moltiplicatori con diagonale
unitaria. In caso di scambi, il metodo delle eliminazioni diGauss realizza la seguente
fattorizzazione della matrice A (PA=LU) ove U è triangolare superiore, L è triangolare
inferiore con diagonale unitaria e P è una matrice di permutazione, definita dagli scambi
richiesti dal metodo.
Il PIVOTING PARZIALE è quella strategia che permette di garantire una maggiore
accuratezza della soluzione RIARRANGIANDO LE RIGHE AD OGNI PASSO IN MODO DA
AVERE NUMERI MAGGIORI NELLA DIAGONALE. Esso è superfluo quando A è diagonale
dominante per colonne oppure simmetria definita positiva.

FATTORIZZAZIONE DI CHOLESKY A=R’R


Sia A una matrice SIMMETRICA e definita POSITIVA. Si dimostra che per
essa esiste ed è unica la fattorizzazione A=R’R, ove R è una matrice
triangolare superiore con elementi positivi sulla diagonale principale.
FATTORIZZAZIONE QR
Ogni matrice A è fattorizzabile nella forma A=QR con Q ORTOGONALE ed R con
pseudo-TRIANGOLARE SUPERIORE. I vettori colonna della matrice Q sono a due a due
ortogonali. La fattorizzazione QR di una matrice A, in generale, non è unica.

RISOLUZIONE DI UN SISTEMA LINEARE DETERMINATO


Per la risoluzione di un sistema lineare Ax = b, con A ∈ Rn,n non singolare, noti i fattori Q e
R della fattorizzazione A = QR, con Q ∈ Rn,n ortogonale e R ∈ Rn,n triangolare superiore
e non singolare, si procede nel seguente modo:

Si osservi che, se i fattori Q e R non sono noti, tale procedura non è conveniente dal punto
di vista del costo computazionale, perché il calcolo dei suddetti fattori richiede un numero di
operazioni aritmetiche superiore a quello richiesto dal calcolo dei fattori della fattorizzazione
PA = LU.

RISOLUZIONE DI UN SISTEMA LINEARE SOVRADETERMINATO


Un sistema si dice sovradeterminato se il numero m delle equazioni lineari (vincoli) è
superiore al numero n delle incognite (gradi di libertà). Un sistema sovradeterminato può
non ammettere soluzione in senso classico. In altre parole, indipendentemente dal rango,
massimo o non, della matrice A, può non esistere un vettore x che soddisfi
contemporaneamente tutte le equazioni del sistema Ax = b e per il quale, quindi, Ax − b è il
vettore identicamente nullo. Se il sistema non ammette soluzione in senso classico, allora si
ricercano i vettori x per i quali il VETTORE RESIDUO Ax − b è piccolo.
Se si sceglie la norma euclidea, il problema della risoluzione del sistema sovradeterminato
Ax = b viene dunque trasformato nel seguente problema di minimo.
AUTOVALORI E VALORI SINGOLARI DI MATRICI

Si osservi che se x è un autovettore con autovalore λ si ha rA (x) = λ.


Pertanto noto l’autovalore λ di A, un corrispondente autovettore può essere calcolato
risolvendo il sistema omogeneo Ax = λx; viceversa, noto un autovettore x, l’autovalore λ ad
esso associato è fornito dal quoziente di Rayleigh.

Una matrice simmetrica A di ordine n è definita positiva se, e solo se, i suoi autovalori sono
tutti positivi.

dove rho indica il rango.


Si studia ora il condizionamento del problema del calcolo degli autovalori di una matrice A
ovvero si analizza come eventuali perturbazioni (corrispondenti, ad esempio, agli errori di
arrotondamento o agli errori sperimentali) presenti negli elementi della matrice si propaghino
sugli autovalori.
METODI PER L’APPROSSIMAZIONE DEGLI AUTOVALORI:
Per il calcolo degli autovalori di A, la procedura matematica − calcolo delle radici λ
dell’equazione caratteristica − non è, in generale, una procedura numerica conveniente.

METODO DELLE POTENZE


Il metodo delle potenze consente di calcolare l’AUTOVALORE DI MODULO MASSIMO di
una matrice A e, conseguentemente, il raggio spettrale ρ(A).

● Se λ1 = −λ2 , cioè se esistono due autovalori distinti di ugual modulo massimo, allora
in generale il metodo delle potenze non converge.
● Se λ1 e λ2 sono complessi e coniugati, cioè se esistono due autovalori complessi
distinti di ugual modulo massimo, allora il metodo delle potenze non converge
perché, cosı̀ come è stato formulato, non può convergere ad autovettori e autovalori
complessi.

METODO DELLE POTENZE INVERSE


Una variante del metodo delle potenze, detta metodo delle potenze inverse, consente di
approssimare un qualunque autovalore λ di A purché se ne conosca un’approssimazione p.
METODO QR
Il metodo più efficiente e più usato per il calcolo di tutti gli autovalori, ed eventualmente
autovettori, di una matrice A è il metodo QR, il cui nome deriva dal fatto che esso di basa
sulla fattorizzazione A = QR

VALORI SINGOLARI E DECOMPOSIZIONE SVD


Le nozioni di autovalore, determinante e inversa perdono di significato per una matrice
rettangolare; esse vengono sostituite rispettivamente con le nozioni più generali di valore
singolare, rango e pseudo-inversa di una matrice. Il termine valore singolare è collegato al
fatto che mediante tali quantità è possibile misurare la distanza di una matrice dall’insieme
delle matrici singolari.
Tenendo conto che U e V sono ORTOGONALI, la decomposizione ai valori singolari si può
scrivere anche nella forma:

Potrebbero piacerti anche