Finding GW170817 Best-Matching Template

I would like to conduct analysis of event GW170817 that requires me to use the best-matched template from the template bank. With the help of a LIGO mentor, I have successfully accomplished this for event GW150914. The mentor sent me a GitHub link (pycbc-config/H1L1-GW150914_BANK-1126051217-3331800.xml at master · gwastro/pycbc-config · GitHub) to an .xml file with the masses and z-components of spin to approximate to the best-matched template close enough to do my analysis.

I seem to, however, be having trouble with locating the best-matched templates for other events in O1/O2 within the same GitHub repo (Gravitational-wave Astronomy · GitHub). As mentioned, the template with the masses and z-spins that produced the published SNR via PyCBC is of particular interest to me.

Your help is much appreciated!

3 Likes

Hi @CalebBroodo,

Thank you for your question!

GW170817 is part of the GWTC-1 catalog. For detailed trigger information, see this GWTC-1 trigger data release.

Within the file PyCBC triggers for O2, you should be able to find the masses and spins that triggered PyCBC.

Once you have that information, you can use the pycbc waveform generation tools to make the template. You can see examples in the Open Data Workshop or PyCBC documentation.

Good luck!

2 Likes

@jonah Dr. Kanner,

Is there an index for finding the masses and spins that triggered PyCBC for specific events? What I see from viewing the .h5 file, [PyCBC triggers for O2], are several masses, spins, and other parameters but no reference to GW170817 for instance. (https://dcc.ligo.org/public/0165/P1900392/004/O1_triggers_pycbc.hdf5)

Thank you

Hi @CalebBroodo ,

You should be able to find the trigger you want using the time as an index.

For example, for GW170817, I was able to find what I think is the matching trigger like this:

import h5py
import numpy as np
trigs = h5py.File('O2_triggers_pycbc.hdf5')
gps = trigs['h1_end_time'][...]
t0 = 1187008882.4
indx = np.where( (np.abs(gps-t0) < 1))
for key in trigs.keys():
    print(key, trigs[key][indx])

This gives results like this:

mass1 [1.4574227]
mass2 [1.2993017]
spin1z [-0.01881144]
spin2z [0.01177695]

Good luck!

2 Likes

This works. Thank you Dr. Kanner!

Great! Thank you, Caleb, for trying this discussion forum.

1 Like