Интерполяция нескольких 1D наборов значений

В этом примере показано, как интерполировать три 1D набора данных в одной передаче с помощью griddedInterpolant. Это - более быстрая альтернатива цикличному выполнению по вашим наборам данных.

Задайте x-координаты, которые характерны для всех наборов значений.

x = (1:5)';

Задайте наборы точек выборки вдоль столбцов матрицы V.

V = [x, 2*x, 3*x]
V = 5×3

     1     2     3
     2     4     6
     3     6     9
     4     8    12
     5    10    15

Создайте interpolant F путем передачи точек выборки и демонстрационных значений к griddedInterpolant. С этой настройкой, griddedInterpolant интерпретирует V как содержащий три различных 1D набора данных задан в тех же x-значениях.

F = griddedInterpolant(x,V);

Создайте вектор точек запроса с 0.5 разрядка.

qx = 1:0.5:5;

Оцените interpolant в x-координатах для каждого набора значений.

Vq = F(qx)
Vq = 9×3

    1.0000    2.0000    3.0000
    1.5000    3.0000    4.5000
    2.0000    4.0000    6.0000
    2.5000    5.0000    7.5000
    3.0000    6.0000    9.0000
    3.5000    7.0000   10.5000
    4.0000    8.0000   12.0000
    4.5000    9.0000   13.5000
    5.0000   10.0000   15.0000

Смотрите также

Похожие темы