def rfft(x, n=None, axis=(-1), overwrite_x=False):
 tmp = _asfarray(x)
 if (not numpy.isrealobj(tmp)):
  raise TypeError('1st argument must be real sequence')
 try:
  work_function = _DTYPE_TO_RFFT[tmp.dtype]
 except KeyError:
  raise ValueError(('type %s is not supported' % tmp.dtype))
 overwrite_x = (overwrite_x or _datacopied(tmp, x))
 return _raw_fft(tmp, n, axis, 1, overwrite_x, work_function)

def rfft ( x , n = None , axis = ( - 1 ) , overwrite_x = False ) : tmp = _asfarray ( x ) if ( not numpy . isrealobj ( tmp ) ) : raise TypeError ( '1st argument must be real sequence' ) try : work_function = _DTYPE_TO_RFFT [ tmp . dtype ] except KeyError : raise ValueError ( ( 'type %s is not supported' % tmp . dtype ) ) overwrite_x = ( overwrite_x or _datacopied ( tmp , x ) ) return _raw_fft ( tmp , n , axis , 1 , overwrite_x , work_function )
discrete fourier transform of a real sequence .