gwcelery.conf module

GWCelery application configuration.

This module defines configuration variables and default values, including both generic options for Celery as well as options that control the behavior of specific GWCelery tasks.

To override the configuration, define the CELERY_CONFIG_MODULE environment variable to the fully qualified name of any Python module that can be located in sys.path, including any of the following presets:

gwcelery.conf.condor_accounting_group = 'ligo.dev.o3.cbc.pe.bayestar'

HTCondor accounting group for Celery workers launched with condor_submit.

gwcelery.conf.expose_to_public = False

Set to True if events meeting the public alert threshold really should be exposed to the public.

gwcelery.conf.lvalert_host = 'lvalert-playground.cgca.uwm.edu'

LVAlert host.

gwcelery.conf.gracedb_host = 'gracedb-playground.ligo.org'

GraceDB host.

gwcelery.conf.voevent_broadcaster_address = ':5342'

The VOEvent broker will bind to this address to send GCNs. This should be a string of the form host:port. If host is empty, then listen on all available interfaces.

gwcelery.conf.voevent_broadcaster_whitelist = []

List of hosts from which the broker will accept connections. If empty, then completely disable the broker’s broadcast capability.

gwcelery.conf.voevent_receiver_address = '68.169.57.253:8099'

The VOEvent listener will connect to this address to receive GCNs. For options, see GCN’s list of available VOEvent servers. If this is an empty string, then completely disable the GCN listener.

gwcelery.conf.email_host = 'imap.gmail.com'

IMAP hostname to receive the GCN e-mail notice formats.

gwcelery.conf.superevent_d_t_start = {'gstlal': 1.0, 'mbtaonline': 1.0, 'pycbc': 1.0, 'spiir': 1.0}

Pipeline based lower extent of superevent segments. For cwb and lib this is decided from extra attributes.

gwcelery.conf.superevent_d_t_end = {'gstlal': 1.0, 'mbtaonline': 1.0, 'pycbc': 1.0, 'spiir': 1.0}

Pipeline based upper extent of superevent segments For cwb and lib this is decided from extra attributes.

gwcelery.conf.superevent_query_d_t_start = 100.0

Lower extent of superevents query

gwcelery.conf.superevent_query_d_t_end = 100.0

Upper extent of superevents query

gwcelery.conf.superevent_default_d_t_start = 1.0

Default lower extent of superevent segments

gwcelery.conf.superevent_default_d_t_end = 1.0

Default upper extent for superevent segments

gwcelery.conf.superevent_far_threshold = 0.0002777777777777778

Maximum false alarm rate to consider events superevents.

gwcelery.conf.preliminary_alert_timeout = 30.0

Wait this many seconds for the preferred event to stabilize before issuing a preliminary alert.

gwcelery.conf.preliminary_alert_far_threshold = {'burst': 3.1709791983764586e-08, 'cbc': 1.9290123456790122e-07, 'test': 3.8580246913580245e-07}

Group specific maximum false alarm rate to consider sending preliminary alerts.

gwcelery.conf.preliminary_alert_trials_factor = {'burst': 4.0, 'cbc': 5.0}

Trials factor corresponding to trigger categories. For CBC and Burst, trials factor is the number of pipelines. CBC pipelines are gstlal, pycbc, mbtaonline and spiir. Burst searches are cwb.allsky, cwb.bbh and cwb.imbh.

gwcelery.conf.early_warning_alert_far_threshold = 1.9290123456790122e-07

False alarm rate threshold for early warning alerts.

gwcelery.conf.snews_gw_far_threshold = 1.1574074074074073e-05

Maximum false alarm rate for a superevent to send out a coincidence alert between an external SNEWS alert and the superevent.

gwcelery.conf.superevent_clean_up_timeout = 270.0

The orchestrator will wait this many seconds from the time of the application of the GCN_PRELIM_SENT label to revise the preferred event out of the accumulated events.

gwcelery.conf.subthreshold_annotation_timeout = 300.0

The orchestrator will wait this many seconds from the time of the creation of a new superevent to the time that subthreshold superevents are annotated. It is expected that the timeout is long enough such that there are no more G events being added to the superevent.

gwcelery.conf.pe_timeout = 345.0

The orchestrator will wait this many seconds from the time of the creation of a new superevent to the time that parameter estimation begins, in case the preferred event is updated with high latency.

gwcelery.conf.check_vector_prepost = {'AGILE': [2, 2], 'CWB': [1.5, 1.5], 'Fermi': [2, 2], 'HardwareInjection': [2, 2], 'INTEGRAL': [2, 2], 'LIB': [1.5, 1.5], 'MBTAOnline': [2, 2], 'SNEWS': [10, 10], 'Swift': [2, 2], 'gstlal': [2, 2], 'oLIB': [1.5, 1.5], 'pycbc': [2, 2], 'spiir': [2, 2]}

Seconds before and after the superevent start and end times which the DQ vector check will include in its check. Pipeline dependent.

gwcelery.conf.uses_gatedhoft = {'AGILE': False, 'CWB': True, 'Fermi': False, 'HardwareInjection': False, 'INTEGRAL': False, 'LIB': False, 'MBTAOnline': True, 'SNEWS': False, 'Swift': False, 'gstlal': True, 'oLIB': False, 'pycbc': True, 'spiir': True}

Whether or not a pipeline uses gated h(t). Determines whether or not the DMT-DQ_VECTOR will be analyzed for data quality.

gwcelery.conf.llhoft_glob = '/dev/shm/kafka/{detector}_O2/*.gwf'

File glob for playground low-latency h(t) frames. Currently points to O2 replay data.

gwcelery.conf.llhoft_channels = {'H1:DMT-DQ_VECTOR': 'dmt_dq_vector_bits', 'H1:GDS-CALIB_STATE_VECTOR': 'ligo_state_vector_bits', 'L1:DMT-DQ_VECTOR': 'dmt_dq_vector_bits', 'L1:GDS-CALIB_STATE_VECTOR': 'ligo_state_vector_bits', 'V1:DQ_ANALYSIS_STATE_VECTOR': 'virgo_state_vector_bits'}

Low-latency h(t) state vector configuration. This is a dictionary consisting of a channel and its bitmask, as defined in gwcelery.tasks.detchar.

gwcelery.conf.idq_channels = ['H1:IDQ-PGLITCH_OVL_32_2048', 'L1:IDQ-PGLITCH_OVL_32_2048']

Low-latency iDQ p(glitch) channel names from O2 replay.

gwcelery.conf.idq_pglitch_thresh = 0.95

If P(Glitch) is above this threshold, and idq_veto for the pipeline is true, DQV will be labeled for the event.

gwcelery.conf.idq_veto = {'AGILE': False, 'CWB': False, 'Fermi': False, 'HardwareInjection': False, 'INTEGRAL': False, 'LIB': False, 'MBTAOnline': False, 'SNEWS': False, 'Swift': False, 'gstlal': False, 'oLIB': False, 'pycbc': False, 'spiir': False}

If true for a pipeline, iDQ values above the threshold defined in thres will cause DQV to be labeled. Currently all False, pending iDQ review (should be done before O3).

gwcelery.conf.low_latency_frame_types = {'H1': 'H1_O2_llhoft', 'L1': 'L1_O2_llhoft', 'V1': 'V1_O2_llhoft'}

Types of low latency frames used in Parameter Estimation (see gwcelery.tasks.inference) and in cache creation for detchar checks (see gwcelery.tasks.detchar).

gwcelery.conf.high_latency_frame_types = {'H1': None, 'L1': None, 'V1': None}

Types of high latency frames used in Parameter Estimation and in cache creation for detchar checks. They do not exist for O2Replay data. (see gwcelery.tasks.inference and gwcelery.tasks.detchar)

gwcelery.conf.strain_channel_names = {'H1': 'H1:GDS-CALIB_STRAIN_O2Replay', 'L1': 'L1:GDS-CALIB_STRAIN_O2Replay', 'V1': 'V1:Hrec_hoft_16384Hz_O2Replay'}

Names of h(t) channels used in Parameter Estimation (see gwcelery.tasks.inference) and in detchar omegascan creation (see gwcelery.tasks.detchar).

gwcelery.conf.state_vector_channel_names = {'H1': 'H1:GDS-CALIB_STATE_VECTOR', 'L1': 'L1:GDS-CALIB_STATE_VECTOR', 'V1': 'V1:DQ_ANALYSIS_STATE_VECTOR'}

Names of state vector channels used in Parameter Estimation (see gwcelery.tasks.inference)

gwcelery.conf.detchar_bit_definitions = {'dmt_dq_vector_bits': {'bits': {1: 'NO_OMC_DCPD_ADC_OVERFLOW', 2: 'NO_DMT-ETMY_ESD_DAC_OVERFLOW'}, 'channel': 'DMT-DQ_VECTOR', 'description': {'NO_DMT-ETMY_ESD_DAC_OVERFLOW': 'ETMY ESD DAC not overflowing', 'NO_OMC_DCPD_ADC_OVERFLOW': 'OMC DCPC ADC not overflowing'}}, 'ligo_state_vector_bits': {'bits': {0: 'HOFT_OK', 1: 'OBSERVATION_INTENT', 5: 'NO_STOCH_HW_INJ', 6: 'NO_CBC_HW_INJ', 7: 'NO_BURST_HW_INJ', 8: 'NO_DETCHAR_HW_INJ'}, 'channel': 'GDS-CALIB_STATE_VECTOR', 'description': {'HOFT_OK': 'h(t) was successfully computed', 'NO_BURST_HW_INJ': 'No burst HW injection', 'NO_CBC_HW_INJ': 'No CBC HW injection', 'NO_DETCHAR_HW_INJ': 'No HW injections for detector characterization', 'NO_STOCH_HW_INJ': 'No stochastic HW injection', 'OBSERVATION_INTENT': '"observation intent" button is pushed'}}, 'virgo_state_vector_bits': {'bits': {0: 'HOFT_OK', 1: 'OBSERVATION_INTENT', 5: 'NO_STOCH_HW_INJ', 6: 'NO_CBC_HW_INJ', 7: 'NO_BURST_HW_INJ', 8: 'NO_DETCHAR_HW_INJ', 10: 'GOOD_DATA_QUALITY_CAT1'}, 'channel': 'DQ_ANALYSIS_STATE_VECTOR', 'description': {'GOOD_DATA_QUALITY_CAT1': 'Good data quality (CAT1 type)', 'HOFT_OK': 'h(t) was successfully computed', 'NO_BURST_HW_INJ': 'No burst HW injection', 'NO_CBC_HW_INJ': 'No CBC HW injection', 'NO_DETCHAR_HW_INJ': 'No HW injections for detector characterization', 'NO_STOCH_HW_INJ': 'No stochastic HW injection', 'OBSERVATION_INTENT': '"observation intent" button is pushed'}}}

Bit definitions for detchar checks

gwcelery.conf.omegascan_durations = [0.5, 2.0, 10.0]

Durations for omegascans, symmetric about t0

gwcelery.conf.pe_results_path = '/home/docs/public_html/online_pe'

Path to the results of Parameter Estimation (see gwcelery.tasks.inference)

gwcelery.conf.pe_results_url = 'https://ldas-jobs.ligo.caltech.edu/~docs/online_pe/'

URL of page where all the results of Parameter Estimation are outputted (see gwcelery.tasks.inference)

gwcelery.conf.raven_coincidence_windows = {'GRB_Burst': [-600, 60], 'GRB_CBC': [-5, 1], 'GRB_CBC_SubFermi': [-11, 1], 'GRB_CBC_SubSwift': [-20, 10], 'SNEWS': [-10, 10]}

Time coincidence windows passed to ligo-raven. External events and superevents of the appropriate type are considered to be coincident if within time window of each other.

gwcelery.conf.mock_events_simulate_multiple_uploads = False

If True, then upload each mock event several times in rapid succession with random jitter in order to simulate multiple pipeline uploads.

gwcelery.conf.development module

Application configuration for gracedb-dev1.ligo.org.

Inherits all settings from gwcelery.conf.test, with the exceptions below.

gwcelery.conf.development.gracedb_host = 'gracedb-dev1.ligo.org'

GraceDB host.

gwcelery.conf.development.sentry_environment = 'development'

Record this environment tag in Sentry log messages.

gwcelery.conf.playground module

Application configuration for gracedb-playground.ligo.org.

gwcelery.conf.playground.sentry_environment = 'playground'

Record this environment tag in Sentry log messages.

gwcelery.conf.playground.preliminary_alert_timeout = 0.0

Wait this many seconds for the preferred event to stabilize before issuing a preliminary alert.

gwcelery.conf.playground.early_warning_alert_far_threshold = inf

False alarm rate threshold for early warning alerts.

gwcelery.conf.playground.mock_events_simulate_multiple_uploads = True

If True, then upload each mock event several times in rapid succession with random jitter in order to simulate multiple pipeline uploads.

gwcelery.conf.playground.voevent_broadcaster_address = ':5341'

The VOEvent broker will bind to this address to send GCNs. This should be a string of the form host:port. If host is empty, then listen on all available interfaces.

gwcelery.conf.playground.voevent_broadcaster_whitelist = ['capella2.gsfc.nasa.gov']

List of hosts from which the broker will accept connections. If empty, then completely disable the broker’s broadcast capability.

gwcelery.conf.playground.voevent_receiver_address = '50.116.49.68:8094'

The VOEvent listener will connect to this address to receive GCNs. For options, see GCN’s list of available VOEvent servers. If this is an empty string, then completely disable the GCN listener.

gwcelery.conf.production module

Application configuration for gracedb.ligo.org.

Inherits all settings from gwcelery.conf.playground, with the exceptions below.

gwcelery.conf.production.condor_accounting_group = 'ligo.prod.o3.cbc.pe.bayestar'

HTCondor accounting group for Celery workers launched with condor_submit.

gwcelery.conf.production.expose_to_public = True

Set to True if events meeting the public alert threshold really should be exposed to the public.

gwcelery.conf.production.lvalert_host = 'lvalert.cgca.uwm.edu'

LVAlert host.

gwcelery.conf.production.gracedb_host = 'gracedb.ligo.org'

GraceDB host.

gwcelery.conf.production.voevent_broadcaster_address = ':5341'

The VOEvent broker will bind to this address to send GCNs. This should be a string of the form host:port. If host is empty, then listen on all available interfaces.

gwcelery.conf.production.voevent_broadcaster_whitelist = ['capella2.gsfc.nasa.gov']

List of hosts from which the broker will accept connections. If empty, then completely disable the broker’s broadcast capability.

gwcelery.conf.production.llhoft_glob = '/dev/shm/kafka/{detector}/*.gwf'

File glob for low-latency h(t) frames.

gwcelery.conf.production.low_latency_frame_types = {'H1': 'H1_llhoft', 'L1': 'L1_llhoft', 'V1': 'V1_llhoft'}

Types of frames used in Parameter Estimation (see gwcelery.tasks.inference) and in cache creation for detchar checks (see gwcelery.tasks.detchar).

gwcelery.conf.production.high_latency_frame_types = {'H1': 'H1_HOFT_C00', 'L1': 'L1_HOFT_C00', 'V1': 'V1Online'}

Types of high latency frames used in Parameter Estimation (see gwcelery.tasks.inference) and in cache creation for detchar checks (see gwcelery.tasks.detchar).

gwcelery.conf.production.idq_channels = ['H1:IDQ-PGLITCH_OVL_16_4096', 'L1:IDQ-PGLITCH_OVL_16_4096']

Low-latency iDQ p(glitch) channel names from live O3 frames

gwcelery.conf.production.strain_channel_names = {'H1': 'H1:GDS-CALIB_STRAIN_CLEAN', 'L1': 'L1:GDS-CALIB_STRAIN_CLEAN', 'V1': 'V1:Hrec_hoft_16384Hz'}

Names of h(t) channels used in Parameter Estimation (see gwcelery.tasks.inference)

gwcelery.conf.production.sentry_environment = 'production'

Record this environment tag in Sentry log messages.

gwcelery.conf.test module

Application configuration for gracedb-test.ligo.org.

Inherits all settings from gwcelery.conf.playground, with the exceptions below.

gwcelery.conf.test.lvalert_host = 'lvalert-test.cgca.uwm.edu'

LVAlert host.

gwcelery.conf.test.gracedb_host = 'gracedb-test.ligo.org'

GraceDB host.

gwcelery.conf.test.sentry_environment = 'test'

Record this environment tag in Sentry log messages.

gwcelery.conf.test.mock_events_simulate_multiple_uploads = True

If True, then upload each mock event several times in rapid succession with random jitter in order to simulate multiple pipeline uploads.