parameters: (input, zoom, output=None, order=3, mode='constant', cval=0.0,
           prefilter=True)
return_statement: return output
docstring: Zoom an array.
  
      The array is zoomed using spline interpolation of the requested order.
  
      Parameters
      ----------
      %(input)s
      zoom : float or sequence
          The zoom factor along the axes. If a float, `zoom` is the same for each
          axis. If a sequence, `zoom` should contain one value for each axis.
      %(output)s
      order : int, optional
          The order of the spline interpolation, default is 3.
          The order has to be in the range 0-5.
      %(mode)s
      %(cval)s
      %(prefilter)s
  
      Returns
      -------
      zoom : ndarray
          The zoomed input.
  
      Examples
      --------
      >>> from scipy import ndimage, misc
      >>> import matplotlib.pyplot as plt
  
      >>> fig = plt.figure()
      >>> ax1 = fig.add_subplot(121)  # left side
      >>> ax2 = fig.add_subplot(122)  # right side
      >>> ascent = misc.ascent()
      >>> result = ndimage.zoom(ascent, 3.0)
      >>> ax1.imshow(ascent)
      >>> ax2.imshow(result)
      >>> plt.show()
  
      >>> print(ascent.shape)
      (512, 512)
  
      >>> print(result.shape)
      (1536, 1536)
docstring_summary: Zoom an array.
docstring_tokens: Zoom an array .
function: def zoom(input, zoom, output=None, order=3, mode='constant', cval=0.0,
           prefilter=True):
      """
      Zoom an array.
  
      The array is zoomed using spline interpolation of the requested order.
  
      Parameters
      ----------
      %(input)s
      zoom : float or sequence
          The zoom factor along the axes. If a float, `zoom` is the same for each
          axis. If a sequence, `zoom` should contain one value for each axis.
      %(output)s
      order : int, optional
          The order of the spline interpolation, default is 3.
          The order has to be in the range 0-5.
      %(mode)s
      %(cval)s
      %(prefilter)s
  
      Returns
      -------
      zoom : ndarray
          The zoomed input.
  
      Examples
      --------
      >>> from scipy import ndimage, misc
      >>> import matplotlib.pyplot as plt
  
      >>> fig = plt.figure()
      >>> ax1 = fig.add_subplot(121)  # left side
      >>> ax2 = fig.add_subplot(122)  # right side
      >>> ascent = misc.ascent()
      >>> result = ndimage.zoom(ascent, 3.0)
      >>> ax1.imshow(ascent)
      >>> ax2.imshow(result)
      >>> plt.show()
  
      >>> print(ascent.shape)
      (512, 512)
  
      >>> print(result.shape)
      (1536, 1536)
      """
      if order < 0 or order > 5:
          raise RuntimeError('spline order not supported')
      input = numpy.asarray(input)
      if numpy.iscomplexobj(input):
          raise TypeError('Complex type not supported')
      if input.ndim < 1:
          raise RuntimeError('input and output rank must be > 0')
      mode = _ni_support._extend_mode_to_code(mode)
      if prefilter and order > 1:
          filtered = spline_filter(input, order, output=numpy.float64)
      else:
          filtered = input
      zoom = _ni_support._normalize_sequence(zoom, input.ndim)
      output_shape = tuple(
              [int(round(ii * jj)) for ii, jj in zip(input.shape, zoom)])
  
      output_shape_old = tuple(
              [int(ii * jj) for ii, jj in zip(input.shape, zoom)])
      if output_shape != output_shape_old:
          warnings.warn(
                  "From scipy 0.13.0, the output shape of zoom() is calculated "
                  "with round() instead of int() - for these inputs the size of "
                  "the returned array has changed.", UserWarning)
  
      zoom_div = numpy.array(output_shape, float) - 1
      # Zooming to infinite values is unpredictable, so just choose
      # zoom factor 1 instead
      zoom = numpy.divide(numpy.array(input.shape) - 1, zoom_div,
                          out=numpy.ones_like(input.shape, dtype=numpy.float64),
                          where=zoom_div != 0)
  
      output = _ni_support._get_output(output, input,
                                       shape=output_shape)
      zoom = numpy.ascontiguousarray(zoom)
      _nd_image.zoom_shift(filtered, zoom, None, output, order, mode, cval)
      return output
function_tokens: def zoom ( input , zoom , output = None , order = 3 , mode = 'constant' , cval = 0.0 , prefilter = True ) : if order < 0 or order > 5 : raise RuntimeError ( 'spline order not supported' ) input = numpy . asarray ( input ) if numpy . iscomplexobj ( input ) : raise TypeError ( 'Complex type not supported' ) if input . ndim < 1 : raise RuntimeError ( 'input and output rank must be > 0' ) mode = _ni_support . _extend_mode_to_code ( mode ) if prefilter and order > 1 : filtered = spline_filter ( input , order , output = numpy . float64 ) else : filtered = input zoom = _ni_support . _normalize_sequence ( zoom , input . ndim ) output_shape = tuple ( [ int ( round ( ii * jj ) ) for ii , jj in zip ( input . shape , zoom ) ] ) output_shape_old = tuple ( [ int ( ii * jj ) for ii , jj in zip ( input . shape , zoom ) ] ) if output_shape != output_shape_old : warnings . warn ( "From scipy 0.13.0, the output shape of zoom() is calculated " "with round() instead of int() - for these inputs the size of " "the returned array has changed." , UserWarning ) zoom_div = numpy . array ( output_shape , float ) - 1 # Zooming to infinite values is unpredictable, so just choose # zoom factor 1 instead zoom = numpy . divide ( numpy . array ( input . shape ) - 1 , zoom_div , out = numpy . ones_like ( input . shape , dtype = numpy . float64 ) , where = zoom_div != 0 ) output = _ni_support . _get_output ( output , input , shape = output_shape ) zoom = numpy . ascontiguousarray ( zoom ) _nd_image . zoom_shift ( filtered , zoom , None , output , order , mode , cval ) return output