Иллюстрированный самоучитель по Matlab

         

N-мерная табличная интерполяция


MATLAB позволяет выполнить даже n-мерную табличную интерполяцию. Для этого используется функция interpn:

VI = interpn(X1.X2,X3,... ,V,Y1.Y2.Y3....)- интерполирует, чтобы найти VI, значение основной многомерной функции V в точках массивов Y1, Y2, Y3,.... Функции interpn должно передаваться 2ЛГ+1 аргументов, где

N —

размерность интерполируемой функции. Массивы X1, Х2, ХЗ,... определяют точки, в которых задано значение V. Параметры Y1, Y2, Y3,... могут быть матрицами, в этом случае interpn возвращает значения VI, соответствующие точкам (YKi, j) ,Y2(i, j), Y3(i, j),...). В качестве альтернативы можно передать векторы yl, y2, уЗ,... В этом случае interpn интерпретирует их, как если бы использовалась команда ndgrid(y1. У2.у3....);

VI = interpn(V.Yl,Y2,Y3,...) - подразумевает Xl=1size(V.l), X2=l:size(V,2), X3=l:size(V,3) и т. д.; 

VI = Interpn(V.ntimes) — осуществляет интерполяцию рекурсивным методом с числом шагов ntimes;

VI = interpn(...method) — позволяет указать метод интерполяции:

'nearest' — ступенчатая интерполяция;

'linear' — линейная интерполяция;

'cubic' — кубическая интерполяция.

В связи с редким применением такого вида интерполяции, наглядная трактовка которой отсутствует, примеры ее использования не приводятся.



Содержание раздела