#plot3(l2,QiUsim_l2,RMlabel,'$\lambda^2\ (m^2)$ ','Rebinned into $\lambda^2$') RM_samp, QiUsim_rm = [], [] for i, spec in enumerate(QiUsim_l2): QiUsim_rm.append(np.fft.fft(QiUsim_l2[i])) RM_samp.append(np.fft.fftfreq(len(spec), l2[i][1] - l2[i][0]) * RMT.twopi) #plot3(RM_samp,np.abs(QiUsim_rm),RMlabel,'RM $(m^{-2})$','FFTed') #TEST THE DFT METHOD RM_samp, W = RMT.RMTmat(fq) for i, spec in enumerate(QiUsim): QiUsim_rm[i] = RMT.RMT(spec, W) plot3(RM_samp, np.abs(QiUsim_rm), RMlabel, '$RM (m^2)$ ', 'DFT') there_and_back_again = [] fuck_ups = [] iW = RMT.iRMTmat(fq) for i, spec in enumerate(QiUsim_rm): there_and_back_again.append(RMT.iRMT(spec, iW)) fuck_ups.append(there_and_back_again[-1] / QiUsim[i]) plot3(fq, there_and_back_again, RMlabel, 'Frequency (GHz)', 'iDFT') plot3(fq, np.abs(fuck_ups), RMlabel, 'Frequency (GHz)', 'Recovered / Original [amp]') plot3(fq, np.angle(fuck_ups), RMlabel, 'Frequency (GHz)', 'Recovered / Original [phase]') show()
l2.append(l2i) QiUsim_l2.append(spec_l2) #plot3(l2,QiUsim_l2,RMlabel,'$\lambda^2\ (m^2)$ ','Rebinned into $\lambda^2$') RM_samp,QiUsim_rm = [],[] for i,spec in enumerate(QiUsim_l2): QiUsim_rm.append(np.fft.fft(QiUsim_l2[i])) RM_samp.append(np.fft.fftfreq(len(spec),l2[i][1]-l2[i][0])*RMT.twopi) #plot3(RM_samp,np.abs(QiUsim_rm),RMlabel,'RM $(m^{-2})$','FFTed') #TEST THE DFT METHOD RM_samp,W = RMT.RMTmat(fq) for i,spec in enumerate(QiUsim): QiUsim_rm[i] = RMT.RMT(spec,W) plot3(RM_samp,np.abs(QiUsim_rm),RMlabel,'$RM (m^2)$ ','DFT') there_and_back_again = [] fuck_ups = [] iW = RMT.iRMTmat(fq) for i,spec in enumerate(QiUsim_rm): there_and_back_again.append(RMT.iRMT(spec,iW)) fuck_ups.append(there_and_back_again[-1] / QiUsim[i]) plot3(fq,there_and_back_again,RMlabel,'Frequency (GHz)','iDFT') plot3(fq,np.abs(fuck_ups),RMlabel,'Frequency (GHz)','Recovered / Original [amp]') plot3(fq,np.angle(fuck_ups),RMlabel,'Frequency (GHz)','Recovered / Original [phase]') show()