Delphi Event Tagging
Total Page:16
File Type:pdf, Size:1020Kb
DELPHI Collaboration @ DELPHI 89-92 DAS 101 , Ne DELPHI EVENT TAGGING M. Dam (Oslo), A. De Angelis (Udine), P. Eerola (Helsinki), R. Fruhwirth (Vienna), P. Gavillet (CERN), P.O. Hulth (Stockholm), M. Innocente (Udine), B. King (Liverpool), J.P. Laugier (Saclay), J. Maillard (CDF), M. Pimenta (Lisboa), P. Privitera (Bologna), M. Tarantino (Udine), J. Varela (Lisboa), C. Werner (Lisboa), M. Zito (Genova), R. Zukanovich (CDF) DELPHI EVENT TAGGING M. Dam (Oslo), A. De Angelis (Udine), P. Eerola (Helsinki), R. Fruhwirth (Vienna), P. Gavillet (CERN), P.O. Hulth (Stockholm), M. Innocente (Udine), B. King (Liverpool), J.P. Laugier (Saclay), J. Maillard (CDF), M. Pimenta (Lisboa), P. Privitera (Bologna), M. Tarantino (Udine), J. Varela (Lisboa), C. Werner (Lisboa), M. Zito (Genova), R. Zukanovich (CDF) Abstract The DELPHI event tagging is an application designed to check the raw data output, to perform a fast on-line pattern recognition of the events, and to provide for them a classifi- cation. This application will be implemented on the on-line 3081/E emulator system. In this note, the general structure of the application, the detector algorithms and the implementation are described. A summary is provided for the performance tests. Contents 1 Introduction 2 3081/E Emulators Description of the General Steering 3.1 The Initialization Step (T4INIT) ........0.........0.0..0..0.00.4. 3.2 The Processing Step (T4LOOP) ..............0.000 000000 0G 3.3 The Termination Step (T4END) ........... 00.00.0000 0 beeen Detector algorithms 4.1.1 The T4TPC Algorithm .............0. 0.000000. ween 4.1.2 Some performancetests .........0..0.000000 eee eee eee 4.2 Outer Detector ©... 2... tk eas 4.2.1 Introduction .........0.00.0. ee ees 4.2.2 Information provided by the Outer Detector. ................ 4.2.3 Brief description of the method used .................00004 4.2.4 Summary ......... 0.0. ee es 43 HPC... 2. ens 4.3.1 General structure of the program ................000800. 4.3.2 Test of performance .........0..00000 ce eee ee eee eg 44 EMP... 2... ee eg 4.4.1 Input/Output... ..... 0.00.00 000. ee ee ng 4.4.2 User access to thresholds and parameters ...............-.. 4.4.3 Performance .........0.0.00 cc eee ee ey 4.5 Hadron Calorimeter .........0.0..0.0000. cee eee ee ee ee 4.5.1 Input/Output........ 0.000000 000. ee eeee eee 4.5.2 User access to thresholds and parameters .................. 4.5.3 Performance ....... 0... 00 cee ee es 46 SAT 2... ek ee ee 4.6.1 Adjustable thresholds and variables .................0000. 4.7 Forward Chambers (A and B)..... Pe ee Global performance and timing tests FADO implementation Graphic interface 7.1 Graphic representation of elements ................0000 eee. 1 Introduction The event tagging software for DELPHI is essentially made of: e A set of detector modules able to perform:a fast pattern recognition starting from the raw data (and eventually taking advantage of the data preprocessing form the Ist, 2nd and 3rd level trigger). These modules provide a simplified “reconstruction” of the event and a flag telling if the individual detector is able to classify the event as a “real event” by himself. e A general steering driving the sequence of the calls to the detector modules (and eventually calling only a subgroup of modules). The steering is thought in such a way to optimize the calls to the modules in order to classify an event spending the minimum CPU time. In the final version of the tagging such a logic will be controlled in a FADO ([FAD.1], [FAD.2]) environment. At the end of the tagging processing, an event can be classified as cosmic, beam gas, other background, or Z, eventually specifying the Z decay channel for which it is a candidate. The tagging software will run on a battery of three 3081/E emulators working in parallel, sited in the DAS central partition [EMU.1]. The DELPHI tagging software is coupled to a graphic interface for the visual scanning of the events. 2 3081/E Emulators The 3081/E emulator is a processor which emulates an IBM system 370 computer. It is designed to execute any High Energy Physics application program, giving results that are bit for bit identical with those obtained on an IBM system 370 mainframe. It is a reduced instruction set machine, running its own unique microcode which is produced from IBM machine code by a TRANSLATOR program. The 3081/E emulator has the following hardware features: 1. Modular architecture consisting of: e Five execution units (Control and register board, Floating point add/subtract card, Integer card, Multiply card, Divide card) e One Interface card e Memory cards 2. Separated program and data memory which ensures that a program cannot overwrite its own instructions 3. Memory configurable in 0.5 Mbytes units up to 7 Mbytes 4, Full support for FORTRAN 77 including double precision 64 bit floating point arithmetic and character type instructions, but excluding I/O instructions. 5. Pseudo-dual port interfacing to external busses (Fastbus in Delphi) 6. High speed external data transfer capability. The 3081/E has 64 bit internal data paths and a 120 ns clock. ?. A performance that is equivalent to an unit IBM 370/168. Advantage is taken of several hardware design feature to pipeline program instruction at the translate step. Referring to expected rates (Input rate of 5 Hz, Output rate of 2 Hz) with 3 to 4 Emulators the processing time in each 3081/E must be less than 500 ms by event [EMU.1]. Comparing to the Delphi analysis off-line program DELANA using as much as 16 megabytes of memory necessary to load complete database for each detector, the tagging program must use 4 megabytes of memory at maximum depending on the hardware configuration of the Delphi 3081/E emulators. Thus only partial database for each detector with a few geometrical and calibration constants can be loaded. Our program needs, for the moment, 0.5 Mbyte of Program Memory and 3.0 Mbytes of Data memory. 3 Description of the General Steering The DELPHI 4'*-level Tagging process is divided into three main steps: the initialization step T4INIT, the processing step T4LOOP, and the termination step T4END. 3.1 The Initialization Step (T4INIT) This first step takes care of the following: 1. Initialization of ZEBRA, used as memory management system (Call MZEBRA) Creation of a special division to receive Raw—Data (Call MZDIV) Creation of a Link area for: (Call MZLINT) e Raw Data e Detector algorithms (TPC, HCAL, HPC, EMF , OD, SAT, FCAB., ...) . Initialization of TANAGRA if requested. [*XTANAGRA] (Call TSTLIM) . Initialization of HBOOK4 if requested. [xHIST] (Call HLIMIT) . Initialization of the Input/Output files depending on the computer: [xVAX ,xIBM ,xEMUL] (Call FZFILE) a) Block size definition. (FZDEF sequence) b) I/O Mode choice. (Native (= default) or Exchange) c) Fortran Read/Write mode or QIO Package choice. Initialization of TANAGRA files if requested. [*XTANAGRA] (Call TOPTN) 6. Detector Algorithms choice by defining a vector IT4ORD: (Call T4ORDI) a) One can choose the Detector Algorithms to be activated in the process (= n means yes, = -1 means no; n is the detector number for T4ORDI); b) One can change the order of calling the detectors in the process. Ex: IT4ORD(i) = n...... Detector Algorithm number n called in the i-th position , where l<n<l10. n= 1 means TPC , n = 2 means OD ,n = 3 means HPC ,n = 4 means HAC, n = 5 means SAT , n = 6 means EM , n = 7 means FCAB, n = 8,9 and 10 are free for later use. ?. Initialization of different energy and angle cuts needed to associate detectors in the aim of tagging particles. 8. Initialization of the Tagging Statistics. 9. Initialization of the general purpose Commons. 3.2 The Processing Step (T4LOOP) This is the core of the Tagging processing: the Loop on events. Here we: 1. Read the Event in the Raw Data division (Call T4READ) 2. Loop on the chosen algorithms (order defined in T4ORDI): CALL T4TPC (if TPC ) .... Time Projection Chamber algorithm | CALL T4EMF (if EMF ) .... Forward Electromagnetic Calorimeter algorithm CALL T4HCAL (if HC ) .... Hadron Calorimeter algorithm CALL T4HPC (if HPC ) .... Barrel Electromagnetic Calorimeter algorithm CALL T40D (if OD ).... Outer Detector algorithm CALL T4SAT (if SAT ) .... Small Angle Tagger algorithm CALL T4FCAB (if FCAB) .... Forward Chambers A and B algorithm Each algorithm outputs a Flag: IFu (u = TPC, EMF, ves) One has: IF'u = -1 — means no data (or bad data) for the corresponding detector for this event; Iu = 0 — means no physical relevant clusters(or tracks) seen by the corresponding detector for this event; IFu = 1-— means physical relevant clusters(tracks) seen by the corresponding detector for this event. Each detector fills in a Common T4vRES (v = T,E,C,H,S,O and F for each detector respectively TPC,EMF,HCAL,HPC,SAT,OD and FCAB) giving: e the number of clusters (tracks) for the event; e for each cluster(track) some relevant information as E(p), 6, ¢. (see appendix on output format) 3. ‘Try to take a decision for the final tagging of (Call T4PHYS) by trying to combine the calorimetric information and the TPC tracks for each event (this subroutine is not yet fully coded as it shall depend highly on the tagging philosophy to be clearly defined in the future). A FADO implementation is foreseen to perform this tagging decision in a more general way. 4. Get the tagging information given by each detector. (Call T4BITS) 5. Write tagged events on stream 1, all events on stream 2. (Call FZOUT) 3.3 The Termination Step (T4END) Here we 1.