Trilineer enterpolasyon

**Trilineer interpolasyon**, 3-boyutlu bir *grid* üzerinde çok-değişkenli bir interpolasyon metodudur. Trilineer interpolasyon, sıklıkla, nümerik analiz, veri analizi ve bilgisayar grafiklerinde kullanılır.

## Lineer ve bilineer interpolasyonlar ile kıyası

Trilineer interpolasyon, D=1 boyuttaki lineer interpolasyon ve D=2 boyuttaki bilineer interpolasyonun, D=3 boyutundaki uzantısıdır. Bu interpolasyon metotlarının doğruluk seviyesi (*order of accuracy*) 1'dir. Yanı sıra, bu metot, interpole edilecek noktanın çevresinden (1 + n)^D = 8 nokta değerine ihtiyaç duyar.

Birçok yöntemle, trilineer interpolasyon denklemini türetmek mümkündür. Trilineer interpolasyon, 3-boyutlu 1.seviye B-spline interpolasyon tensörüne denktir. Ayrıca, interpolasyon operatörü, 3 lineer interpolasyon operatörünün tensörel çarpımına eşittir.

## Metot

Periyodik ve kübik bir latis üzerinde, x_d, y_d ve z_d'nin, x, y, z'in her biri ile daha küçük bir koordinatın arasındaki fark olduğunu düşünelim:

: \ x_d = (x - x_0)/(x_1 - x_0)
: \ y_d = (y - y_0)/(y_1 - y_0)
: \ z_d = (z - z_0)/(z_1 - z_0)

 x_0 , latis üzerinde  x 'den küçük bir nokta ve   x_1 ,  x 'den büyük bir noktadır. Aynı durum, y_0, y_1, z_0 ve z_1 için geçerlidir.

İlk olarak, x-doğrultusunda interpolasyon yapılır (kübün ön yüzünün arka yüze doğru itildiğini düşünün). Sonucunda:

: \ c_{00} = V[x_0,y_0, z_0]  (1 - x_d) + V[x_1, y_0, z_0] x_d 
: \ c_{01} = V[x_0,y_0, z_1]  (1 - x_d) + V[x_1, y_0, z_1] x_d 
: \ c_{10} = V[x_0,y_1, z_0]  (1 - x_d) + V[x_1, y_1, z_0] x_d 
: \ c_{11} = V[x_0,y_1, z_1]  (1 - x_d) + V[x_1, y_1, z_1] x_d 

V[x_0,y_0, z_0],  (x_0,y_0,z_0).  noktasındaki fonksiyon değeridir. İkinci olarak, y-doğrultusunda interpolasyon yapılır (kübün üst kenarının alt kenarına doğru itildiğini düşünün). Sonuçta:

: \ c_0 = c_{00}(1 - y_d) + c_{10}y_d
: \ c_1 = c_{01}(1 - y_d) + c_{11}y_d

Son olarak, denklem z-doğrultusunda interpole edilir (geride kalan çizgi boyunca ilerlendiğini düşünün):

: \ c = c_0(1 - z_d) + c_1z_d .

Bu ifade, interpole edilen noktadaki fonksiyon değerini vermektedir.

Trilineer interpolasyonun sonucu, üç farklı eksende yapılan üç lineer interpolasyonun işlem sırasından bağımsızdır. Örneğin, işlem sırası x, y, z olan bir trilineer interpolasyonunun sonucu, işlem sırası y, z, x olan interpolasyon ile aynıdır.

Yukarıdaki işlemler şu şekilde de görselleştirilebilir: İlk önce, interpole edilecek noktayı kapsayan bir kübün sekiz köşe noktasının koordinatları bulunur. Bu köşe noktaları, varsayılsın ki, şu değerlere sahiptir: C000, C100, C010, C110, C001, C101, C011, C111.

Akabinde, C00'ı bulmak için C000 ve C100 ile lineer interpolasyon yapılır. Lineer interpolasyon, aynı şekilde, C01 için C001 ve C101 arasında; C11 için C011 ve C111 arasında; ve C10 için C010 ve C110 arasında uygulanır.

Ardından, C0 için C00 ve C10 arası; ve C1 için C01 ve C11 arası lineer interpolasyon uygulanır.

Son adımda, C değeri, C0 ve C1 arasında lineer interpolasyonla elde edilir.

Tüm bunlara ek olarak, trilineer interpolasyon, iki bilineer interpolasyon ve bir lineer interpolasyonun kombinasyonu ile de ulaşılabilir:
: C \approx\ l( b(C_{000}, C_{010}, C_{100}, C_{110}), b(C_{001}, C_{011}, C_{101}, C_{111}))

## Ayrıca bakınız
* Lineer interpolasyon
* Bilineer interpolasyon
* Trikübik interpolasyon
* Radyal interpolasyon
* Tetrahedral interpolasyon

## Dış bağlantılar
*İnvers iteratif trilineer interpolasyon için NASA'nın yayımladığı bir kodsu.
*Paul Bourke, Interpolation methods, 1999. Yayın, trilineer interpolasyon için ikili mantık sistemine dayanan basit ve etkili bir yöntem sunmaktadır. Ayrıca, metot, *n-*boyuta genişletilebilir (ör. tetralineer, pentalineer vb.).