Alongside the strain *h(t)* data, |GWOSC|_ also releases a *Data Quality* :ref:`state vector <gwpy-statevector>`. We can use this to check on the quality of the data from the LIGO Livingston detector around |GW170817|_. """ __author__ = "Duncan Macleod <*****@*****.**>" __currentmodule__ = "gwpy.timeseries" # First, we can import the `StateVector` class: from gwpy.timeseries import StateVector # and download the state information surrounding GW170817: data = StateVector.fetch_open_data( "L1", 1187008882 - 100, 1187008882 + 100, verbose=True, ) # Finally, we make a :meth:`~StateVector.plot`, passing `insetlabels=True` to # display the bit names inside the axes: plot = data.plot(insetlabels=True) ax = plot.gca() ax.set_xscale('seconds', epoch=1187008882) ax.axvline(1187008882, color='orange', linestyle='--') ax.set_title('LIGO-Livingston data quality around GW170817') plot.show() # This plot shows that for a short time exactly overlapping with GW170817 # there was a data quality issue recorded that would negatively impact a # search for generic gravitational-wave transients (bursts).
Confident detection of gravitational-wave signals is critically dependent on understanding the quality of the data searched. Alongside the strain *h(t)* data, the GW Open Science Center (GWOSC) also releases a *Data Quality* :ref:`state vector <gwpy-statevector>`. We can use this to check on the quality of the data from the LIGO Livingston detector around `GW170817 <https://losc.ligo.org/events/GW170817/>`__. """ __author__ = "Duncan Macleod <*****@*****.**>" __currentmodule__ = 'gwpy.timeseries' # First, we can import the `StateVector` class: from gwpy.timeseries import StateVector # and download the state information surrounding GW170817: data = StateVector.fetch_open_data('L1', 1187008882-100, 1187008882+100, verbose=True, tag='C00') # Finally, we make a :meth:`~StateVector.plot`, passing `insetlabels=True` to # display the bit names inside the axes: plot = data.plot(insetlabels=True) ax = plot.gca() ax.set_xscale('seconds', epoch=1187008882) ax.axvline(1187008882, color='orange', linestyle='--') ax.set_title('LIGO-Livingston data quality around GW170817') plot.show() # This plot shows that for a short time exactly overlapping with GW170817 # there was a data quality issue recorded that would negatively impact a # search for generic gravitational-wave transients (bursts). # For more details on this _glitch_, and on how it was excised, please see # `Abbott et al. 2017 <https://doi.org/10.1103/PhysRevLett.119.161101>`__.
from gwpy.timeseries import (TimeSeries, StateVector) print(TimeSeries.fetch_open_data('H1', 1126259446, 1126259478)) # TimeSeries([ 2.17704028e-19, 2.08763900e-19, 2.39681183e-19, # ..., 3.55365541e-20, 6.33533516e-20, # 7.58121195e-20] # unit: Unit(dimensionless), # t0: 1126259446.0 s, # dt: 0.000244140625 s, # name: Strain, # channel: None) print(StateVector.fetch_open_data('H1', 1126259446, 1126259478)) # StateVector([127,127,127,127,127,127,127,127,127,127,127,127, # 127,127,127,127,127,127,127,127,127,127,127,127, # 127,127,127,127,127,127,127,127] # unit: Unit(dimensionless), # t0: 1126259446.0 s, # dt: 1.0 s, # name: Data quality, # channel: None, # bits: Bits(0: data present # 1: passes cbc CAT1 test # 2: passes cbc CAT2 test # 3: passes cbc CAT3 test # 4: passes burst CAT1 test # 5: passes burst CAT2 test # 6: passes burst CAT3 test, # channel=None, # epoch=1126259446.0)) # For the `StateVector`, the naming of the bits will be # ``format``-dependent, because they are recorded differently by LOSC
Alongside the strain *h(t)* data, the GW Open Science Center (GWOSC) also releases a *Data Quality* :ref:`state vector <gwpy-statevector>`. We can use this to check on the quality of the data from the LIGO Livingston detector around `GW170817 <https://losc.ligo.org/events/GW170817/>`__. """ __author__ = "Duncan Macleod <*****@*****.**>" __currentmodule__ = 'gwpy.timeseries' # First, we can import the `StateVector` class: from gwpy.timeseries import StateVector # and download the state information surrounding GW170817: data = StateVector.fetch_open_data('L1', 1187008882 - 100, 1187008882 + 100, verbose=True, tag='C00') # Finally, we make a :meth:`~StateVector.plot`, passing `insetlabels=True` to # display the bit names inside the axes: plot = data.plot(insetlabels=True) ax = plot.gca() ax.set_xscale('seconds', epoch=1187008882) ax.axvline(1187008882, color='orange', linestyle='--') ax.set_title('LIGO-Livingston data quality around GW170817') plot.show() # This plot shows that for a short time exactly overlapping with GW170817 # there was a data quality issue recorded that would negatively impact a # search for generic gravitational-wave transients (bursts).
from gwpy.timeseries import (TimeSeries, StateVector) print(TimeSeries.fetch_open_data('H1', 1126259446, 1126259478)) # TimeSeries([ 2.17704028e-19, 2.08763900e-19, 2.39681183e-19, # ..., 3.55365541e-20, 6.33533516e-20, # 7.58121195e-20] # unit: Unit(dimensionless), # t0: 1126259446.0 s, # dt: 0.000244140625 s, # name: Strain, # channel: None) print(StateVector.fetch_open_data('H1', 1126259446, 1126259478)) # StateVector([127,127,127,127,127,127,127,127,127,127,127,127, # 127,127,127,127,127,127,127,127,127,127,127,127, # 127,127,127,127,127,127,127,127] # unit: Unit(dimensionless), # t0: 1126259446.0 s, # dt: 1.0 s, # name: Data quality, # channel: None, # bits: Bits(0: data present # 1: passes cbc CAT1 test # 2: passes cbc CAT2 test # 3: passes cbc CAT3 test # 4: passes burst CAT1 test # 5: passes burst CAT2 test # 6: passes burst CAT3 test, # channel=None, # epoch=1126259446.0)) # For the `StateVector`, the naming of the bits will be
from gwosc.datasets import event_gps from gwpy.timeseries import StateVector gps = event_gps("GW200105_162426") start = int(gps) - 1000 end = int(gps) + 1000 gw200105_state = StateVector.fetch_open_data("L1", start, end) print(gw200105_state) # StateVector([127, 127, 127, ..., 127, 127, 127] # unit: dimensionless, # t0: 1262275684.0 s, # dt: 1.0 s, # name: Data quality, # channel: None, # bits: Bits(0: Passes DATA test # 1: Passes CBC_CAT1 test # 2: Passes CBC_CAT2 test # 3: Passes CBC_CAT3 test # 4: Passes BURST_CAT1 test # 5: Passes BURST_CAT2 test # 6: Passes BURST_CAT3 test, # channel=None, # epoch=1262274636.0))