From 3c14b1fdaef7fa0c597f021ea4feb089b444dcdc Mon Sep 17 00:00:00 2001
From: Gregory Ashton <gregory.ashton@ligo.org>
Date: Tue, 3 Jul 2018 11:03:39 +1000
Subject: [PATCH] Adds check of the maximum frequency

---
 tupak/gw/detector.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tupak/gw/detector.py b/tupak/gw/detector.py
index dda7050a1..39cec0667 100644
--- a/tupak/gw/detector.py
+++ b/tupak/gw/detector.py
@@ -319,6 +319,10 @@ class InterferometerStrainData(object):
 
         return psd.frequencies.value, psd.value
 
+    def _check_maximum_frequency(self):
+        if 2 * self.maximum_frequency > self.sampling_frequency:
+            self.maximum_frequency = self.sampling_frequency / 2.
+
     def _infer_time_domain_dependence(
             self, sampling_frequency, duration, time_array):
         """ Helper function to figure out if the time_array, or
@@ -363,6 +367,7 @@ class InterferometerStrainData(object):
         self.sampling_frequency = timeseries.sample_rate.value
         self.duration = timeseries.duration.value
         self._time_domain_strain = timeseries.value
+        self._check_maximum_frequency()
 
     def set_from_time_domain_strain(
             self, time_domain_strain, sampling_frequency=None, duration=None,
@@ -398,6 +403,7 @@ class InterferometerStrainData(object):
             self._time_domain_strain = time_domain_strain
         else:
             raise ValueError("Data times do not match time array")
+        self._check_maximum_frequency()
 
     def set_from_open_data(
             self, name, start_time, duration=4, outdir='outdir', cache=True,
@@ -431,6 +437,7 @@ class InterferometerStrainData(object):
             **kwargs)
 
         self.set_from_gwpy_timeseries(timeseries)
+        self._check_maximum_frequency()
 
     def _infer_frequency_domain_dependence(
             self, sampling_frequency, duration, frequency_array):
-- 
GitLab