From d52631a931c939423559a0e2a372529875251edb Mon Sep 17 00:00:00 2001 From: Alexander Pace <alexander.pace@Lligo.org> Date: Thu, 8 Nov 2018 13:06:35 -0800 Subject: [PATCH] new file: gstlal_inspiral_add_template_ids for compatibility for gstlal_inspiral_mass_model. --- gstlal-inspiral/bin/Makefile.am | 1 + .../bin/gstlal_inspiral_add_template_ids | 42 +++++++++++++++++++ .../tests/Makefile.offline_tutorial_test | 1 + 3 files changed, 44 insertions(+) create mode 100755 gstlal-inspiral/bin/gstlal_inspiral_add_template_ids diff --git a/gstlal-inspiral/bin/Makefile.am b/gstlal-inspiral/bin/Makefile.am index 7fdc623094..ddd9e5a1b3 100644 --- a/gstlal-inspiral/bin/Makefile.am +++ b/gstlal-inspiral/bin/Makefile.am @@ -5,6 +5,7 @@ dist_bin_SCRIPTS = \ gstlal_iir_inspiral \ gstlal_inspiral \ gstlal_inspiral_add_mass_models \ + gstlal_inspiral_add_template_ids \ gstlal_inspiral_calc_likelihood \ gstlal_inspiral_calc_rank_pdfs \ gstlal_inspiral_coinc_extractor \ diff --git a/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids new file mode 100755 index 0000000000..f82ee14aa7 --- /dev/null +++ b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids @@ -0,0 +1,42 @@ +#!/usr/bin/python +# +# Copyright (C) 2018 Chad Hanna +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# # This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +### This program inputs a template bank from lalapps_tmpltbank, and returns +### a template bank with a unique template_id row. Used to overcome the +### "Asserion Error: assert row.template_id not in ids" error from +### gstlal_inspiral_mass_model. + +import sys +from glue.ligolw import ligolw +from glue.ligolw import lsctables, param as ligolw_param, array as ligolw_array +from glue.ligolw import utils as ligolw_utils + +@ligolw_array.use_in +@ligolw_param.use_in +@lsctables.use_in +class LIGOLWContentHandler(ligolw.LIGOLWContentHandler): + pass + +fname = sys.argv[1] + +xmldoc = ligolw_utils.load_filename(fname, verbose = True, contenthandler = LIGOLWContentHandler) +sngl_inspiral_table = lsctables.SnglInspiralTable.get_table(xmldoc) + +for n, row in enumerate(sngl_inspiral_table): + row.template_id = n + +ligolw_utils.write_filename(xmldoc, fname, gz = fname.endswith('gz'), verbose = True) diff --git a/gstlal-inspiral/tests/Makefile.offline_tutorial_test b/gstlal-inspiral/tests/Makefile.offline_tutorial_test index 1b01e29356..a1bf4ba9bf 100644 --- a/gstlal-inspiral/tests/Makefile.offline_tutorial_test +++ b/gstlal-inspiral/tests/Makefile.offline_tutorial_test @@ -385,6 +385,7 @@ gstlal_bank.xml.gz: frames.cache --spectrum-type median \ --write-compress \ --verbose + gstlal_inspiral_add_template_ids H1-TMPLTBANK-1000000000-2048.xml.gz mv H1-TMPLTBANK-1000000000-2048.xml.gz gstlal_bank.xml.gz @echo "" -- GitLab