From fb1cba76e69be250e344a0df26cbda8ac3390569 Mon Sep 17 00:00:00 2001
From: Leo Tsukada <leo.tsukada@ligo.org>
Date: Sat, 13 Jul 2019 16:27:06 -0700
Subject: [PATCH] gstlal_inspiral_compute_dtdphideff_cov_matrix : fix the bug
 to take a list of instrument pairs

---
 .../bin/gstlal_inspiral_compute_dtdphideff_cov_matrix      | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gstlal-inspiral/bin/gstlal_inspiral_compute_dtdphideff_cov_matrix b/gstlal-inspiral/bin/gstlal_inspiral_compute_dtdphideff_cov_matrix
index 8eb5bfb7e7..ee01fa5356 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_compute_dtdphideff_cov_matrix
+++ b/gstlal-inspiral/bin/gstlal_inspiral_compute_dtdphideff_cov_matrix
@@ -52,7 +52,7 @@ psddict = {}
 for ifo in rho:
 	ifo_psd = ifo
 	# FIXME use Virgo PSD for KAGRA temporarily. This has to be fixed once KAGRA PSD is measured.
-	if rho == "K1":
+	if ifo == "K1":
 		ifo = "V1"
 	f = numpy.arange(len(psd[ifo].data.data)) * psd[ifo].deltaF
 	psddict[ifo_psd] = scipy.interpolate.interp1d(f, psd[ifo].data.data)
@@ -83,7 +83,8 @@ transdd = {}
 # transdd = {frozenset(("H1", "L1")): 1. / numpy.sqrt(sigsqdd["H1"] + sigsqdd["L1"])  , frozenset(("H1", "V1")): 1. / numpy.sqrt(sigsqdd["H1"] + sigsqdd["V1"]), frozenset(("L1", "V1")): 1. / numpy.sqrt(sigsqdd["L1"] + sigsqdd["V1"])}
 # transdd = {frozenset(instrument_pair) : 1. / numpy.sqrt(sigsqdd[instrument_pair[0]] + sigsqdd[instrument_pair[1]]) for instrument_pair in TimePhaseSNR.instument_pairs(("H1", "L1", "V1", "K1"))}
 
-for pair in TimePhaseSNR.instument_pairs(("H1", "L1", "V1", "K1")):
+pairs = [tuple(sorted(pair)) for pair in itertools.combinations(("H1", "L1", "V1", "K1"), 2)]
+for pair in pairs:
 	a,b = pair
 	m11 = sigsqtt[a] + sigsqtt[b]
 	m22 = sigsqpp[a] + sigsqpp[b]
@@ -107,7 +108,7 @@ for group, mat in zip((h5_transtt, h5_transtp, h5_transpt, h5_transpp, h5_transd
 	for k,v in mat.items():
 		group.create_dataset(",".join(sorted(k)), data = float(v))
 
-combos = TimePhaseSNR.instrument_combos(("H1","L1","V1", "K1")) + (("H1",),("L1",),("V1",), ("K1",))
+combos = TimePhaseSNR.instrument_combos(("H1","L1","V1", "K1"), min_instruments=1)
 norm = dict((frozenset(k), 0.) for k in combos)
 norm = {}
 h5_norm = f.create_group("norm")
-- 
GitLab