diff --git a/gstlal-inspiral/python/stats/inspiral_extrinsics.py b/gstlal-inspiral/python/stats/inspiral_extrinsics.py index 50e734336a2cc6a6a386c9d34e0102c2a0367121..0e341ce4dbf5a922927897fe4a003aef0a8f66d2 100644 --- a/gstlal-inspiral/python/stats/inspiral_extrinsics.py +++ b/gstlal-inspiral/python/stats/inspiral_extrinsics.py @@ -943,13 +943,15 @@ class NumeratorSNRCHIPDF(rate.BinnedLnPDF): rcoss, drcoss = lnpdf.bins[1].centres()[rcossindices], lnpdf.bins[1].upper()[rcossindices] - lnpdf.bins[1].lower()[rcossindices] snr2 = snr**2. - snrchi2 = numpy.outer(snr2, rcoss) * df + ncparam_per_pf = snr2 + # takes into account the mean depending on noncentrality parameter + snrchi2 = numpy.outer(snr2 * df * (1.0 + numpy.mean(pfs)), rcoss) arr = numpy.zeros_like(lnpdf.array) for pf in pfs: if progressbar is not None: progressbar.increment() - arr[snrindices, rcossindices] += gstlalstats.ncx2pdf(snrchi2, df, numpy.array([pf * snr2]).T) + arr[snrindices, rcossindices] += gstlalstats.ncx2pdf(snrchi2, df, numpy.array([pf * ncparam_per_pf]).T) # convert to counts by multiplying by bin volume, and also # multiply by an SNR powr law diff --git a/gstlal-inspiral/python/stats/inspiral_lr.py b/gstlal-inspiral/python/stats/inspiral_lr.py index a6ceaa00c7773a864ec10f043dad69f7aca5a8a7..bcae21ccfc8bfb9c21851ab0832ee6cc94ef4ef6 100644 --- a/gstlal-inspiral/python/stats/inspiral_lr.py +++ b/gstlal-inspiral/python/stats/inspiral_lr.py @@ -423,7 +423,7 @@ class LnSignalDensity(LnLRDensity): vtdict = self.horizon_history.functional_integral_dict(window.shift(float(gps)), lambda D: D**3.) return dict((instrument, (vt / t)**(1./3.)) for instrument, vt in vtdict.items()) - def add_signal_model(self, prefactors_range = (0.001, 0.30), df = 200, inv_snr_pow = 4.): + def add_signal_model(self, prefactors_range = (0.001, 0.30), df = 150, inv_snr_pow = 4.): # normalize to 10 *mi*llion signals. this count makes the # density estimation code choose a suitable kernel size inspiral_extrinsics.NumeratorSNRCHIPDF.add_signal_model(self.densities["snr_chi"], 1e12, prefactors_range, df, inv_snr_pow = inv_snr_pow, snr_min = self.snr_min)