Perform signal processing/Cleaning using FFT

The signalProcessingUsingFFT MATLAB function is designed to facilitate signal processing using the Fast Fourier Transform (FFT).
21 Downloads
Updated 16 Dec 2023

View License

The signalProcessingUsingFFT MATLAB function is designed to facilitate signal processing using the Fast Fourier Transform (FFT). The function follows a step-by-step approach, generating an original signal, applying specific frequency band filters using Butterworth filters, and visualizing the results in both time and frequency domains.
1. Original Signal Design
The function first creates an original signal (f_t) with user-defined parameters, including the sampling frequency (fs), time vector (t), low and high frequency components (f_low and f_high), and corresponding amplitudes (A_low and A_high). The original signal is a combination of sinusoidal components.
2. Signal Filtering
2.1 Butterworth Filter (0-1 Hertz)
A second-order Butterworth filter is designed to pass only the 0-1 Hertz frequency band. The original signal is filtered using this filter, resulting in a new signal (filtered_signal_low). The energy distribution in the low and high bands is then computed for analysis.
2.2 Bandpass Filter (10-50 Hertz)
Another Butterworth filter, this time a bandpass filter, is designed to pass only the 10-50 Hertz frequency band. Similar to the previous step, the original signal is filtered to produce a signal (filtered_signal_high), and energy distribution in the low and high bands is computed.
3. Visualization
The function generates a multi-subplot figure that includes plots for:
The original signal in both time and frequency domains.
The filtered signal (0-1 Hertz) in both time and frequency domains.
The filtered signal (10-50 Hertz) in both time and frequency domains

Cite As

Tobi Joshua Samuel (2024). Perform signal processing/Cleaning using FFT (https://www.mathworks.com/matlabcentral/fileexchange/156512-perform-signal-processing-cleaning-using-fft), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2023b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: Digital Signal Processing Using MATLAB

Communities

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0