diff --git a/pycbc/events/stat.py b/pycbc/events/stat.py index c3c87f8b254..f621610f9a0 100644 --- a/pycbc/events/stat.py +++ b/pycbc/events/stat.py @@ -442,7 +442,12 @@ def __init__( self.pbin = numpy.zeros(128, dtype=numpy.int32) self.sbin = numpy.zeros(128, dtype=numpy.int32) - if pregenerate_hist and not len(ifos) == 1: + # Is the histogram needed to be pre-generated? + hist_needed = pregenerate_hist + hist_needed &= not len(ifos) == 1 + hist_needed &= (type(self).__name__ == "PhaseTD" or self.kwargs["phasetd"]) + + if hist_needed: self.get_hist() elif len(ifos) == 1: # remove all phasetd files from self.files and self.file_hashes, @@ -1628,6 +1633,8 @@ def rank_stat_coinc( ln_s = 0 if self.kwargs["phasetd"]: + if not self.has_hist: + self.get_hist() # Find total volume of phase-time-amplitude space occupied by # noise coincs, so that the logsignalrate function is properly # normalized