function u = isintv ( z )

%*****************************************************************************80
%
%% isintv() inverts a sine transform, assume that size(z)=[nx,ny]=[2^k-1,ny]
% 
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    14 April 2021
%
%  Author:
%
%    Tim Kelley
%
%  Reference:
%
%    Tim Kelley,
%    Iterative Methods for Linear and Nonlinear Equations,
%    SIAM, 2004,
%    ISBN: 0898713528,
%    LC: QA297.8.K45.
%
%  Input:
%
%    real Z(nx,ny): data that has undergone a sine tranform.
%
%  Output:
%
%    real U(nx,ny): the original data.
%
  [ nx, ny ] = size ( z );

  ww = ifft ( [zeros(ny,1), z']', 2*nx+2 );

  u = imag ( ww(2:nx+1,:) );

  return
end

