From 9ca63ba9723ffc281f342190316dd6f3153824c5 Mon Sep 17 00:00:00 2001
From: Chad Hanna <chad.hanna@comp-hd-001.gwave.ics.psu.edu>
Date: Thu, 6 Jun 2019 23:00:55 -0400
Subject: [PATCH] metric.py: add pseudo match

---
 gstlal-ugly/bin/gstlal_inspiral_metric_overlap | 4 ++--
 gstlal-ugly/python/metric.py                   | 5 +++++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/gstlal-ugly/bin/gstlal_inspiral_metric_overlap b/gstlal-ugly/bin/gstlal_inspiral_metric_overlap
index 4728eea54d..c174ef9ce4 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_metric_overlap
+++ b/gstlal-ugly/bin/gstlal_inspiral_metric_overlap
@@ -49,8 +49,8 @@ output = []
 for n, vec1, in enumerate(vec1s):
 	g, det = g_ij(vec1[1:])
 	def match(vec2, vec1 = vec1, g = g):
-		return (vec1[0], vec2[0], g_ij.metric_match(g, vec1[1:], vec2[1:]))
-	thisoutput = [row for row in map(match, vec2s) if row[2] > 0.0]
+		return (vec1[0], vec2[0], g_ij.pseudo_match(g, vec1[1:], vec2[1:]))
+	thisoutput = [row for row in map(match, vec2s) if row[2] > 0.01]
 	print n, len(thisoutput)
 	output += thisoutput
 
diff --git a/gstlal-ugly/python/metric.py b/gstlal-ugly/python/metric.py
index 0a7891612f..7d769e6abe 100644
--- a/gstlal-ugly/python/metric.py
+++ b/gstlal-ugly/python/metric.py
@@ -410,6 +410,11 @@ class Metric(object):
 		else:
 			return 0.
 
+	def pseudo_match(self, metric_tensor, c1, c2):
+		d2 = self.distance(metric_tensor, c1, c2)**2
+		d2 = (numpy.arctan(d2**.5 * numpy.pi / 2) / numpy.pi * 2)**2
+		return 1. - d2
+
 
 	def explicit_match(self, c1, c2):
 		def fftmatch(w1, w2):
-- 
GitLab