%INTERP2 2-D interpolation (table lookup) for gpuArray
%   Vq = interp2(V,Xq,Yq)
%   Vq = interp2(X,Y,V,Xq,Yq)
%   Vq = interp2(V,Xq,Yq,METHOD)
%   Vq = interp2(X,Y,V,Xq,Yq,METHOD)
%   Vq = interp2(V,Xq,Yq,METHOD,EXTRAPVAL)
%   Vq = interp2(X,Y,V,Xq,Yq,METHOD,EXTRAPVAL)
%   Vq = interp2(V,NTIMES)
%   Vq = interp2(V) % same as interp2(V, 1)
%   
%   The value argument V must be a double or single 2-D array, real or complex. V cannot be a vector.
%   
%   The grid arguments X and Y must have the following characteristics:
%     * same type, double or single.
%     * finite vectors or 2-D arrays with increasing and non-repeating elements in corresponding dimension. 
%     * When X and Y are non-vector 2-D arrays, they must align with cartesian axes, as if they were 
%       produced by meshgrid.
%     * dimensions consistent with those of value V. 
%   
%   The query arguments Xq and Yq must be vectors or arrays of the same type (double or single). 
%   If Xq and Yq are arrays, they must be the same size. If they are vectors with different lengths, 
%   they must have different orientations.
%   
%   METHOD must be 'linear', 'nearest', or 'cubic'.
%   
%   NTIMES currently only supports non-negative real scalars.
%   
%   The extrapolation for the out-of-boundary input is not supported.
%   
%   Example:
%    
%       [X,Y,V] = peaks(10);
%       xq = gpuArray.colon(-3, 0.01, 3);
%       yq = gpuArray.colon(-3, 0.01, 3);
%       Vq = interp2(X, Y, V, xq', yq);
%       [Xq,Yq] = meshgrid(xq, yq);  
%       mesh(Xq,Yq,Vq);
%   
%   creates an array Vq from bilinearly interpolating function values in V. 
%   The size of Vq equals to that of Xq or Yq. Or the number of rows in Vq equals to the length of yq. 
%   The number of columns in Vq equals to the length of xq.  
%   
%   See also INTERP2, INTERP3, INTERPN, MESHGRID, SCATTEREDINTERPOLANT, GPUARRAY.
%   


%   Copyright 2013 The MathWorks, Inc.
