-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_FFT.py
More file actions
32 lines (26 loc) · 810 Bytes
/
test_FFT.py
File metadata and controls
32 lines (26 loc) · 810 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import numpy as np;
from library.simons_array_offline_software.simons_array_python.sa_common_numerical import *;
from utils import plottmp, mjd_to_second, second_to_mjd, printVar;
from scipy.signal import firwin;
from scipy.fft import fft, fftfreq;
size = 3000;
time = np.arange(size)/100.;
time_mjd = second_to_mjd(time);
angle = (2.*np.pi*time * 2.) % (2.*np.pi);
y = 100.*np.sin(2.*np.pi*time * 2.) + np.arange(size)*0.0;
dt = np.median(np.diff(time));
numtaps = size;
freq = fftfreq(numtaps, dt);
y_fft = fft(y);
plottmp(freq, np.abs(y_fft), 'Freq. [Hz]', 'y',i=0, outname='test_fft', xlim=[0,10]);
'''
nt = y.shape[-1];
printVar(nt);
numtaps = len(y);
tmpN = nt + 3 * numtaps - 1;
printVar(tmpN);
nfft = getNFFT(tmpN);
printVar(nfft);
filter_fft = fftfilter(y, nt);
printVar(filter_fft);
'''