Skip to content

A broker system for EM follow-up of LVK gravitational wave alerts

Notifications You must be signed in to change notification settings

rcamuccio/Apollo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apollo

APOLLO is a gravitational wave (GW) alert broker system. Apollo consists of several Python functions that compose both a listener and scheduler. The listener employs the GCN Kafka Client for Python to receive JSON notices from the LIGO-Virgo-KAGRA (LVK) Collaboration. Once received, an alert is parsed for the GW event parameters and the attached probability skymap. The scheduler generates observable targets from this skymap for following up a GW alert using the latest Galaxy List for the Advanced Detector Era (GLADE) catalog.


Usage

From the terminal, run the main script apollo.py:

$ python apollo.py

All parameters are read from the config.ini file. One can engage/disengage the various functions within the configuration file.

Structure

The listener uses the wrapper function retrieve_notice to receive incoming LVK alerts. The JSON notice is read by the function parse_notice which displays the event and skymap parameters to the terminal. For testing purposes, a collection of mock JSON notices and skymaps can be read using the test_notice, read_flatres_skymap, and read_multires_skymap functions.

The scheduler is primarily composed of the functions generate_targets and graph_targets. Galaxy targets are generated using the GLADE catalog and a series of cuts to the catalog. The top 50 likely follow up candidates are saved to a CSV file. The skymap with these targets superimposed on the image are also saved.

Installation

Apollo's scheduler uses the latest GLADE catalog (https://glade.elte.hu/) for selecting galaxy targets to follow up. Download the catalog as an ASCII text file (i.e. GLADE+.txt), and save it to the same working directory as the main Apollo module.

One requires an account on the GCN platform (https://gcn.nasa.gov/). The parameters client_id and client_secret are uniquely generated per user, and must be plugged into the configuration file in order to use the listener.

I have developed Apollo on the Ubuntu 22.04 LTS operating system using Python 3.10.6.

References


19 Jul 2023
Last update: 19 Jul 2023

Richard Camuccio
rcamuccio@gmail.com

About

A broker system for EM follow-up of LVK gravitational wave alerts

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages