Salta al contenuto
Note per Studenti Esercizio - Spline cubica naturale su quattro nodi, momenti e continuità delle derivate

Esercizio - Spline cubica naturale su quattro nodi, momenti e continuità delle derivate

In questa pagina 3

Teoria: Interpolazione a tratti, spline cubiche e minimi quadratiInvece di un polinomio di grado alto si usano polinomi di grado basso su ogni intervallo. Lineare a tratti: errore ≤ h²/8·max|f''|. Spline cubica: polinomio di grado 3 su ogni intervallo, di classe C² nei nodi; i momenti M_i = S''(x_i) risolvono un sistema tridiagonale (h_{i−1}/6)M_{i−1} + ((h_{i−1}+h_i)/3)M_i + (h_i/6)M_{i+1} = differenza tra le pendenze dei due intervalli adiacenti, con due condizioni agli estremi (naturale M_0 = M_n = 0, vincolata, not-a-knot); errore O(h⁴), nessun fenomeno di Runge. Minimi quadrati: con più dati che parametri si minimizza ‖Ac − y‖², cioè si risolvono le equazioni normali AᵀA c = Aᵀy (proiezione ortogonale di y sulle colonne di A); la retta di regressione minimizza la somma dei quadrati dei residui e i residui sono ortogonali alle colonne.Interpolazione a tratti, spline cubiche e minimi quadrati →.

Testo

Si considerano i punti (0,1)(0,1), (1,2)(1,2), (2,0)(2,0), (3,3)(3,3) e la spline cubica interpolante naturale SS.

  • (a) Contare le condizioni e spiegare perché servono quelle agli estremi.
  • (b) Scrivere e risolvere il sistema per i momenti Mi=S′′(xi)M_i = S''(x_i).
  • (c) Scrivere SS sull'intervallo [0,1][0,1] e calcolare S(0,5)S(0{,}5), S(1,5)S(1{,}5), S(2,5)S(2{,}5).
  • (d) Verificare la continuità di S′S' nei nodi x=1x=1 e x=2x=2.

Soluzione

(a) Condizioni

Quattro nodi, tre intervalli: 4⋅3=124\cdot 3 = 12 coefficienti. Condizioni: interpolazione 2⋅3=62\cdot 3 = 6; continuità di S′S' e di S′′S'' nei due nodi interni 2+2=42 + 2 = 4. Totale 10<1210 < 12: mancano due condizioni, assegnate agli estremi. Per la spline naturale S′′(0)=S′′(3)=0S''(0) = S''(3) = 0, cioè M0=M3=0M_0 = M_3 = 0.

(b) Sistema dei momenti

Nodi equispaziati con h=1h = 1: Mi−1+4Mi+Mi+1=6(yi−1−2yi+yi+1)M_{i-1} + 4M_i + M_{i+1} = 6(y_{i-1} - 2y_i + y_{i+1}) per i=1,2i = 1, 2.

  • i=1i=1: M0+4M1+M2=6(1−4+0)=−18M_0 + 4M_1 + M_2 = 6(1 - 4 + 0) = -18, cioè 4M1+M2=−184M_1 + M_2 = -18.
  • i=2i=2: M1+4M2+M3=6(2−0+3)=30M_1 + 4M_2 + M_3 = 6(2 - 0 + 3) = 30, cioè M1+4M2=30M_1 + 4M_2 = 30.

Dalla prima M2=−18−4M1M_2 = -18 - 4M_1; nella seconda M1−72−16M1=30M_1 - 72 - 16M_1 = 30, quindi −15M1=102-15M_1 = 102 e M1=−6,8M_1 = -6{,}8, M2=−18+27,2=9,2M_2 = -18 + 27{,}2 = 9{,}2.

(c) SS su ciascun intervallo

Formula con h=1h = 1: Si(x)=Mi(xi+1−x)3+Mi+1(x−xi)36+(yi−Mi6)(xi+1−x)+(yi+1−Mi+16)(x−xi)S_i(x) = \frac{M_i(x_{i+1}-x)^3 + M_{i+1}(x - x_i)^3}{6} + \left(y_i - \frac{M_i}6\right)(x_{i+1} - x) + \left(y_{i+1} - \frac{M_{i+1}}6\right)(x - x_i).

  • [0,1][0,1]: M0=0M_0 = 0, M1=−6,8M_1 = -6{,}8. y0−M06=1y_0 - \frac{M_0}{6} = 1, y1−M16=2+1,1333=3,1333y_1 - \frac{M_1}6 = 2 + 1{,}1333 = 3{,}1333. Quindi S0(x)=−6,86x3+1⋅(1−x)+3,1333 x=−1,1333 x3+2,1333 x+1.S_0(x) = -\frac{6{,}8}{6}x^3 + 1\cdot(1 - x) + 3{,}1333\,x = -1{,}1333\,x^3 + 2{,}1333\,x + 1. Controllo: S0(0)=1S_0(0) = 1 ✓, S0(1)=−1,1333+2,1333+1=2S_0(1) = -1{,}1333 + 2{,}1333 + 1 = 2 ✓. S(0,5)=−1,1333⋅0,125+1,0667+1=1,925S(0{,}5) = -1{,}1333\cdot 0{,}125 + 1{,}0667 + 1 = \mathbf{1{,}925}.
  • [1,2][1,2]: y1−M16=3,1333y_1 - \frac{M_1}6 = 3{,}1333, y2−M26=−1,5333y_2 - \frac{M_2}6 = -1{,}5333. S1(x)=−6,8(2−x)3+9,2(x−1)36+3,1333(2−x)−1,5333(x−1)S_1(x) = \frac{-6{,}8(2-x)^3 + 9{,}2(x-1)^3}{6} + 3{,}1333(2-x) - 1{,}5333(x-1); in x=1,5x = 1{,}5: (−6,8+9,2)⋅0,1256+3,1333⋅0,5−1,5333⋅0,5=0,05+1,5667−0,7667=0,85\frac{(-6{,}8 + 9{,}2)\cdot 0{,}125}{6} + 3{,}1333\cdot 0{,}5 - 1{,}5333\cdot 0{,}5 = 0{,}05 + 1{,}5667 - 0{,}7667 = \mathbf{0{,}85}.
  • [2,3][2,3]: M2=9,2M_2 = 9{,}2, M3=0M_3 = 0; S2(x)=9,2(3−x)36−1,5333(3−x)+3(x−2)S_2(x) = \frac{9{,}2(3-x)^3}{6} - 1{,}5333(3-x) + 3(x-2); in x=2,5x = 2{,}5: 9,2⋅0,1256−0,7667+1,5=0,1917−0,7667+1,5=0,925\frac{9{,}2\cdot0{,}125}{6} - 0{,}7667 + 1{,}5 = 0{,}1917 - 0{,}7667 + 1{,}5 = \mathbf{0{,}925}.

(d) Continuità della derivata prima

Derivate (con h=1h=1): Si′(x)=−Mi(xi+1−x)2+Mi+1(x−xi)22−(yi−Mi6)+(yi+1−Mi+16)S_i'(x) = \frac{-M_i(x_{i+1}-x)^2 + M_{i+1}(x-x_i)^2}{2} - \left(y_i - \frac{M_i}6\right) + \left(y_{i+1} - \frac{M_{i+1}}6\right).

  • x=1x = 1: da sinistra (i=0i=0): 0+(−6,8)⋅12−1+3,1333=−3,4+2,1333=−1,2667\frac{0 + (-6{,}8)\cdot 1}{2} - 1 + 3{,}1333 = -3{,}4 + 2{,}1333 = -1{,}2667. Da destra (i=1i=1): il primo termine è −(−6,8)⋅1+02=3,4\frac{-(-6{,}8)\cdot 1 + 0}{2} = 3{,}4 e gli altri due −(y1−M16)+(y2−M26)=−3,1333−1,5333=−4,6667-\left(y_1 - \frac{M_1}6\right) + \left(y_2 - \frac{M_2}6\right) = -3{,}1333 - 1{,}5333 = -4{,}6667; somma 3,4−4,6667=−1,26673{,}4 - 4{,}6667 = -1{,}2667 ✓.
  • x=2x = 2: da sinistra (i=1i=1): 0+9,2⋅12−4,6667=4,6−4,6667=−0,0667\frac{0 + 9{,}2\cdot 1}{2} - 4{,}6667 = 4{,}6 - 4{,}6667 = -0{,}0667. Da destra (i=2i=2): −9,2⋅1+02−(−1,5333)+3=−4,6+1,5333+3=−0,0667\frac{-9{,}2\cdot 1 + 0}{2} - (-1{,}5333) + 3 = -4{,}6 + 1{,}5333 + 3 = -0{,}0667 ✓.

Le derivate coincidono: S′(1)=−1,2667S'(1) = -1{,}2667 e S′(2)=−0,0667S'(2) = -0{,}0667.

Risultati. M=(0, −6,8, 9,2, 0)M = (0,\ -6{,}8,\ 9{,}2,\ 0); S(0,5)=1,925S(0{,}5) = \mathbf{1{,}925}, S(1,5)=0,85S(1{,}5) = \mathbf{0{,}85}, S(2,5)=0,925S(2{,}5) = \mathbf{0{,}925}; S′(1)=−1,2667S'(1) = -1{,}2667, S′(2)=−0,0667S'(2) = -0{,}0667.

Errori tipici

  • Dimenticare i fattori 66 e h2h^2 nel membro destro del sistema dei momenti (per h≠1h\ne 1 è 6h2\frac{6}{h^2}).
  • Usare M0M_0, MnM_n nelle equazioni come incognite non nulle: per la naturale sono 00.
  • Concludere che la spline è "più oscillante" perché ∣Mi∣|M_i| è grande: i momenti sono curvature, la spline resta comunque vicina ai dati.

Versione ripasso

(a) 33 intervalli: 1212 coefficienti; condizioni 6+4=106+4=10; mancano due: naturale M0=M3=0M_0=M_3=0 (Interpolazione a tratti, spline cubiche e minimi quadratiInvece di un polinomio di grado alto si usano polinomi di grado basso su ogni intervallo. Lineare a tratti: errore ≤ h²/8·max|f''|. Spline cubica: polinomio di grado 3 su ogni intervallo, di classe C² nei nodi; i momenti M_i = S''(x_i) risolvono un sistema tridiagonale (h_{i−1}/6)M_{i−1} + ((h_{i−1}+h_i)/3)M_i + (h_i/6)M_{i+1} = differenza tra le pendenze dei due intervalli adiacenti, con due condizioni agli estremi (naturale M_0 = M_n = 0, vincolata, not-a-knot); errore O(h⁴), nessun fenomeno di Runge. Minimi quadrati: con più dati che parametri si minimizza ‖Ac − y‖², cioè si risolvono le equazioni normali AᵀA c = Aᵀy (proiezione ortogonale di y sulle colonne di A); la retta di regressione minimizza la somma dei quadrati dei residui e i residui sono ortogonali alle colonne.Interpolazione a tratti, spline cubiche e minimi quadrati →).

(b) h=1h=1: Mi−1+4Mi+Mi+1=6(yi−1−2yi+yi+1)M_{i-1}+4M_i+M_{i+1}=6(y_{i-1}-2y_i+y_{i+1}): 4M1+M2=−184M_1+M_2=-18, M1+4M2=30M_1+4M_2=30 ⇒\Rightarrow M1=−6,8M_1=-6{,}8, M2=9,2M_2=9{,}2.

(c) Si=Mi(xi+1−x)3+Mi+1(x−xi)36+(yi−Mi6)(xi+1−x)+(yi+1−Mi+16)(x−xi)S_i=\frac{M_i(x_{i+1}-x)^3+M_{i+1}(x-x_i)^3}6+(y_i-\frac{M_i}6)(x_{i+1}-x)+(y_{i+1}-\frac{M_{i+1}}6)(x-x_i); costanti 3,13333{,}1333 e −1,5333-1{,}5333. S0=−1,1333x3+2,1333x+1S_0=-1{,}1333x^3+2{,}1333x+1; S(0,5)=1,925S(0{,}5)=1{,}925, S(1,5)=0,05+1,5667−0,7667=0,85S(1{,}5)=0{,}05+1{,}5667-0{,}7667=0{,}85, S(2,5)=0,1917−0,7667+1,5=0,925S(2{,}5)=0{,}1917-0{,}7667+1{,}5=0{,}925.

(d) S′(1)=−3,4+2,1333=3,4−4,6667=−1,2667S'(1)=-3{,}4+2{,}1333=3{,}4-4{,}6667=-1{,}2667 (sinistra e destra); S′(2)=4,6−4,6667=−4,6+1,5333+3=−0,0667S'(2)=4{,}6-4{,}6667=-4{,}6+1{,}5333+3=-0{,}0667.

Formula delle derivate (h=1h=1): Si′(x)=−Mi(xi+1−x)2+Mi+1(x−xi)22−(yi−Mi6)+(yi+1−Mi+16)S_i'(x)=\frac{-M_i(x_{i+1}-x)^2+M_{i+1}(x-x_i)^2}2-(y_i-\frac{M_i}6)+(y_{i+1}-\frac{M_{i+1}}6). Seconde: S′′(xi)=MiS''(x_i)=M_i per costruzione, quindi C2C^2 automatica; C1C^1 è l'equazione dei momenti.

Errori tipici: dimenticare 66 e 1h2\frac1{h^2} nel termine noto; trattare M0M_0, MnM_n come incognite per la naturale.

Teoria collegata