Il codice per l'interpolazione in MATLAB
Il metodo diretto
Il metodo diretto di interpolazione implica diverse fasi di calcolo. Utilizzando l'esempio dell'introduzione: "dt = 50 - 40" è l'intervallo di temperatura della tabella. "dp = 92 - 70" è il range di pressione della tabella. "dt1 = (44-40) / dt" è la frazione dell'intervallo di temperatura per la temperatura in questione. "response = dt1 * dp + 70" è la stessa frazione dell'intervallo di pressione aggiunto alla pressione più bassa nella tabella; ed è la risposta. In questo esempio, sono 78, 8 unità di pressione.
Interpolazione lineare in MATLAB
MATLAB include una funzione che può soddisfare simultaneamente i quattro calcoli della sezione precedente. È la funzione "interp1" e renderà i calcoli semplici. Utilizzando l'esempio precedente, fornire la funzione interp1 con il campo di pressione, l'intervallo di temperatura e la temperatura in questione e fornirà la risposta alla pressione in un unico passaggio. Scrivi il seguente codice nella riga di comando MATLAB:
answer = interp1 ([40 50], [70 92], 44)
MATLAB risponderà con "response = 78.8000", che corrisponde al risultato della sezione precedente.
Interpolazione del vicino più vicino
La funzione interp1 di MATLAB offre diversi metodi per eseguire l'interpolazione. Il lineare è il metodo predefinito. Tuttavia, supponiamo che invece dei soli numeri 40 e 50, si abbiano valori di temperatura per tutti gli interi compresi tra 40 e 50. Supponiamo anche di avere valori di pressione che corrispondono solo agli interi per ciascun valore di temperatura nella tabella . Se usi il metodo "neighbor vicino", MATLAB non ti darà un valore esatto; invece ti dice la risposta più vicina nella tabella. Il codice nel seguente formato realizza questo:
answer = interp1 ([valori temporanei], [valori di pressione], 43.4, 'più vicini')
Interpolazione di curve cubiche
La curva cubica è un altro metodo che può eseguire la funzione interp1 o la funzione "spline" autonoma. Invece di dare un valore unico al terzo argomento della funzione, assegnagli un intervallo di valori all'interno del primo intervallo (le temperature nella tabella). La funzione spline restituirà un intervallo corrispondente all'interno del secondo intervallo (pressioni nella tabella). È possibile utilizzare il codice nel seguente formato per estrarre l'intervallo di pressioni corrispondente a un sottointervallo di temperature:
answer = spline ([intervallo temp], [range di pressione], [subrange temp])