Data Quality Masks
Page maintainer: Caro
| This page is considered done. It been reviewed by Dominik. There may be missing elements, but they are all flagged and the text has no errors. |
Intro
The task of a typical analyser to check the quality of the data
is greatly facilitated by using the official badburstlists provided for each uDST production by the data quality group (DataCops).
Its usage does not only ensure that a certain set of standard cuts is performed on burst (slowcontrol) or run level, but also does the badburstlist often provide additional information which is not contained in the uDSTs (information which was handed from the detector experts to the DataCops).
Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \Rightarrow}
Use the badburstlists!
Essentials
What is a badburstlist?
The badburstlists compile (almost) all necessary information needed for data quality of a uDST production. For each official uDST production, there is an accompanying badburstlist which contains all bursts of the production in ascii-format (not only the bad bursts, as the name of the list might suggest). For each burst, a 32-bit pattern (in hex form) is given separately for the top and bottom detector. Detailled information about the format of the burstlists is given here.
How do I apply the badburstlist in my code?
The user can individually set or not set each of the 32 bits, i.e. data quality requirements, by reading the bit pattern of the current burst (example c-file) and comparing it bitwise to his/her private data quality mask. For example, the collected DIS numbers which many people use in talks have been obtained by performing these badburstlists masks to the data. (Note: reading through the entire bad burst file for every event is not an efficient way to apply the mask).
What do all those bits mean?
- Each of the bits 0-31 covers a certain topic, for example TRD data quality or (non-)analyzable run. The definition of some BadBits can vary over the years, depending on which specific problems parts of Hermes suffered from: Documentation of BadBits
- For 1996-2005 data, the idea is to provide by means of the badburstlists the best target polarized data sample if you set your data quality mask to 0xFFFFFFFF. Many analyzers use a less strict mask, because their analysis is for example not sensitive to beam polarization, or does not need RICH information, or because they want to select unpolarized data.
- In 2006 and 2007, the basic idea is to provide the best (of course target unpolarized) data sample with operational recoil detector. The definition of quite some BadBits has changed for those two years. Note: currently (May 2008), recoil offline quality is not yet active in the uDSTs (latest productions 06d0 and 07b1).
- If you perform a target polarized analysis, use these target polarization values and read about target data quality in the uDSTs.
- It might be necessary to apply additional burst cuts in your analysis, apart from the ones the BadBurst list takes care about automatically. For example...
- if one performs beam helicity balancing by making a cut on the polarization value
- if one wants to be even stricter in the allowed range than suggested by the burstlist (e.g. dead time correction factor)
- if one analyzes target unpolarized data, a cut on LumiFit (bit 5) makes no sense, and one might want to replace the cut on LumiFit by a cut on LumiRate to reject unphysical values.
- ...
Where do I find the official badburstlists?
More Info
Code Repository
Offline Data Quality codes
All official burstlists have been independently obtained (cross checked) with code 1 and 2. Code 1 also produces the uDST offline data quality plots.
- Code Nr.1 (Fortran), currently maintained by Caro (copy of source code as of May 5,2008)
- Code Nr.2 (C), currently maintained by Dominik