Skip to main content

Heavily simplified scipy.signal.spectral module which only depends on NumPy and supports pyFFTW

Project description

Heavily simplified scipy.signal.spectral module which only depends on NumPy and supports pyFFTW

Requirements

  • Python 3

  • NumPy

  • Optional: pyFFTW (for fastest FFT calculations with FFTW library)

  • Optional: SciPy (for faster FFT calculations with scipy.fftpack library)

SimpleSpectral preferably uses pyfftw for FFT calculations, then scipy.fftpack and numpy.fft as a last resort.

You should always install SciPy or pyFFTW, because numpy.fft has horrible memory usage and is also much slower.

Differences

You can use scipy.signal tutorial and reference guide in most cases, but there are some important differences:

  • input data is assumed to be complex and two-sided spectrum is always returned (return_onesided argument is not implemented)

  • length of FFT is always same as length of segment (nfft argument is not implemented)

  • functions work always over last axis of array (axis argument is not implemented)

  • if you want to have best FFT performance with pyFFTW, you should create arrays with empty, zeros or ones functions from SimpleSpectral instead of generic versions from NumPy (arrays will be byte aligned for your CPU)

Implemented functions:

  • empty

  • zeros

  • ones

  • fft

  • get_window

  • get_detrend

  • extend_boundaries

  • welch

  • periodogram

  • spectrogram

  • stft

Supported windows:

  • boxcar

  • hann

  • hamming

  • bartlett

  • blackman

  • kaiser

  • tukey

Supported boundary extensions:

  • even

  • odd

  • constant

  • zeros

Supported detrending functions:

  • constant

Credits

Based on code from excellent SciPy project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

SimpleSpectral-1.0.0.tar.gz (6.1 kB view details)

Uploaded Source

File details

Details for the file SimpleSpectral-1.0.0.tar.gz.

File metadata

File hashes

Hashes for SimpleSpectral-1.0.0.tar.gz
Algorithm Hash digest
SHA256 869326949870faed82bf21890603569e5c834a8599be5d55c38cb3b41bef0362
MD5 28f191e200ea9f8bb7d15511f5000160
BLAKE2b-256 8defcf739f7ba571e336189a4a704b844ae08eaf3641a4eb0d24b2c04db3eea5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page