ADC/DAC overflows¶
The LIGO real-time controls system is a sophisticated collection of control loops designed to hold the arm cavities in resonance. At fairly regular intervals, this system can experience overflows in digital-to-analogue (DAC) and analogue-to-digital (ADC) conversion, which we can keep track of using a few command-line tools.
The gwdetchar.daq
module provides the following functions:
|
Find the times of overflows from an overflow counter |
|
Find the segments during which the given counter indicated an overflow |
|
Returns the channel name for cumulative overflows for this DCUID |
|
Find the CDS overflow channel names for a given DCUID |
|
Find the times that a timeseries crosses a specific value |
Another module, gwdetchar.cds
, is used to find mappings between front-end data collection units.
Command-line utilities¶
Note
These utilities require authentication with LIGO.ORG
credentials for archived frame data access.
gwdetchar.overflow¶
The gwdetchar.overflow
command-line interface searches for overflows in a given time range over a given set of data collection unit identifiers (DCUIDs) from the front-end computing system. The simplest usage is as follows:
python -m gwdetchar.overflow -i `<interferometer>` `<gps-start-time>` `<gps-end-time>` `<DCUIDs>`
For example,
python -m gwdetchar.overflow -i H1 1126259442 1126259502 8 10 19 29 30 88 97 98
For a full explanation of the available command-line arguments and options, you can run
$ python -m gwdetchar.overflow --help
usage: python -m gwdetchar.overflow [-h] [-V] -i IFO -f FRAMETYPE [-j NPROC]
[--deep] [-a FLAG] [--nds HOST:PORT]
[-o OUTPUT_FILE] [-I] [-p SEGMENT_PAD]
[-s SEGMENT_END_PAD] [-m HTML] [-v]
[-c FEC_MAP] [-u SIMULINK] [-d DAQSVN]
gpsstart gpsend dcuid [dcuid ...]
Find ADC/DAC overflows associated with a particular front-end model
positional arguments:
gpsstart GPS start time or datetime of analysis
gpsend GPS end time or datetime of analysis
dcuid DCUID for the relevant front-end model
options:
-h, --help show this help message and exit
-V, --version show program's version number and exit
-i IFO, --ifo IFO IFO prefix for this analysis, default: None
-f FRAMETYPE, --frametype FRAMETYPE
the frame type name
-j NPROC, --nproc NPROC
the number of processes to use when reading data,
default: 8
--deep perform deep scan, default: False
-a FLAG, --state-flag FLAG
restrict search to times when FLAG was active
--nds HOST:PORT use the given NDS host:port to access data, default:
use datafind
-o OUTPUT_FILE, --output-file OUTPUT_FILE
path to output data file, default name will be
automatically generated based on IFO and GPS times
-I, --integer-segments
pad all overflow segments to integer boundaries
(default: False)
-p SEGMENT_PAD, --segment-pad SEGMENT_PAD
minimum padding (one-sided) for output segments when
using --output-format [segments|integer-segments]
-s SEGMENT_END_PAD, --segment-end-pad SEGMENT_END_PAD
amount of time to remove from the end of each analysis
segment
-m HTML, --html HTML path to write html output
-v, --plot make plots of all overflows, default: None
-c FEC_MAP, --fec-map FEC_MAP
URL of human-readable FEC map, default: infer from IFO
-u SIMULINK, --simulink SIMULINK
URL of human-readable Simulink model, default: infer
from IFO
-d DAQSVN, --daqsvn DAQSVN
URL of the front-end data gathering configuration,
default: internal LIGO DAQ subversion repository
gwdetchar.mct¶
Similarly, the gwdetchar.mct
tool can be used to find times when any input signal crosses a given threshold:
$ python -m gwdetchar.mct --help
usage: python -m gwdetchar.mct [-h] [-V] -i IFO [-j NPROC] -f FRAMETYPE
[-a FLAG] [-o OUTPUT_PATH]
[-t THRESHOLD [THRESHOLD ...]] -c CHANNEL
[-r RATE_THRESH]
gpsstart gpsend
Find times when an input signal crosses a particular threshold
positional arguments:
gpsstart GPS start time or datetime of analysis
gpsend GPS end time or datetime of analysis
options:
-h, --help show this help message and exit
-V, --version show program's version number and exit
-i IFO, --ifo IFO IFO prefix for this analysis, default: None
-j NPROC, --nproc NPROC
the number of processes to use when reading data,
default: 8
-f FRAMETYPE, --frametype FRAMETYPE
the frame type name
-a FLAG, --state-flag FLAG
restrict search to times when FLAG was active
-o OUTPUT_PATH, --output-path OUTPUT_PATH
path to output HDF5 file, name will be automatically
generated based on IFO and GPS times
-t THRESHOLD [THRESHOLD ...], --threshold THRESHOLD [THRESHOLD ...]
threshold for marking input data crossings
-c CHANNEL, --channel CHANNEL
channel to read for input data
-r RATE_THRESH, --rate-thresh RATE_THRESH
if the trigger rate (Hz) is above this value for a
given segment, crossings for that segment will not be
recorded