WaveformAtAPointFT& WaveformAtAPointFT::Normalize(const vector<double>& InversePSD) { if(mNormalized) { return *this; } const double snr = SNR(InversePSD); for (size_t i=0; i<mRealF.size(); i++) { mRealF[i] /= snr; mImagF[i] /= snr; } mNormalized = true; return *this; }
double WaveformAtAPointFT::SNR(const std::string& Detector) const { /// \param[in] Detector Noise spectrum from this detector return SNR(WU::InverseNoiseCurve(F(), Detector)); }
SNR ClampSNR(const SNR& val, const SNR& lo, const SNR& hi) { return SNR(clamp(val.A, lo.A, hi.A), clamp(val.C, lo.C, hi.C), clamp(val.G, lo.G, hi.G), clamp(val.T, lo.T, hi.T)); }