*************************************************** * * * Specification of EM-Fraction Electron Algorithm * * * * for * * * * D-Zero Level 1.5 Calorimeter Trigger * * * *************************************************** 17-MAY-1995 Introduction ------------ The purpose of this document is to specify the EM-Fraction Electron (1x2 EM vs. 1x2 Total) Algorithm for the Level 1.5 Calorimeter Trigger. This document is divided into the following parts: (I) Interface with COOR (II) Local Tool Interface with Local Frame (III) Local Tool Processing (IV) Local Tool DeBug Section Contents (V) Global Tool Interface with Global Frame (VI) Global Tool Processing The Level 1.5 Calorimeter Trigger Version and Revision Numbers (as defined in the Data Block Format document) appropriate for this Tool are: Version Number: 2 Hardware Revision Number: 2 Global DSP Software Revision Number: 3 Local DSP Software Revision Number: 2 Engine/Readout Control Revision Number: 2 I. Interface with COOR ----------------------- The format of the communication between COOR and the Trigger Control Computer (TCC) is given in the official COOR-to-TCC message format specification document. This document only describes the information which will be provided by COOR, it does not specify the message passing format. The Level 1.5 Calorimeter Trigger supports up to 4 Terms, designated Terms 0, 1, 2, and 3, which all must be in Crate 0. COOR must specify at least Term 0, while specification of Terms 1-3 is optional. Terms which are not specified by COOR will assume benign default Parameter values. Terms which are specified by COOR must be fully specified, i.e. they must include: - Reference Set specification - Mark and Force Pass Ratio - Local Tool to use, with its Parameters - Global Tool to use, with its Parameters - Level 1 Specific Triggers mapped to the Term Note also that all 4 Terms will ALWAYS be evaluated for each seed, regardless of which Terms were specified by COOR or which Level 1 Specific Triggers fired for this event. Finally, note that the Level 1.5 Calorimeter Trigger only uses one Tool for all Terms. That is, different Tools cannot be simultaneously mixed in the Level 1.5 Calorimeter Trigger. I-A. Frame Configuration ------------------------ The Frame receives from COOR the following quantities at initialization: (1) Reference Set data. The Level 1.5 Calorimeter Trigger requires one EM Et Reference Set (which must be associated with Term 0) to generate seeds for the Local Tool. This Reference Set is separate from all Level 1 Calorimeter Trigger Reference Sets, although it is defined in the same fashion. The Reference Set associated with Term 0 is used to produce seeds for all Terms. Reference Sets associated with additional Terms defined by COOR will be ignored, but should be defined identically with the Reference Set for Term 0, to minimize confusion. (2) Mark and Force Pass Ratio (Pass_one_of_(N)). This is the proportion of events which will be "marked and force passed" by the Level 1.5 Calorimeter Trigger regardless of the outcome of the algorithm described below. Note that N=1 corresponds to "marking and force passing" every event, N=2 corresponds to "marking and force passing" alternating events, etc. N=0 is used to indicate that NO events should be "marked and force passed." The Mark and Force Pass Ratio for Term 0 is used for all Terms. All Terms undergo "mark and force pass" processing simultaneously. I-B. Local Tool Configuration ----------------------------- The Local Tool receives from COOR the following quantities at initialization: (1) Local Tool Number. The Local Tool Number of this Tool is: 3 Note that this Tool Number is not assigned by COOR, but instead COOR must know the Tool Number assigned to this Local Tool. (2) Local Parameters. Parameter Parameter Parameter Parameter Number Name Format Units --------- --------- --------- --------- 1 EM_Et_1x2_Threshold Floating GeV 2 Isolation_Threshold Floating -unitless- 3 EM_Fraction_Threshold Floating -unitless- The Local Tool will impose the following range restrictions on the Local Parameters: Parameter Parameter Parameter Parameter Number Name Minimum Maximum --------- --------- --------- --------- 1 EM_Et_1x2_Threshold 0.25 128.0 2 Isolation_Threshold 0.0 2.0 2 EM_Fraction_Threshold 0.0 2.0 I-C. Global Tool Configuration ------------------------------ The Global Tool receives from COOR the following quantities at initialization: (1) Global Tool Number. The Global Tool Number of this Tool is: 3 Note that this Tool Number is not assigned by COOR, but instead COOR must know the Tool Number assigned to this Global Tool. (2) Global Parameters. Parameter Parameter Parameter Parameter Number Name Format Units --------- --------- --------- --------- 1 Object_Count_Threshold Integer objects The Global Tool will impose the following range restrictions on the Global Parameter: Parameter Parameter Parameter Parameter Number Name Minimum Maximum --------- --------- --------- --------- 1 Object_Count_Threshold 0 8 (II) Local Tool Interface with Local Frame ------------------------------------------ The Local Tool receives from the Local Frame the following quantities: (1) The Trigger Tower eta and phi indices of a candidate seed Trigger Tower. Call these (eta, phi) indices (i, j). Recall that a candidate seed Trigger Tower is defined as a Trigger Tower with EM Et greater than or equal to the Reference Set Et defined for that Trigger Tower and this Tool. (III) Local Tool Processing --------------------------- The Local Tool performs the following processing: (1) The Local Tool examines the four neighboring Trigger Towers to determine which of these four Towers has the greatest EM Et. Call the (eta, phi) indices of this Tower (k, l). On a LEGO plot, the four neighbors are defined as follows: +------------+ | eta = i | | phi = j+1 | | (neighbor) | +------------+------------+------------+ | eta = i-1 | eta = i | eta = i+1 | | phi = j | phi = j | phi = j | ^ | (neighbor) | (seed) | (neighbor) | | +------------+------------+------------+ | | eta = i | | | phi = j-1 | | | (neighbor) | phi +------------+ eta ----> The neighbors will be examined clockwise (on the above plot), starting with the (eta=i, phi=j+1) Trigger Tower. In the event that two neighbors have equal EM Et, preference is given to the FIRST neighbor found. Recall that in the Trigger Tower addressing scheme, eta indices +1 and -1 are adjacent (i.e. there is no eta index of 0), and phi indices 1 and 32 are adjacent (i.e. the phi indices wrap around the detector). (2) The Local Tool calculates the sum of the EM Et in the seed Tower and the neighboring Tower with the greatest EM Et (as determined above): EM_Et_1x2_Sum = EM_Et(i, j) + EM_Et(k, l) (3) The Local Tool calculates the sum of the Total Et of the seed Tower and the neighboring Tower with the greatest EM Et (as determined above): Tot_Et_1x2_Sum = Tot_Et(i, j) + Tot_Et(k, l) (4) The Local Tool calculates the sum of the Total Et of the 9 Trigger Towers around the seed Tower (i.e. the seed tower and its EIGHT neighbors): m = i+1 n = j+1 __ __ Total_Et_3x3_Sum = \ \ Total_Et(m, n) /_ /_ m = i-1 n = j-1 Note that all of the above calculations and comparisons are done with the pedestals removed from the Trigger Tower Et. (5) The Local Tool applies the following three tests for all 4 Terms: Is the EM_Et_1x2_Sum >= EM_Et_1x2_Threshold Is the | EM_Et_1x2_Sum/Total_Et_1x2_Sum | >= EM_Fraction_Threshold Is the | EM_Et_1x2_Sum/Total_Et_3x3_Sum | >= Isolation_Threshold note that the EM_Fraction and Isolation cuts compare the MAGNITUDE of the actual ratio to the thresholds (i.e. the ratio will always be non-negative. The thresholds themselves are also non-negative--this is guaranteed by the range- checking) If any of these tests fail, and this is NOT a Mark and Force Pass event, the Local Tool proceeds to evaluating the next Term (or, if it has evaluated the last Term, it returns to the Local Frame) without saving any results. If any of these tests fail, but this is a Mark and Force Pass event, the Local Tool proceeds to Step (7). If all three tests pass, the Local Tool proceeds to Step (6). (6) The Local Tool increments the per-Term Object Count for the Term being evaluated. (7) If the Local List of Identified Objects currently contains 7 or fewer Objects, the Local Tool adds an entry to the List. If the Local List of Identified Objects currently contains 8 Entries, or has already "overflowed," the Local Object List Overflow Flag (see the Data Block Format document) is set, and no new information is written into the List. This entry is 3 longwords long, and contains the following information: Bits in 1st longword -------------------- 0:7 Term Number that generated this entry 8:15 Local DSP Tool Number (= 3 for 1x2 EM vs. 1x2 Total) 16:23 Eta index of the seed Trigger Tower, this is an 8-bit signed integer which can be in the range {-20..-1, +1..+20} 24:31 Phi index of the seed Trigger Tower, this is an 8-bit unsigned integer which can be in the range {1..32} Bits in 2nd longword -------------------- 0:7 Object Type Code (=1 for Electrons) 8:15 Real or Mark and Pass Data 0 : real entry that passed the Local Tool FF (hex) : entry that failed the Local Tool but was saved because this is a Mark and Force Pass event 16:31 EM_Et_1x2_Sum. This is a 16-bit signed integer with units of 1/4 GeV per count. This quantity has no pedestal. Bits in 3rd longword -------------------- 0:15 Total_Et_1x2_Sum. This is a 16-bit signed integer with units of 1/4 GeV per count. This quantity has no pedestal. 16:23 "Delta-eta" (with respect to the seed Trigger Tower) of the neighbor Trigger Tower used in the calculation of the EM_Et_1x2_Sum. This is an 8-bit signed integer which can be either -1, 0, or +1. 24:31 "Delta-phi" (with respect to the seed Trigger Tower) of the neighbor Trigger Tower used in the calculation of the EM_Et_1x2_Sum. This is an 8-bit signed integer which can be either -1, 0, or +1. (7) The Local Tool then exits, returning control to the Local Frame. (iv) Local Tool DeBug Section Information ----------------------------------------- For Mark and Force Pass events, the Level 1.5 Calorimeter Trigger produces an expanded Data Block. This expanded DeBug Section is not present for "normal" events. A DeBug Section Type 1 Entry for this Local Tool contains the Trigger Tower Data. Only one DeBug Section Type 1 Entry from each Local DSP is present in an MFP Data Block. The format of this Type 1 Entry is specified in the Data Block Format document. A DeBug Section Type 2 Entry for this Local Tool contains the EM Reference Set Data. Only one DeBug Section Type 2 Entry from each Local DSP (corresponding to Reference Set 0) is present in an MFP Data Block. The format of this Type 2 Entry is specified in the Data Block Format document. A DeBug Section Type 3 Entry for this Local Tool contains the Derived Constants for this Local Tool, as well as the Tool Number of this Tool, and the Term Number to which this Local Tool is mapped. This Local Tool has 5 Derived Constants. The Derived Constants are: Derived Constant Number Derived Constant Description -------- ---------------------------- 1 Total Et 3x3 Zero Response for eta = n+2 2 Total Et 3x3 Zero Response for eta = n+3 3 Total Et 3x3 Zero Response for eta = n+4 4 Total Et 3x3 Zero Response for eta = n+5 5 EM Et 1x2 Threshold in ADC Counts Note that a DeBug Section Type 3 Entry is 8 longwords long, as it contains the Type 3 Entry Header, the Term Number to which this Tool is mapped, the Tool Number of this Tool, and the 5 Derived Constants. See the Data Block Format document for more details. The meaning of eta n+2, n+3, n+4, and n+5 is also defined in the Data Block Format document. Also note that there are FOUR DeBug Section Type 3 Entries, one for each of Terms 0, 1, 2, and 3, from each Local DSP. (v) Global Tool Interface with Global Frame -------------------------------------------- The Global Tool receives from the Global Frame the following information: (1) The Local Per-Term Object Counts from each of the 11 Local DSPs (as collected in the Global DSP). Note that the Global Tool does not use any of the information in the Local Lists of Identified Objects. (vi) Global Tool Processing --------------------------- (1) The Global Tool computes the number of Objects found for each Term in the Local DSPs. It does this by summing, for each Term, the 11 Local Per-Term Object Counts. Note that these per-Term Object Counts do NOT include failed candidates which have been kept because this is a Mark and Force Pass event. Note also that the Local per-Term Object Counts reflect the actual number of Objects found in a Local DSP, regardless of whether the corresponding Local List of Identified Objects has overflowed. (2) The Global Tool then performs the following test for each of Terms 0, 1, 2, and 3. Is the Number_of_Objects >= Object_Count_Threshold? If this test is met then the corresponding L1.5 Cal Trig Term is marked as passed, otherwise the corresponding L1.5 Cal Trig Term is marked as failed. (3) The Global Tool then exits, returning control to the Global Frame. The Global Tool makes entries in the Global DSP Section of the Data Block as described in the Data Block Format document.