Esercitazione 2
Esercizio 1 (smoothing spline)
Il comando MatLab csaps restituisce una spline cubica liscia dato un insieme di dati x e y (doc csaps) eseguendo uno smoothing al variare di un parametro p che pesa, mediante combinazione convessa, lo scostamento dai dati e la curvatura (derivata seconda) della funzione. Questo comando trova applicazione quando si desidera “ricostruire” una funzione a partire da una serie di dati affetti da rumore. L’esercizio consiste nel partire da una funzione del tipo
f(x) = sin(t)
nell’intervallo [0, 4π], aggiungere un rumore gaussiano a media nulla e varianza nota (ad esempio 0.1), ed approssimare la funzione con il comando csaps al variare di p.
Per generare un rumore gaussiano si utilizzi il comando MatLab randn.
0 2 4 6 8 10 12 14
−2
−1.5
−1
−0.5 0 0.5 1 1.5
vera 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Figura 1: Approssimazione al variare di p.
1
Esercizio 2
Si valuti il problema dell’interpolazione della funzione di Runge:
f(x) = 1 1 + x2 mediante interpolazione nell’intervallo I = [−5, 5]
Si costruiscano i polinomi interpolanti di Lagrange Pn(x) di grado n = 5, 10 su nodi equispaziati e si verifichi il tipico fenomeno di Runge.
Si approssimi poi la funzione tramite spline cubica naturale e spline cubica completa inter- polante usando sei e undici nodi equispaziati. Si rappresenti graficamente l’andamento delle approssimanti spline e dell’interpolazione di Lagrange.
−5 0 5
−0.2 0 0.2 0.4 0.6 0.8 1 1.2
Funzione e approssimanti per n=5
fun InterpLag nodi spl−nat sp−comp
−5 0 5
−0.5 0 0.5 1 1.5 2
Funzione e approssimanti per n=10
fun InterpLag nodi spl−nat sp−comp
Figura 2: Funzione di Runge.
2
Si consideri invece la funzione
f(x) =
1 x < 0
−1 x ≥ 0
Si approssimi la funzione in [−1, 1] tramite interpolazione polinomiale e spline cubica naturale e completa interpolante usando n nodi equispaziati, con n numero pari.
−5 0 5
−2
−1.5
−1
−0.5 0 0.5 1 1.5 2
Funzione e interpolanti, n=6
fun IntLagr nodi spl−nat spl−comp
−5 0 5
−7
−6
−5
−4
−3
−2
−1 0 1 2 3
Funzione e interpolanti, n=10
fun IntLagr nodi spl−nat spl−comp
Figura 3: Funzione a gradino.
3
Esercizio 3
Si consideri la base delle potenze troncate
{(t + 1)+,(t − 0)+,(t − ε)+,(t − 1)+} con ε > 0 e piccolo.
Calcolare la spline s(t) di grado 1, che soddisfi le seguenti condizioni nei nodi xi = 0, ε, 1, 2.
s(0) = 1, s(ε) = −1, s(1) = 0, s(2) = 0.
La spline di grado 1 dovrebbe essere identicamente nulla per t > 1, si provi a vedere cosa accade per valori abbastanza grandi di t, (t = 1016).
Risolvere lo stesso problema di interpolazione usando B-spline di grado 1 e valutarne la stabilit`a per valori grandi di t.
4