How to calculate SNR variation with period? I want to calculate the SNR variation of a signal with respect to the period. The current technique I am using is calculating SNR iteratively by applying narrow bandpass filters of different range, but the computational time for this is painstakingly high.
Is there a way to use fft or something like that to calculate the variation of SNR with period?
(I asked this question in stack overflow and I got a suggestion to ask here)
The FFT is equivalent to a bank of FIR band pass filters, in python you can compute the fft using numpy.fft.fft, and the central normalized (with respect to sampling rate) frequency of each filter is obtained with numpy.fft.fftfreq
For real signals you can use numpy.fft.rfft and numpy.fft.rfftfreq
If you want implementation guidance in stack overflow, give more details about the what you did, share some piece of code. You could share you slow running example and someone would help you to get it fast.