Documentation

我们为许可用户提供了部分翻译好的中文文档。您只需登录便可查阅这些文档

Interpolation of Multiple 1-D Value Sets

This example shows how to interpolate three 1-D data sets in a single pass using griddedInterpolant. This is a faster alternative to looping over your data sets.

Define the x-coordinates that are common to all values sets.

x = (1:5)';

Define the sets of sample points along the columns of matrix V.

V = [x, 2*x, 3*x]
V =
     1     2     3
     2     4     6
     3     6     9
     4     8    12
     5    10    15

Create a 2-D grid of sample points.

samplePoints = {x, 1:size(V,2)};

This compact notation specifies a full 2-D grid. The first element, samplePoints{1}, contains the x-coordinates for V, and samplePoints{2} contains the y-coordinates. The orientation of each coordinate vector does not matter.

Create the interpolant, F, by passing the sample points and sample values to griddedInterpolant.

F = griddedInterpolant(samplePoints,V);

Create a 2-D query grid with 0.5 spacing along x over all columns of V.

queryPoints = {(1:0.5:5),1:size(V,2)};

Evaluate the interpolant at the x-coordinates for each value set.

Vq = F(queryPoints)
Vq =
    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

See Also

Related Examples

Was this topic helpful?