Dear Guest,Writing tutorials and
maintaining a website are expensive endeavors. I need your help to
continue this effort. Your subscription will allow me to continue this
site and to add new materials.

Tutorials  
An Introduction to Digital Filtering: This tutorial focuses on the Butterworth filter.  filter.pdf 
Notes on Refiltering for Phase Correction:  REFILT.pdf 
Introduction to the Spectral Functions. The Fourier Transform and Power Spectral Density Function:  spectral.pdf 
Fast Fourier Transform: The FFT transform is based on the butterfly algorithm. 
fft.pdf 
Shock and Vibration Signal Analysis:  Shock_and_Vibration_Signal_Analysis.pdf 
Power
Spectral Density Calculation via Matlab: Guest tutorial submitted by
Bob Light. 
psd_mat.pdf 
Sine Function Identification and Removal.  sinefind.pdf 
Statistical Degrees of Freedom:  statdof.pdf 
Frederic J. Harris, Trigonometric Transforms:  trig_harris.pdf 
Scientific Atlanta, Random Vibration Testing: 
SA_VibrationTesting.pdf 
The Fourier Series of a Rectangular Wave:  fourier_series_rectangular.pdf 
The autocorrelation function  autocorrelation.pdf 
Kurtosis in Vibration Analysis:  kurtosis.pdf 
A Method for Generating White Noise Time Histories with Skewness > 0 and Kurtosis >0 Matlab script: witch.m 

See Also Random Vibration Page   
ZOOM FFT 
 
Bruel & Kjaer, Zoom FFT:  zoom_fft.pdf 
Zoom FFT of a time series, Matlab:  zoomFFT.m zoomFFT_plot.m 
Example tutorial:  zoomFFT_example.pdf 
Sample input file:  d9p5.txt 
ALIASING 
 
Notes on sample rate and aliasing:  aliasing_notes.pdf 
The Need for Analog Antialiasing Filters in the Pyrotechnic Shock Testing of Avionics Components:  AA_Filter_Pyro.pdf 
Signal Identification from Aliased Data: Matlab Scripts 
alias_synthesis.pdf 
Excel application for demonstrating bit resolution and aliasing effects. This file was submitted by Robert Davis of NASA/Wallops. It may be freely downloaded.  BitResolutionandAliasingG.zip 
Ceiling fan, optical aliasing video:  fan_aliased.avi 
WEIGHTING FUNCTIONS 
 
Bruel & Kjaer, Use of Weighting Functions in DFT/FFT Analysis (Part I):  weight1.pdf 
Bruel & Kjaer, Use of Weighting Functions in DFT/FFT Analysis (Part II):  weight2.pdf 
Aude, A Tutorial in Coherent and Windowed Sampling with A/D Converters:  AN9675.pdf 
Hanning Window Compensation Factor:  Hanning_compensation.pdf 
Bingham Window Compensation Factor:  Bingham_compensation.pdf 
Starting Engines 3 & 4 and taxiing of EAA's
B17 at Felts field: Recommend
viewing this with RealPlayer with DivX.
This
video clip shows an example of optical aliasing. Each of the propellers
for the 3 & 4 engines seem to switch rotational direction
during startup because the frame samping rate is too low.
A similar error can occur with measured accelerometer data if the sampling rate is too low. Spectral components in the Fourier transform can become aliased about the Nyquist frequency, which is onehalf of the sampling rate. The sample rate should be as high as possible to adequate capture the highest frequency of interest. Also, analog antialiasing filters should be used to minimize the potential for aliasing errors. 
Filtering Software 
Executable

Source 
Digital filtering using a Butterworth 6th order filter. The user must supply an input time history file. Both lowpass and highpass options are available.  filter.exe  filter.cpp 
Mean filter. This is a type of lowpass filter.  mean_filter.exe  mean_filter.cpp 
Median filter. This is a type of lowpass filter. It is useful for noise spike removal. 
median_filter.exe  median_filter.cpp 
Transfer function magnitude for analog Butterworth and Bessel lowpass filters. 
Butterworth_transfer.exe 
Butterworth_transfer.cpp

Decimation
with filtering.

decimate.exe 
decimate.cpp 

decimate_nf.exe 
decimate_nf.cpp 

filter_psd.exe 
filter_psd.cpp

Bessel twopole lowpass filter  Bessel_lowpass_filter.exe  Bessel_lowpass_filter.cpp 
Other
Software Programs

Executable

Source

Fast
Fourier transform (FFT) of a time history. The transform
operates on a time series with 2^n points, where n is an
integer.
Also,
corresponding inverse FFT.

fft.exe

fft.cpp

Conventional
Fourier transform of a time series with an arbitrary number
of points.
Also,
corresponding inverse Fourier transform.

fourier.exe
inv_fourier.exe

fourier.cpp
inv_fourier.cpp

Zoom
FFT of a time series.

zoomFFT.exe

zoomFFT.cpp

This program
converts a Fourier transform magnitude with constant bandwidth to an
octave or onethird octave format.

FFToct.exe

FFToct.cpp

This
program converts a Fourier transform magnitude with constant bandwidth
to a wider resolution.

FFT_smooth.exe

FFT_smooth.cpp

Crossspectrum
of two time histories. The output files may be used for modal test data
analysis.

cross_spectrum.exe

cross_spectrum.cpp

Crossspectrum
of two time histories. The program generates H1 and H2 frequency
response functions (FRFs), the coherence function, and the
corresponding impulse response functions.

cross_spectrum_modal.exe

cross_spectrum_modal.cpp

Energy Spectral
Density

espec.exe

espec.cpp

Generation
of time history signals:

generate.exe

_ 
Beat
frequency time history generation

beat_generate.exe

beat_generate.cpp

Cubic
Spline Curvefit:

spline.exe

spline.cpp

Integrate
a time history via the trapezoidal rule.

integ.exe

integ.cpp

This script corrects an acceelration signal so that is corresponding velocity and displacement time histories are stable and oscillate about the zero baseline.  displacement_correction.exe  displacement_correction.cpp 
Differentiate
a time history.

differ.exe

differ.cpp

Autocorrelation

autocor.exe

autocor.cpp

Crosscorrelation

cross_correlation.exe

cross_correlation.cpp

Correlation
Coefficient of two time histories

correlation_coefficient.exe

correlation_coefficient.cpp

This
program multiplies the Fourier transform of a base input function by
the transfer function of a singledegreeoffreedom system.

transfer_fft.exe

transfer_fft.cpp

This
program divides a response function by an excitation function. Each
function must be in complex format. The functions may be Fourier
transforms.

comp_div.exe

comp_div.cpp

This
program divides a response function by an excitation function. Each
function must be in real format.

real_div.exe

real_div.cpp

This
program multiplies a function by another function. Each function must
be in real format.

real_mult.exe

real_mult.cpp

This
program adds a function to another function. Each
function must be in real format.

real_add.exe  real_add.cpp 
Convolution
integral for two time histories.

convolution.exe

convolution.cpp

This
program calculates a response time history from an input time history
and a transfer function where the transfer function is a complex
Fourier transform. It uses the convolution method.

blast.exe

blast.cpp

Multiply
an input Fourier transform by a transfer function.

fourier_mult.exe

fourier_mult.cpp

Signal
scaling with adjustment options.

signal.exe

signal.cpp

Multipurpose
frequency response function processing.

frequency_function.exe

frequency_function.cpp

Histogram,
probability density function, and peak distribution of a time history.

histogram.exe

histogram.cpp

Cumulative
RMS of a time history. Used as an alternate tool for shock severity
evaluation.

TRMS.exe

TRMS.cpp

Generation
of a "white noise" time history.

white.exe

white.cpp

Add
white noise to a signal.

add_white.exe

add_white.cpp

Generation
of a "white noise" time history with kurtosis control.

white_kurtosis.exe

white_kurtosis.cpp

Aliasing
frequency calculator.

aliasing.exe

aliasing.cpp

This
program calculates the peak frequency vs. time of a time history, using
the Fourier transform method.

freq_peak.exe

freq_peak.cpp

This
program calculates the peak frequency vs. time of a time history, using
the FFT transform method.

fft_peak.exe

fft_peak.cpp

Additional software is given at: Matlab & Java 
Book
Recommendations

______________________________________________________________________________________________Please recommend this site by clicking on the Google +1 Button.Other
Vibrationdata Pages: Home
 Tutorials
