Le Spline Cubiche
Transcript
Le Spline Cubiche Enrico Bertolazzi Introduzione • Motivazioni • Derivazione delle spline cubiche • Condizioni al contorno • Proprietà di approssimazione Cosa uno si aspetta D m = {a = x 0m < x1m < ... < x nmm = b} D m = max x k m k +1 -x m k • Fissiamo un intervallo [a,b] • Prendiamo una successione di nodi Δm • Assumiamo che ||Δm|| tenda a 0 E’ vero che pm(x) tende a f(x) puntualmente ? Un esempio negativo • Esistono casi in cui l’interpolazione polinomiale fallisce. • L’esempio di Runge f(x) = 1 / (1+x2) con 11 punti di interpolazione equispaziati nell’intervallo [-5,5]. E cambiando i nodi ? f (n +1) (x ) f (x) - p(x) = (x - x 0 )(x - x1 )...(x - x n ) (n + 1)! • Usando i nodi di Tchebichev le cose migliorano notevolmente • Quindi sembrerebbe che scegliendo bene i nodi si ottiene la convergenza Due risultati apparentemente contrastanti • (Bernstein-Weierstrass, 1885) Data una qualunque funzione f(x) continua su [a,b] esiste successione di polinomi pm(x) tale che • pm - f Æ 0 • (Faber, G., 1914) Data una qualuque successione di nodi Δm con ||Δm|| che tende a 0, esiste una funzione f(x) continua tale che: pm - f Æ 0 • Cosa possiamo concludere ? • I polinomi non sono in generale un buon metodo per approssimare funzioni continue • Perlomeno se pensiamo di utilizzare un singolo polinomio di grado elevato per approssimare la funzione in tutto l’intervallo che ci interssa • Una possibile soluzione sta nell’utilizzare tanti polinomi di grado basso su piccoli intervalli. Proprietà della Spline S(x): • • • dati i punti di interpolazione pk=(xk,yk) con k=0,1,2,...,n: • La spline ristretta nell’intervallo [xk-1,xk] è un polinomio di La spline deve interpolare i punti dati La spline deve essere una funzione C2[x0,xn] grado al più 3. In generale Ï S1 (x) per x Œ [x 0 , x1 ], Ô Ô S2 (x) per x Œ [x1, x 2 ], S(x) = Ì Ô ÔÓ Sn (x) per x Œ [x n-1, x n ], Dove Sk (x) = ak + bk (x - x k-1 ) + c k (x - x k-1 ) 2 + dk (x - x k-1 ) 3 Equazioni per la spline 2n Condizioni di interpolazione Sk (x k ) = y k , Sk (x k-1 ) = y k-1, k = 1,2,...,n 2n-2 Condizioni di continuità ¢ (x k ), Sk¢¢(x k ) = Sk-1 ¢¢ (x k ), Sk¢ (x k ) = Sk-1 k = 1,2,...,n -1 Totale 4n-2 condizioni Conteggio delle incognite Ci sono n polinomi da determinare Sk (x) = ak + bk (x - x k-1 ) + c k (x - x k-1 ) 2 + dk (x - x k-1 ) 3 ogni polinomio consta di 4 parametri Totale 4n incognite. Mancano 2 condizioni per “chiudere” il sistema Condizioni al contorno • • Per chiudere il sistema basta specificare altre due condizioni • Oppure specificando le derivate seconde della spline in x0 • Ad esempio specificando le derivate prime della spline in x0 e in xn e in xn. Fissando a 0 le derivate seconde si ottengono le spline naturali. Altri tipi di condizioni verranno esaminati in seguito Il sistema lineare • Le 4n condizioni prima esposte determinano un sistema lineare di 4n equazioni in 4n incognite • Il sistema ha una struttura complessa ed è sparso: non è facile da risolvere • Esiste un modo più furbo di scrivere il problema ? Definendo con Mk la derivata seconda in xk della spline e usando le condizioni di interpolazione, posso eliminare 2 incognite e scrivere le altre due in funzione di Mk Sk (x k ) = y k = ak + bk (x k - x k-1 ) + c k (x k - x k-1 ) + dk (x k - x k-1 ) Sk (x k-1 ) = y k-1 = ak Sk¢¢(x k ) = M k = 2c k + 6dk (x k - x k-1 ) Sk¢¢(x k-1 ) = M k-1 = 2c k 2 Ottenendo: y k - y k-1 M k + 2M k-1 bk = - (x k - x k-1 ) , x k - x k-1 6 M k-1 M k - M k-1 ak = y k-1, c k = , dk = . 2 6(x k - x k-1 ) 3 L’espressione di Sk(x) ora dipende solo dalle incognite Mk: hk -1/ 2 = x k - x k -1, Ê y k - y k -1 M k + 2M k -1 ˆ Sk (x) = y k -1 + Á - hk -1/ 2 ˜ (x - x k -1 ) 6 Ë hk -1/ 2 ¯ M k -1 M k - M k -1 2 + (x - x k -1 ) + (x - x k -1 ) 3 2 6hk -1/ 2 Rimangono ora solo n+1 ingnite da determinare! Usando l’espressione di Sk(x) e le condizioni di continuità sulla derivata prima: Ê y k - y k-1 M k + 2M k-1 ˆ M k - M k-1 2 Sk¢ (x) = Á - hk-1/ 2 + M (x x ) + (x x ) ˜ k-1 k-1 k-1 6 2hk-1/ 2 Ë hk-1/ 2 ¯ ottengo n-1 equazioni per le Mk Ê y k +1 - y k y k - y k -1 ˆ hk -1/ 2 hk +1/ 2 6 M k -1 + 2M k + M k +1 = Á ˜ hk -1/ 2 + hk +1/ 2 hk -1/ 2 + hk +1/ 2 hk -1/ 2 + hk +1/ 2 Ë hk +1/ 2 hk -1/ 2 ¯ Proprietà del sistema lineare nel caso M0 e Mn assegnate • La matrice (n-1)x(n-1) è tridiagonale • La matrice è a diagonale dominante la matrice è non singolare Varie condizioni al contorno (caso punti equispaziati) • M0=Mn=0, spline rilassate o naturali M =M , ed M =M , estrapolazione 0 1 n-1 n • parabolica • M0=2M1-M2, ed Mn=2Mn-1-Mn-2, estrapolazione cubica (per nodi equispaziati) Esempio di spline naturale (punti equispaziati) Ê4 Á Á1 Á Á Á Á Á ÁÁ Ë 1 4 1 1 4 1 1 4 1 1 4 1 ˆÊ M1 ˆ Ê y 0 - 2y1 + y 2 ˆ ˜Á ˜ Á ˜ ˜Á M 2 ˜ Á y1 - 2y 2 + y 3 ˜ ˜Á M 3 ˜ Á y 2 - 2y 3 + y 4 ˜ ˜Á ˜ 6 Á ˜ ˜Á M 4 ˜ = h 2 Á y 3 - 2y 4 + y 5 ˜ ˜Á M 5 ˜ Á y 4 - 2y 5 + y 6 ˜ 1 ˜Á ˜ Á ˜ 4 1 ˜Á M 6 ˜ y 2y + y 5 6 7˜ Á ˜Á ˜ Á ˜ 1 4 ¯Ë M 7 ¯ Ë y 6 - 2y 7 + y 8 ¯ Estrapolazione parabolica Ê5 1 Á Á1 4 Á 1 Á Á Á Á ÁÁ Ë 1 4 1 1 4 1 ˆÊ M1 ˆ Ê y 0 - 2y1 + y 2 ˆ ˜Á ˜ Á ˜ ˜Á M 2 ˜ Á y1 - 2y 2 + y 3 ˜ ˜Á M 3 ˜ Á y 2 - 2y 3 + y 4 ˜ ˜Á ˜ 6 Á ˜ 1 ˜Á M 4 ˜ = h 2 Á y 3 - 2y 4 + y 5 ˜ Á y 4 - 2y 5 + y 6 ˜ 4 1 ˜Á M 5 ˜ ˜Á ˜ Á ˜ 1 4 1˜Á M 6 ˜ y 5 - 2y 6 + y 7 ˜ Á ˜Á ˜ Á ˜ 1 5¯Ë M 7 ¯ y 2y + y Ë 6 7 8¯ Estrapolazione cubica Ê6 0 Á Á1 4 Á 1 Á Á Á Á ÁÁ Ë 1 4 1 1 4 1 ˆÊ M1 ˆ Ê y 0 - 2y1 + y 2 ˆ ˜Á ˜ Á ˜ ˜Á M 2 ˜ Á y1 - 2y 2 + y 3 ˜ ˜Á M 3 ˜ Á y 2 - 2y 3 + y 4 ˜ ˜Á ˜ 6 Á ˜ 1 ˜Á M 4 ˜ = h 2 Á y 3 - 2y 4 + y 5 ˜ Á y 4 - 2y 5 + y 6 ˜ 4 1 ˜Á M 5 ˜ ˜Á ˜ Á ˜ 1 4 1˜Á M 6 ˜ y 5 - 2y 6 + y 7 ˜ Á ˜Á ˜ Á ˜ 0 6¯Ë M 7 ¯ Ë y 6 - 2y 7 + y 8 ¯ Altre condizioni al contorno • Condizioni cicliche • Condizioni “one-side” • Fissare le derivate prime o seconde • Alcune di queste condizioni distruggono la tridiagonalità del sistema risolvente Derivate prime imposte Ê2 1 Á Á1 4 1 Á 1 4 Á 1 Á Á Á ÁÁ Ë 1 4 1 1 4 1 ˆÊ M 0 ˆ Ê y1 - y 0 - hy ¢0 ˆ ˜Á ˜ Á ˜ ˜Á M1 ˜ Á y 0 - 2y1 + y 2 ˜ ˜Á M 2 ˜ Á y1 - 2y 2 + y 3 ˜ ˜Á ˜ 6 Á ˜ ˜Á M 3 ˜ = h 2 Á y 2 - 2y 3 + y 4 ˜ Á y 3 - 2y 4 + y 5 ˜ 1 ˜Á M 4 ˜ ˜Á ˜ Á ˜ 4 1˜Á M 5 ˜ y 2y + y 4 5 6˜ Á ˜Á ˜ Á ˜ 1 2¯Ë M 6 ¯ Ë y 5 - y 4 + hy ¢5 ¯ Proprietà di approssimazione Le spline cubiche hanno migliori proprietà di convergenza rispetto al singolo polinomio interpolante vale infatti il teorema: Sia f(x) funzione C4[a,b] e S(x) spline cubica con condizioni al contorno S’(a)=f’(a) e S’(b)=f’(b) allora vale: f -S £ Ch f • 4 (4 ) • dove h =||Δ|| e ||Δ||/hk-1/2<C per k=1,2,...,n
Documenti analoghi
Interpolazione composita di Lagrange
Si ha pertanto un sistema tridiagonale nelle incognite Mi ,
i = 0, . . . , N.
Per i = 1, . . . , N − 1
Mi−1
14. Funzioni spline
Una funzione g(x) polinomiale a tratti su [a, b] è una funzione che sull’iesimo sottointervallo [xi , xi+1 ] coincide con un polinomio di grado ki . Di
solito ki = k, i = 0, . . . , n − 1, cioè i...
Lezione 7. - lucia gastaldi
Dati n + 1 nodi di interpolazione xi per i = 0, 1, · · · , n. Sia f una
funzione derivabile con continuità n + 1 volte in un intervallo I
contenente tutti i nodi di interpolazione e sia Πn il poli...
Tesi Sandri - Dipartimento di Matematica
di interpolazione può essere ricondotto alla risoluzione di un sistema lineare
di equazioni molto particolare, perchè la matrice rappresentativa del sistema è tridiagonale con diagonale dominant...