Good Runs Lists

Last update: 19 Nov 2024 [History] [Edit]

Introduction to Good Runs Lists

Even during normal LHC running, the ATLAS detector is prone to various issues that prevent subdetector systems from performing correctly. While many of these issues are not detrimental to data taking, there are detector conditions that result in some data being unusable for analysis. Good Runs Lists (GRLs) are maintained to record luminosity blocks of data that are considered “good for physics” based on a specific set of criteria. A luminosity block, which is about a minute of data, is the smallest unit of data for which the quality is determined. The complete set of available GRLs can be found on the ATLAS DQM page. If you click on one of the GRLs, you will see information summarizing the runs in the list.

tip If you want to use a GRL locally (which is not needed for this tutorial), you can download it using the wget command, e.g.:

wget http://atlasdqm.web.cern.ch/atlasdqm/grlgen/All_Good/data16_13TeV.periodAllYear_DetStatus-v89-pro21-01_DQDefects-00-02-04_PHYS_StandardGRL_All_Good_25ns.xml

tip Not all analyses use the same GRL! For example, if some issue affected triggering on heavy flavor jets specifically, then analyses using other triggers might still be able to include those data. There are a few standard GRLs for each year that are normally used, but for special analyses it is possible to prepare a GRL that is either more or less restrictive about detector problems.

The GRL algorithm

The GRLSelectorAlg is an algorithm that checks data events against user-defined GRLs. If an event is not in a luminosity block in the GRLs, the event is skipped for all later algorithms in the job. This is a type of algorithm referred to as a filter because events that fail it are filtered out.

The GRLSelectorAlg is automatically called within the EventCleaning portion of the job, so there is no need to specify it when running. Metadata from the input file are retrieved in the steering macro and are passed into the basic sequence of the job. From these values, a good default GRL is automatically selected for your data, and events are filtered accordingly.

tip Note that the GRL algorithm is only scheduled for jobs that run over data. Monte Carlo events are not subject to these detector issues and therefore, all of them are used.

To make sure the GRL selector is configured correctly, you can temporarily change dataType to "data" in your steering macro or JOs and re-run your job. After you see that the algorithm is being called. It will print out additional information before your analysis and will also add outputs for the GoodRunsList and EventErrorState filters.

tip Did you notice anything else change? When running on data, the event cleaning block gets an extra algorithm, the EventFlagSelectionAlg. This algorithm looks for specific flags in data that mark corrupt events that should be excluded. These flags are the mechanism by which only a few events from a luminosity block are rejected in case most of the luminosity block is good.

Make sure you change dataType back to "mc" before proceeding.