Salta al contenuto
Note per Studenti Esercizio - Interpolazione lineare a tratti di sin x, errore e numero di intervalli

Esercizio - Interpolazione lineare a tratti di sin x, errore e numero di intervalli

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 approssima f(x)=sin⁡xf(x) = \sin x con l'interpolante lineare a tratti.

  • (a) Con i nodi 0, 0,5, 1, 1,50,\ 0{,}5,\ 1,\ 1{,}5 (valori 0, 0,479426, 0,841471, 0,9974950,\ 0{,}479426,\ 0{,}841471,\ 0{,}997495) stimare sin⁡0,8\sin 0{,}8 e confrontare l'errore con il maggiorante teorico.
  • (b) Dimostrare il maggiorante h28max⁡∣f′′∣\frac{h^2}{8}\max|f''| per un intervallo di lunghezza hh.
  • (c) Quanti intervalli uguali servono su [0,π][0,\pi] per garantire un errore ≤10−3\le 10^{-3}?
  • (d) Domanda teorica: di quanto cala l'errore se si dimezza il passo? Confrontare con l'interpolazione quadratica a tratti.

Soluzione

(a) Stima di sin⁡0,8\sin 0{,}8

0,8∈[0,5, 1]0{,}8 \in [0{,}5,\ 1]. L'interpolante lineare è s(0,8)=y1+y2−y11−0,5(0,8−0,5)=0,479426+0,841471−0,4794260,5⋅0,3=0,479426+0,724090⋅0,3=0,696653.s(0{,}8) = y_1 + \frac{y_2 - y_1}{1 - 0{,}5}(0{,}8 - 0{,}5) = 0{,}479426 + \frac{0{,}841471 - 0{,}479426}{0{,}5}\cdot 0{,}3 = 0{,}479426 + 0{,}724090\cdot 0{,}3 = 0{,}696653. Valore esatto sin⁡0,8=0,717356\sin 0{,}8 = 0{,}717356; errore 0,02070{,}0207. Maggiorante: h=0,5h = 0{,}5, max⁡∣f′′∣=max⁡∣sin⁡∣≤1\max|f''| = \max|\sin| \le 1, quindi 0,258⋅1=0,03125\frac{0{,}25}{8}\cdot 1 = 0{,}03125; 0,0207≤0,031250{,}0207 \le 0{,}03125 ✓. Si può restringere con il valore locale: nel punto x=0,8x = 0{,}8 l'errore è ∣f′′(ξ)∣2∣(0,8−0,5)(0,8−1)∣=∣sin⁡ξ∣2⋅0,06\frac{|f''(\xi)|}{2}|(0{,}8 - 0{,}5)(0{,}8 - 1)| = \frac{|\sin\xi|}{2}\cdot 0{,}06 e con sin⁡ξ≈0,69\sin\xi \approx 0{,}69 (cioè ξ≈0,76\xi \approx 0{,}76) dà proprio 0,02070{,}0207.

(b) Dimostrazione

In [xi,xi+1][x_i, x_{i+1}] l'interpolante è il polinomio di grado 11 nei due nodi, quindi per la formula dell'errore (Interpolazione polinomiale - forma di Lagrange, differenze divise ed erroreDati n+1 punti con ascisse distinte esiste un unico polinomio p_n di grado ≤ n che passa per tutti. Forma di Lagrange p = Σ y_i L_i(x) (L_i(x_j) = δ_ij); forma di Newton p = Σ f[x_0..x_k] Π_{j<k}(x − x_j) con le differenze divise (si aggiunge un nodo senza rifare tutto). Errore f(x) − p_n(x) = f^(n+1)(ξ)/(n+1)! · ω(x), ω(x) = Π(x − x_i): dipende da f e dalla scelta dei nodi. Nodi equispaziati con n grande danno il fenomeno di Runge; i nodi di Chebyshev minimizzano max|ω| = 2^(−n) su [−1,1].Interpolazione polinomiale - forma di Lagrange, differenze divise ed errore →) f(x)−s(x)=f′′(ξ)2(x−xi)(x−xi+1).f(x) - s(x) = \frac{f''(\xi)}{2}(x - x_i)(x - x_{i+1}). La funzione q(x)=(x−xi)(x−xi+1)q(x) = (x - x_i)(x - x_{i+1}) è una parabola con zeri nei nodi e minimo nel punto medio, dove vale −(h2)2=−h24-\left(\frac h2\right)^2 = -\frac{h^2}{4}; quindi ∣q∣≤h24|q| \le \frac{h^2}{4} e ∣f−s∣≤max⁡∣f′′∣2⋅h24=h28max⁡∣f′′∣.|f - s| \le \frac{\max|f''|}{2}\cdot\frac{h^2}{4} = \frac{h^2}{8}\max|f''|.

(c) Numero di intervalli

Con max⁡∣f′′∣=1\max|f''| = 1 e h=πNh = \frac{\pi}{N}: h28≤10−3  ⟺  h≤8⋅10−3=0,08944  ⟺  N≥π0,08944=35,12\frac{h^2}{8} \le 10^{-3} \iff h \le \sqrt{8\cdot 10^{-3}} = 0{,}08944 \iff N \ge \frac{\pi}{0{,}08944} = 35{,}12, quindi N=36\mathbf{N = 36} intervalli (h=0,0873h = 0{,}0873). Verifica numerica: con N=36N = 36 il maggiorante vale 9,52⋅10−49{,}52\cdot10^{-4} e l'errore massimo effettivo 9,51⋅10−49{,}51\cdot 10^{-4} (quasi uguale: il massimo di ∣sin⁡∣|\sin| è 11 nell'intervallo contenente π2\frac\pi2 e il punto medio coincide quasi con il massimo); con N=35N=35 il maggiorante sarebbe 1,007⋅10−3>10−31{,}007\cdot 10^{-3} > 10^{-3}.

(d) Dimezzare il passo

L'errore è O(h2)O(h^2): dimezzando hh si divide per 44. Con polinomi di grado dd a tratti l'errore è O(hd+1)O(h^{d+1}): quadratica a tratti (d=2d=2) darebbe O(h3)O(h^3), divisione per 88; cubica O(h4)O(h^4) (divisione per 1616).

Risultati. s(0,8)=0,696653s(0{,}8) = \mathbf{0{,}696653} (errore 0,0207≤0,031250{,}0207 \le 0{,}03125); N=36N = \mathbf{36} intervalli.

Errori tipici

  • Usare h24\frac{h^2}{4} o h22\frac{h^2}{2} al posto di h28\frac{h^2}{8}: il fattore 18\frac18 viene da 12\frac12 (formula dell'errore) per 14\frac14 (massimo di ∣q∣|q|).
  • Inserire hh come larghezza totale b−ab-a invece che come ampiezza del singolo intervallo.

Versione ripasso

(a) In [0,5,1][0{,}5,1]: s(0,8)=0,479426+0,841471−0,4794260,5⋅0,3=0,696653s(0{,}8)=0{,}479426+\frac{0{,}841471-0{,}479426}{0{,}5}\cdot0{,}3=0{,}696653 (sin⁡0,8=0,717356\sin0{,}8=0{,}717356, errore 0,02070{,}0207); maggiorante 0,528=0,03125\frac{0{,}5^2}8=0{,}03125 (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) f−s=f′′(ξ)2(x−xi)(x−xi+1)f-s=\frac{f''(\xi)}2(x-x_i)(x-x_{i+1}); ∣(x−xi)(x−xi+1)∣≤h24|(x-x_i)(x-x_{i+1})|\le\frac{h^2}4 (punto medio): ∣f−s∣≤h28max⁡∣f′′∣|f-s|\le\frac{h^2}8\max|f''|.

(c) h28≤10−3⇒h≤0,08944⇒N≥π0,08944=35,12\frac{h^2}8\le10^{-3}\Rightarrow h\le0{,}08944\Rightarrow N\ge\frac\pi{0{,}08944}=35{,}12, N=36N=36 (maggiorante 9,52⋅10−49{,}52\cdot10^{-4}, errore vero 9,51⋅10−49{,}51\cdot10^{-4}); N=35N=35 darebbe 1,007⋅10−31{,}007\cdot10^{-3}.

(d) O(h2)O(h^2): dimezzando hh, errore /4/4; grado dd a tratti O(hd+1)O(h^{d+1}) (/8/8 per la quadratica, /16/16 per la cubica).

Errori tipici: h24\frac{h^2}4 o h22\frac{h^2}2 al posto di h28\frac{h^2}8 (è 12⋅14\frac12\cdot\frac14); h=b−ah=b-a invece dell'ampiezza di un intervallo.

Teoria collegata