/Peak_picking

Peak picking technique for basic frequency domain

Primary LanguageJupyter NotebookMIT LicenseMIT

Peak_picking

Peak picking technique for basic frequency domain

Given a set of accelerograms, this script makes signal processing for the frequency domain using the Fast Fourier Transform (FFT).
Then, an algorithm is used to pick the frequency peaks, provided they are not too close to each other. Peaks are selected according to their magnitude, in descending steps.

The FFT transformation and peak search makes use of the python numpy and scipy libraries.

The input data file consists of a csv file. Each column corresponds to an accelerogram. The first rows might correspond to a header, whcih can be ignored.
The input variables are contained in the inputs.py file.
- filepath: 'test_data.csv'
- h_cor: Do not consider first h_vor rows (Header)
- Freq: Sample Frequency [Hz]
- freq_r_L: Frequency range Low value [Hz]
- freq_r_H: Frequency range High value [Hz]
- dist: Minimun distance between peaks - samples between neighbouring peaks
- limit_frq: Maximum amount of frequencies to present
A jupyter notebook is also included, in alternative to the py files.

The output file is a table saved in a csv file. Each column contains the main peaks obtained from the Peak picking technique.