Трилинейная интерполяция

Материал из testwiki
Перейти к навигации Перейти к поиску

Трилинейная интерполяция — метод многомерной интерполяции в трёхмерном евклидовом пространстве. Линейно аппроксимирует значение функции f в точке (x,y,z), используя известные значения в окружающих точках.

Трилинейная интерполяция часто используется в численном анализе и машинной графикеШаблон:Нет АИ.

Сравнение с линейной и билинейной интерполяцией

Трилинейная интерполяция является расширением линейной интерполяции, действующей в пространстве с размерностью D=1, и билинейной интерполяции, действующей в пространстве с размерностью D=2, на пространство размерности D=3. Для того чтобы интерполировать значения функции в точке (x,y,z), необходимо знать значения f в 8 смежных точках, окружающих (x,y,z).

Интерполяция действительной функции

Допустим, требуется интерполировать значение функции f в точке (x,y,z). Пусть даны значения функции f в окружающих точках (xi,yj,zk), где i=1,2, j=1,2, k=1,2, причем x1<x<x2, y1<y<y2, z1<z<z2. Последовательно проводя линейную интерполяцию для каждого измерения, можно получить следующую формулу:

f(x,y,z)f(x1,y1,z1)(x2x1)(y2y1)(z2z1)(x2x)(y2y)(z2z)++f(x1,y1,z2)(x2x1)(y2y1)(z2z1)(x2x)(y2y)(zz1)++f(x1,y2,z1)(x2x1)(y2y1)(z2z1)(x2x)(yy1)(z2z)++f(x1,y2,z2)(x2x1)(y2y1)(z2z1)(x2x)(yy1)(zz1)++f(x2,y1,z1)(x2x1)(y2y1)(z2z1)(xx1)(y2y)(z2z)++f(x2,y1,z2)(x2x1)(y2y1)(z2z1)(xx1)(y2y)(zz1)++f(x2,y2,z1)(x2x1)(y2y1)(z2z1)(xx1)(yy1)(z2z)++f(x2,y2,z2)(x2x1)(y2y1)(z2z1)(xx1)(yy1)(zz1).

В частности, в единичном кубе (x1=y1=z1=0,x2=y2=z2=1):

f(x,y,z)f(0,0,0)(1x)(1y)(1z)++f(0,0,1)(1x)(1y)z++f(0,1,0)(1x)y(1z)++f(0,1,1)(1x)yz++f(1,0,0)x(1y)(1z)++f(1,0,1)x(1y)z++f(1,1,0)xy(1z)++f(1,1,1)xyz.

Шаблон:Нет ссылок