# Fourier Transform

### From Python Wiki

**Introduction**

The Fourier transform is a method for representing a time domain signal in the frequency domain. This transform is discussed in the tutorial: Shock_and_Vibration_Signal_Analysis.pdf

**Utility**

The scripts on this page require the utility module tompy.py

**Fourier Transform**

An example of a Fourier transform script is fourier.py

The corresponding inverse Fourier transform script is invfourier.py

**Fast Fourier Transform (FFT)**

The processing time for taking the transform of a long time history can be dramatically decreased by using an FFT.

An FFT can be performed if the time history has 2^{n} coordinate points, where n is an integer. A time history can be truncated or zero-padded if necessary so that it meets this requirement.

Scipy has an FFT in its numerical library.

*from scipy.fftpack import fft*

An example of a script using this function is: fft.py

The corresponding inverse FFT script is: invfft.py

An FFT GUI version is given at: fft_gui.py

**Waterfall FFT**

The Waterfall script generates a 3D plot using:

*from mpl_toolkits.mplot3d.art3d import Poly3DCollection*

The script is: waterfall_FFT.py

A GUI version using Tkinter is: waterfall_FFT_gui.py

**Cepstrum**

The cepstrum function was originally developed for characterizing the seismic echoes resulting from earthquake and bomb explosions. It has also been used to determine the fundamental frequency of human speech, to analyze radar signal returns, and to evaluate machinery vibration.

Here is a cepstrum script: cepstrum.py

Here is a auto-cepstrum script: auto_cepstrum.py

Here is a GUI script for both cepstrum & auto-cepstrum: cepstrum_gui.py

**Sound Pressure Level**

Here is a GUI script for calculating a sound pressure level from a time history: spl_gui.py

Return to: Main Page | Vibrationdata Python Scripts