From 4156e1cccb75fb914f31d8061b9fea61b7647a93 Mon Sep 17 00:00:00 2001
From: Kipp Cannon <kipp.cannon@ligo.org>
Date: Wed, 26 Apr 2017 16:18:16 +0900
Subject: [PATCH] gstlal-ugly: remove references to pylal

- where needed, port to equivalent code elsewhere
---
 gstlal-ugly/bin/gstlal_geo_player             |  8 +++---
 gstlal-ugly/bin/gstlal_h1h2_coh_frames        |  6 ++---
 .../bin/gstlal_injections_by_local_rate       | 26 ++++++++++---------
 gstlal-ugly/bin/gstlal_inspiral_bankviz       |  3 ---
 .../bin/gstlal_inspiral_plot_efficiency       |  5 ++--
 gstlal-ugly/bin/gstlal_inspiral_treebank_dag  |  1 -
 6 files changed, 21 insertions(+), 28 deletions(-)

diff --git a/gstlal-ugly/bin/gstlal_geo_player b/gstlal-ugly/bin/gstlal_geo_player
index bae9a84a18..f6adf61b4d 100755
--- a/gstlal-ugly/bin/gstlal_geo_player
+++ b/gstlal-ugly/bin/gstlal_geo_player
@@ -14,11 +14,9 @@ from scipy import pi, exp, cos
 
 import lal
 from glue.ligolw import utils as ligolw_utils
-from pylal import datatypes as laltypes
 from gstlal import pipeparts
 from gstlal import reference_psd
 from gstlal import pipeio
-from lal import LIGOTimeGPS
 
 #
 # =============================================================================
@@ -79,9 +77,9 @@ def look_and_listen(self):
 	if self.td_whitening:
 		psds = lal.series.read_psd_xmldoc(ligolw_utils.load_filename(self.psd_file_name, contenthandler = lal.series.PSDContentHandler))
 		psd = psds["G1"]
-		psd.data = psd.data[:analysis_rate/psd.deltaF/2+1]
+		psd.data.data = psd.data.data[:analysis_rate/psd.deltaF/2+1]
 		psd = reference_psd.interpolate_psd(psd, 1./fft_length)
-		psd.data = psd.data[:-1]
+		psd.data.data = psd.data.data[:-1]
 		kernel1,latency1,sample_rate = reference_psd.psd_to_linear_phase_whitening_fir_kernel(psd)
 		kernel2,theta = reference_psd.linear_phase_fir_kernel_to_minimum_phase_whitening_fir_kernel(kernel1)
 		latency2 = 0
@@ -189,7 +187,7 @@ class GTK_Main:
 		window.show_all()
 
 		self.psd_file_name = 'G1-GEO_PLAYER_PSD-SUS-CHN11_DQ.xml.gz'
-		self.psd = laltypes.REAL8FrequencySeries(name = "PSD", epoch = LIGOTimeGPS(0, 0), f0 = 0.0, deltaF = 0, sampleUnits = laltypes.LALUnit(""), data = numpy.empty(0))
+		self.psd = lal.CreateREAL8FrequencySeries(name = "PSD", epoch = lal.LIGOTimeGPS(0), f0 = 0.0, deltaF = 0.0, sampleUnits = lal.Unit(""), length = 0)
 
 
 	def start_stop(self, w):
diff --git a/gstlal-ugly/bin/gstlal_h1h2_coh_frames b/gstlal-ugly/bin/gstlal_h1h2_coh_frames
index 11727c9a0f..084bea5542 100755
--- a/gstlal-ugly/bin/gstlal_h1h2_coh_frames
+++ b/gstlal-ugly/bin/gstlal_h1h2_coh_frames
@@ -56,8 +56,6 @@ from glue.ligolw import utils as ligolw_utils
 from glue.ligolw.utils import segments as ligolw_segments
 from glue.ligolw.utils import process as ligolw_process
 
-from pylal.xlal.datatypes.real8frequencyseries import REAL8FrequencySeries
-
 __author__ = "Madeline Wade <madeline.wade@ligo.org>"
 
 #
@@ -206,13 +204,13 @@ class COHhandler(simplehandler.Handler):
 		self.psd2_change = 1
 	
 	def fixed_filters(self, psd1, psd2):
-		self.psd1 = REAL8FrequencySeries(
+		self.psd1 = lal.CreateREAL8FrequencySeries(
 			name = "PSD1",
 			f0 = 0.0,
 			deltaF = psd1.deltaF,
 			length = len(psd1.data.data))
 		self.psd1.data.data = psd1.data.data
-		self.psd2 = REAL8FrequencySeries(
+		self.psd2 = lal.CreateREAL8FrequencySeries(
 			name = "PSD2",
 			f0 = 0.0,
 			deltaF = psd2.deltaF,
diff --git a/gstlal-ugly/bin/gstlal_injections_by_local_rate b/gstlal-ugly/bin/gstlal_injections_by_local_rate
index 1c8ad70e7c..390615bd16 100755
--- a/gstlal-ugly/bin/gstlal_injections_by_local_rate
+++ b/gstlal-ugly/bin/gstlal_injections_by_local_rate
@@ -23,8 +23,8 @@ from glue.ligolw import lsctables
 from glue.ligolw import utils
 from glue.ligolw import ligolw
 from glue.ligolw.utils import process
-from lal import LIGOTimeGPS
-from pylal.antenna import response
+from gstlal import reference_psd
+import lal
 import sys
 
 def uniform_dec(num):
@@ -184,9 +184,9 @@ for src in srcs:
 		row.taper = "TAPER_START"
 
 		# time parameters
-		row.set_time_geocent(LIGOTimeGPS(float(t)))
+		row.time_geocent = float(t)
 		# shouldn't be needed as injection code recomputes these
-		row.h_end_time = row.h_end_time_ns = row.l_end_time = row.l_end_time_ns = row.v_end_time = row.v_end_time_ns = row.g_end_time = row.g_end_time_ns = row.t_end_time = row.t_end_time_ns = row.end_time_gmst = 0
+		row.h_end_time = row.h_end_time_ns = row.l_end_time = row.l_end_time_ns = row.v_end_time = row.v_end_time_ns = row.g_end_time = row.g_end_time_ns = row.t_end_time = row.t_end_time_ns = 0
 
 		# masses
 		row.mass2 = mass2[i]
@@ -204,16 +204,18 @@ for src in srcs:
 		row.polarization = pol[i]
 		# set effective distances
 		for det,s in (("H1","h"), ("L1","l"), ("V1","v"), ("G1","g"), ("T1","t")):
-			hp, hc, ha, q =  response(row.geocent_end_time, row.longitude, row.latitude, row.inclination, row.polarization, "radians", det)
-			setattr(row, "eff_dist_%s" % s, row.distance / q)
+			fp, fc = lal.ComputeDetAMResponse(
+				lal.cached_detector_by_prefix[det].response,
+				row.longitude,	# ra
+				row.latitude,	# dec
+				row.polarization,
+				lal.GreenwichMeanSiderealTime(row.time_geocent)
+			)
+			setattr(row, "eff_dist_%s" % s, row.distance / reference_psd.effective_distance_factor(row.inclination, fp, fc))
 
 		# spins
-		row.spin1x = spin1.x[i]
-		row.spin1y = spin1.y[i]
-		row.spin1z = spin1.z[i]
-		row.spin2x = spin2.x[i]
-		row.spin2y = spin2.y[i]
-		row.spin2z = spin2.z[i]
+		row.spin1 = spin1.x[i], spin1.y[i], spin1.z[i]
+		row.spin2 = spin2.x[i], spin2.y[i], spin2.z[i]
 
 		# frequencies
 		row.f_lower = options.flower
diff --git a/gstlal-ugly/bin/gstlal_inspiral_bankviz b/gstlal-ugly/bin/gstlal_inspiral_bankviz
index d7ceb3f7b5..3935856b4a 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_bankviz
+++ b/gstlal-ugly/bin/gstlal_inspiral_bankviz
@@ -14,9 +14,6 @@ from glue.ligolw import lsctables
 from glue.ligolw import table
 from glue.ligolw import utils
 from glue.ligolw.utils import process as ligolw_process
-from pylal.inspiral_metric import compute_metric
-from pylal.xlal.datatypes.real8frequencyseries import REAL8FrequencySeries
-from pylal.xlal.datatypes.snglinspiraltable import SnglInspiralTable
 
 from optparse import OptionParser
 
diff --git a/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency b/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
index 42fc5e6566..78eb4bd5d7 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
+++ b/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
@@ -41,10 +41,9 @@ from scipy.interpolate import interp1d
 from matplotlib import pyplot
 from gstlal import reference_psd
 
-from pylal import git_version
 __author__ = "Chad Hanna <channa@ligo.caltech.edu>, Satya Mohapatra <satya@physics.umass.edu>"
-__version__ = "git id %s" % git_version.id
-__date__ = git_version.date
+__version__ = "git id %s" % ""	# FIXME
+__date__ = ""	# FIXME
 
 def compute_horizon_interpolator(psd_files, verbose = False):
 	sites = ('H1', 'L1', 'V1')
diff --git a/gstlal-ugly/bin/gstlal_inspiral_treebank_dag b/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
index 00612351b7..eae4f74509 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
+++ b/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
@@ -7,7 +7,6 @@ from glue.ligolw import table
 from glue.ligolw import utils
 from glue.ligolw import ilwd
 from glue.ligolw.utils import process as ligolw_process
-from pylal.xlal.datatypes.snglinspiraltable import SnglInspiralTable
 from gstlal import metric as metric_module
 import os,sys,argparse
 from gstlal import inspiral, inspiral_pipe
-- 
GitLab