def fft(values, freq=None, timestamps=None, fill_missing=False):
    """
    Adds options to :func:`scipy.fftpack.rfft`:

    * *freq* is the frequency the samples were taken at
    * *timestamps* is the time the samples were taken, to help with filling in missing data if *fill_missing* is true
    """
    # ======================================
    # Get frequency
    # ======================================
    if freq is None:
        from .. import qt
        freq = qt.getDouble(title='Fourier Analysis', text='Frequency samples taken at:', min=0, decimals=2, value=1.0)
        freq = freq.input
    
    if fill_missing:
        (t_x, x_filled) = fill_missing_timestamps(timestamps, values)
    else:
        x_filled = values
        
    num_samples = _np.size(x_filled)
    xfft = _sp.fftpack.rfft(x_filled)
    
    factor = freq/num_samples
    num_fft = _np.size(xfft)
    f = factor * _np.linspace(1, num_fft, num_fft)
    
    xpow = _np.abs(xfft*_np.conj(xfft))

    # ======================================
    # No DC term
    # ======================================
    xpow = xpow[1:]
    f = f[1:]

    return (f, xpow)
def fft(values, freq=None, timestamps=None, fill_missing=False):
    """
    Adds options to :func:`scipy.fftpack.rfft`:

    * *freq* is the frequency the samples were taken at
    * *timestamps* is the time the samples were taken, to help with filling in missing data if *fill_missing* is true
    """
    # ======================================
    # Get frequency
    # ======================================
    if freq is None:
        from .. import qt
        freq = qt.getDouble(title='Fourier Analysis', text='Frequency samples taken at:', min=0, decimals=2, value=1.0)
        freq = freq.input
    
    if fill_missing:
        (t_x, x_filled) = fill_missing_timestamps(timestamps, values)
    else:
        x_filled = values
        
    num_samples = _np.size(x_filled)
    xfft = _sp.fftpack.rfft(x_filled)
    
    factor = freq/num_samples
    num_fft = _np.size(xfft)
    f = factor * _np.linspace(1, num_fft, num_fft)
    
    xpow = _np.abs(xfft*_np.conj(xfft))

    # ======================================
    # No DC term
    # ======================================
    xpow = xpow[1:]
    f = f[1:]

    return (f, xpow)
def fft ( values , freq = None , timestamps = None , fill_missing = False ) : # ====================================== # Get frequency # ====================================== if freq is None : from . . import qt freq = qt . getDouble ( title = 'Fourier Analysis' , text = 'Frequency samples taken at:' , min = 0 , decimals = 2 , value = 1.0 ) freq = freq . input if fill_missing : ( t_x , x_filled ) = fill_missing_timestamps ( timestamps , values ) else : x_filled = values num_samples = _np . size ( x_filled ) xfft = _sp . fftpack . rfft ( x_filled ) factor = freq / num_samples num_fft = _np . size ( xfft ) f = factor * _np . linspace ( 1 , num_fft , num_fft ) xpow = _np . abs ( xfft * _np . conj ( xfft ) ) # ====================================== # No DC term # ====================================== xpow = xpow [ 1 : ] f = f [ 1 : ] return ( f , xpow )
Adds options to :func:`scipy.fftpack.rfft`:

    * *freq* is the frequency the samples were taken at
    * *timestamps* is the time the samples were taken, to help with filling in missing data if *fill_missing* is true
Adds options to : func : scipy . fftpack . rfft :