Calcolo Numerico
Aritmetica ed errori
Rappresentazione Floating-Point
a = (-1)s pn
N* ≤ p ≤ 1
1 BIT SEGNO
52 BIT MANTISSA
11 BIT ESPONENTE
Esiste: Regione di Underflow e Overflow
Tipi di errori
no di cifre di mantissa: rounding to even
- Arrotondamento → se equidistante → arrotonda al no par
- → se + vicino ad uno
Errore Assoluto ea: |x- x̅| Errore Relativo er: |x- x̅|/|x| x ≠ 0
Operazione di Macchina: 2 numeri di macchina e poi arrotondati
- Vale: Commutativa: Somma e prodotto
- Non vale: Associativa e distributiva
Cancellazione Numerica
Quando? sottrazione tra 2 numeri simili
Calcolo Numerico
Aritmetica ed errori
Rappresentazione Floating-Point
a = (-1)s pN
N'1 ≤ p ≤ 1
1 bit segno52 bit mantissa11 bit esponente
Esiste: Regione di Underflow e Overflow
Tipi di errori
- N° di cifre di mantissa: rounding to even
- Arrotondamento → se equidistante → arrotonda al n° par
- → se + vicino ad uno
- Errore assoluto ea = |x-x|
- Errore relativo er = |x-x|/|x| x≠0
- Operazioni di macchina: 2 numeri di macchina e poi arrotondati
- Vale: Commutativa - Somma e Prodotto
- Non Vale: Associativa e Distributiva
Cancellazione Numerica
Quando? Sottrazione tra 2 numeri simili
Soluzioni possibili alla cancellazione numerica
- Alzare precisione di macchina (no vera soluzione)
- Razionalizzazione:
- Taylor - attenzione: non sempre possibile xkè num.i troppo grandi
- Trigonometria
forma esplicita y = f(x) forma implicita: f(x, y) = 0
Condizionamento di un problema numerico
DA y = f(x)
Trovare K t.c. |y2 - y1| / |y1| ≤ K (|fj, x1|x - x1| / |x|) K n° di condizionamento
Algoritmo è stabile se |y(c) - y(f)| / |y(f)| < εm
Approssimazione di dati e funzioni
Criterio dell'interpolazione
- Interpolazione con una funzione lineare
- Interpolazione polinomiale
Alcune funzioni d'ordine con condizioni di regolarità
Unico polinomio
Approssimazione polinomiale
Interpolazione polinomiale
Criterio di approssimazione
Unicità ed esistenza del polinomio interpolante
- Di grado n
- Polinomio non nullo
- Ha n+1 zeri (n+1 = n° punti)
es esercizio:
PONOMI di GRADO: n=5,9,13 che INTERPOLANO
f(x)=1⁄(1+x^2) in nodi equidistanti in (a,b) e, per
Ciascuno dei 3 casi rappresentare graficamente
RIPETERE con i nodi di CHEBYSHEV
ti=-cos((2i-1)π⁄2(n+1)) i=1, ... , n+1
definiti sull'intervallo [-1,1] e opportunamente
trasformati in [a,b] mediante xi=b-ati+b+a⁄2
clc
clear all
f=@(x) 1./(1+x.^2)
a=-5;
b=5;
for n=5:4:13
X=linspace (a,b,n+1);
n=0(1)
y = f(x);
c = polyfit(x, y, n);
z = linspace(a, b);
fz = f(z)
p = polyval(c, z);
plot(x, y, 'k', z, fz, 'r', z, p, 'b', 'linewidth',
end
2) CHEBYCHEV
clc
clear all
f = @(x) 1./(1+x.^2)
a = -1;
b = 1;
for n = 5:4:13
i = 1: n+1;
t = -cos((2*i-1)*pi)/(2*(n+1)));x = ((b-a)/2)*t + (b+a)/2);y = f(x);c = polyfit(x, y, n);
z = linspace(a, b);fz = f(z);p = polyval(c, z);
plot(x, y, 'ko', z, fz, 'r', z, p, 'b', 'linewidth', 2);errore = max(abs(fz-p))
RAPPRESENTAZIONE di LAGRANGE del POLINOMIO
RISULTATO: STESSO PUNTO DELL’INTERPOLANTEPER CIASCUN NODO SI DEFINISCE UN POLINOMIO
es: 4 NODI xi = {x1, x2, x3, x4} = {0, 1, 2, π/2}
ℓ1 = ((x - x2))((x - x3))((x - x4)) / ((x1 - x2))((x1 - x3))((x1 - x4))
₂ = (−₁)(−₃)(−₄) ...
(₂−₁)(₂−₃)(₂−₄)
=ᵢ(₃) = 0 ≠
ₙ() = ()−ₙ() -
'̀ ;
° → ̄̄ = → ||||∞ = x ∈ [,b]|()|
+
ₙ
||ₙ||∞= x ∈ [,b] |()−(x)|
̀
- -
CHEBYSHEV
ξi := cos &LeftParen;½(2i - 1)π&RightParen;h ∈ [-1, 1]
CHEBYSHEV-LOBATTO
ξi := cos &LeftParen;½(i - 1)π&RightParen;n ∈ [-1, 1]
i = 1, ..., n+1
INTERPOLAZIONE A TRATTI: SPLINE
- Utilizza polinomi diversi e basso grado per ogni sotto-intervallo
- Max grado d - stesso per ogni sotto-intervallo
- Soddisfa condizioni di interpolazione
- La derivata del polinomio è continua
SPLINE di ORDINE 1
d = 1 - Tutte le derivate fino alla (d-1) sono continue
Funziona come la ricerca di retta tra 2 punti
h = max1≤i≤n (xi+1 - xi) allora ||f - Sh||∞ = O(h2)
Spline cubiche
d=3
S3(x) è un polinomio di terzo grado
Ogni sottointervallo ha 4 condizioni da rispettare:
- Polinomio cubico su ciascuno
- Spline deve essere interpolante + ogni estremo sinistro agganciato con il dx
- Continua in tutti i punti di raccordo
- Derivata seconda deve essere continua
Spline cubiche
- Naturali
- Derivata seconda = zero ai nodi
- Not-a-knot
- La continuità della deriv. terza nei nodi x2-xn ⇒ Equazione tra coeff.
- Vincolate
- Vincoli agli estremi f''(x) = derivate calcolate