Caden Gobat ,1,2 Alexander van der Horst ,1 and David Fitzpatrick3,4
1 Department of Physics, George Washington University, 725 21st St NW, Washington, DC 20052, U.S.A.
2 Department of Space Operations, Southwest Research Institute, 1050 Walnut Street, Suite 300, Boulder, CO 80302, U.S.A.
3 Department of Aerospace Engineering Sciences, University of Colorado Boulder, 3775 Discovery Dr, Boulder, CO 80303, U.S.A.
4 Department of Physics, Georgetown University, 37th & O St NW, Washington, DC 20007, U.S.A.
Published in Montly Notices of the Royal Astronomical Society on April 21, 2023.
Abstract
Gamma-ray bursts (GRBs) categorically produce broad-band afterglow emission, but in some cases, emission in the optical band is dimmer than expected based on the contemporaneously observed X-ray flux. This phenomenon, aptly dubbed "optical darkness", has been studied extensively in long GRBs (associated with the explosive deaths of massive stars), with possible explanations ranging from host environment extinction to high redshift to possibly unique emission mechanisms. However, investigations into optical darkness in short GRBs (associated with the mergers of compact object binaries) have thus far been limited. This work implements a procedure for determining the darkness of GRBs based on spectral indices calculated using temporally-matched *Swift* X-ray Telescope data and optical follow-up observations; presents a complete and up-to-date catalogue of known short GRBs that exhibit optical darkness; and outlines some of the possible explanations for optically dark short GRBs. In the process of this analysis, we developed versatile and scalable data processing code that facilitates reproducibility and reuse of our pipeline. These analysis tools and resulting complete sample of dark short GRBs enable a systematic statistical study of the phenomenon and its origins, and reveal that optical darkness is indeed quite rare in short GRBs, and highly dependent on observing response time and observational effects.
The optical data compiled for and used in this work can be found in products/all_optical.csv
. This catalog is a compilation of data from data/newData.xlsx
(compiled for this work from GCNs, misc. publications, etc.), data/OpticalData.csv
(from Fong et al. 2015) and data/Rastinejad_Table1.csv
(from Rastinejad et al. 2021).
Our X-ray data is primarily sourced from the UK Swift Science Data Centre, and time-resolved flux data can be found compiled in products/Swift_XRT_lightcurves.csv
. We also retrieve X-ray spectral indices (products/Swift_sGRB_catalog.csv
). We supplement these data from the UKSSDC with Fong et al. (2015)'s X-ray data, which can be found in data/XRayData.csv
(fluxes) and data/BetaXData.csv
(X-ray spectral indices).
products/TableA1.csv
is the digital version of Table A1 in the paper. For each GRB in our sample, it contains a listing of how many optical and X-ray data points we had available for that burst (from the data described above), how many temporal matches we were able to make using those data, and how many of those temporal matches qualify as optically dark. For any GRB with one or more optically dark data points, a plot of its optical/X-ray lightcurve can be found in products/dark lightcurves/
.
Most of the front-facing code is housed in Jupyter notebooks in this top-level directory, notably analysis.ipynb
and pipeline.ipynb
(analysis
calls pipeline
to do most of its heavy lifting). Supporting code, scripts, and utility functions reside in the src
directory.
Steps to get up and running:
- Clone this repository using Git, or just download it as a .zip and extract it.
- Install necessary python packages using
pip install -r requirements.txt
from a command line running within this repository folder. - Install the
asymmetric_uncertainty
package by following its installation instructions. - Run the
analysis.ipynb
Jupyter notebook, which in turn calls thepipeline.ipynb
notebook to compile data from the various sources, process it for analysis, and perform temporal matching and calculation of$\beta_\text{ox}$ . Most plotting/visualization work is done inanalysis.ipynb
.
Alternatively, GitHub will render Jupyter notebooks, so they can also just be viewed/inspected here directly.
The src/xrt.py
module mostly contains functions for querying the UKSSDC to retrieve Swift X-Ray Telescope data, incuding afterglow lightcurves, spectral parameters, temporal behavior, and related information like galactic column densities (
This work has heritage in the research done by David Fitzpatrick for his bachelor's thesis (2020). The following tools were originally developed for that work and are no longer used in this codebase, but are included for posterity.
-
src/legacy/Calculation Code/calc_beta_ox.py
andsrc/legacy/Calculation Code/calc_beta_ox.cpp
(compiled with Cygwin on Windows atsrc/legacy/Calculation Code/Automating the Calculation of Beta_OX.exe
, or recompile it yourself) both load files fromdata/legacy/
-
src/legacy/Graphing Code/Graphing_Beta_OX.py
loads the files generated by one of the two aforementioned scripts fromproducts/Generated Files (C++)/
Both tools have been updated to include GUI-based filesystem interaction and configuration.