ndgrid和interpn - matlab

时间:2016-08-11 15:13:15

标签: matlab interpolation mesh spline

我有4个网格:

  1. kgrid,[77x1];
  2. x,即[15x1];
  3. z即[9x1];
  4. s,即[2x1];
  5. 然后我有一个函数V,它是:

    1. V [77x15x9x2]
    2. 我试图在某些kprime点插入V值。为此,我正在做:

      [ks, xs, zs, ss] = ndgrid(kgrid, x, z, s);
      Vprime = interpn(xs, ks, zs, ss, V, xs, kprime, zs, ss, 'spline');
      

      其中kprime是[77x15x9x2]。

      所有需要的矩阵(kgrid,x,z,s,V和kprime)都可以在这里找到:http://www.filedropper.com/grids

      但是在使用

      时出现此错误
      Error using griddedInterpolant
      Data is not valid NDGRID format.
      Error in interpn (line 149)
                 F = griddedInterpolant(X{:}, V, method,extrap); 
      

      关于可能出现什么问题的任何线索?

1 个答案:

答案 0 :(得分:2)

interpn的输入顺序需要与ndgrid来电的输出顺序相同。您已翻转ksxs

vprime = interpn(ks, xs, zs, ss, V, kprime, xs, zs, ss);
相关问题