Calcolo numerico/Interpolazione polinomiale a tratti (spline)
Definizione di spline
è definita come
dove le sono polinomi di grado per , localmente , e tali che globalmente .
Nel caso , consideriamo l'intervallo e una partizione, in ciascun sottointervallo si ha un polinomio di grado 1, e le sono localmente polinomi di grado 1 e è di classe sull'intervallo; si ha l'interpolazione lineare a tratti.
Nel caso si ha l'interpolazione spline cubica, si considera una partizione di , in ciascun sottointervallo definisco un polinomio di grado 3. è di classe sull'intervallo.
Sistema per la determinazione della spline
sono polinomi di grado 3, con . Abbiamo coefficienti da determinare.
Dobbiamo imporre le seguenti condizioni:
- condizioni di interpolazione, perché la spline deve valere in ;
- condizioni di raccordo con continuità, cioè per ;
- condizioni sulle derivate, cioè e perché dev'essere di classe .
Quindi mancano due condizioni per avere un sistema determinato di equazioni in incognite.
In base alle due condizioni aggiuntive che si impongono si hanno diversi tipi di spline:
- Spline naturale
- imponiamo che .
- Spline completa e vincolata
- e .
- Spline periodica
- supponiamo , allora e analogamente .
Abbiamo un sistema di equazioni in incognite, che però ha grandi dimensioni ed è spesso mal condizionato.
Metodo dei momenti
Definizione della funzione: sia la derivata seconda di in , per (incognite da calcolare), dove sono detti momenti. Siccome ha grado 3, la sua derivata è un polinomio di grado 1, inoltre, imponendo le condizioni:
si ottiene
dove .
Integrando due volte otteniamo:
Integrando nuovamente
Imposizione delle condizioni di interpolazione: per determinare i nuovi parametri , imponiamo le condizioni di interpolazione e otteniamo:
Inoltre
dove l'ultimo passaggio vale per la condizione di raccordo con continuità . Quindi, per otteniamo:
Risolviamo il sistema:
ed eguagliando le due equazioni otteniamo:
invece ricaviamo dalla prima equazione:
e come soluzione del sistema otteniamo
Imposizione delle condizioni di raccordo con continuità delle derivate:
Quindi, valutando in si ottiene:
analogamente
ed eguagliando le due espressioni:
e inserendo l'espressione della differenza divisa:
e dividendo ambo i membri per otteniamo:
e moltiplicando per 6
Chiamiamo
e simmetricamente
e sono due quantità positive, che hanno la proprietà
per qualsiasi tipo di nodi.
Abbiamo equazioni in incognite, date da:
Imposizione delle condizioni iniziali: la situazione dipende dalle condizioni imposte.
Spline naturale: imponiamo che , e . Allora otteniamo un sistema dove è una matrice tridiagonale della forma:
è il vettore delle incognite, mentre il termine noto è
La matrice è diagonalmente dominante sulle righe.
Se i nodi sono equispaziati, cioè se , la matrice è simmetrica. Per risolvere il sistema si può usare l'eliminazione gaussiana senza pivot, oppure metodi diretti che convergono per la dominanza diagonale stretta.
Spline completa: imponiamo le condizioni
Tenendo conto che
si ha
che si riscrive come
dividendo per e moltiplicando per 6:
Analogamente imponendo si ottene:
In questo caso abbiamo un sistema di equazioni della forma con:
Il vettore delle incognite è
Il termine noto è:
Abbiamo una matrice diagonalmente dominante in senso stretto, non è simmetrica neanche nel caso dei nodi equispaziati.
Spline periodica: e analogamente .
La seconda si traduce nella condizione . Prendendo l'espressione di , si impone l'uguaglianza e si ha . Introduciamo un nodo fittizio esterno all'intervallo, imponiamo che . Imponendo tutte le condizioni si ottiene
Quindi il sistema è tale che:
Il vettore delle incognite è
mentre il vettore del termine noto è
Questa matrice non è tridiagonale a causa di in posizione e in posizione . La matrice in ogni caso è diagonalmente dominante in senso stretto. Se i nodi sono equispaziati si ha la simmetria.
Conclusione
Nei tre casi, la matrice è diagonalmente dominante in senso stretto, e per il primo teorema di Gersch-Gorin è non singolare.
Teorema 5.7
Se i nodi sono distinti, allora esiste ed è unica la spline cubica che interpola funzione assegnata.
Teorema 5.8
Supponiamo che sia , consideriamo un partizionamento di in sottointervalli , poniamo e chiamiamo , e sia la spline cubica interpolante.