]>
Commit | Line | Data |
---|---|---|
518eb852 | 1 | // $Id$ |
2 | ||
3 | /*! | |
4 | ||
91509ec6 | 5 | \page README_trigger Trigger |
518eb852 | 6 | |
7 | ||
8 | \section trigger_s1 How to reprocess trigger decision from already produced digits | |
2ce5e44e | 9 | |
2ce5e44e | 10 | The MUONTrigger.C macro can be used to check the trigger algorithm w/o |
11 | having to (re-)perform simulation and digitalization. | |
12 | It loads the digits, erase TreeR and store the current trigger output in | |
13 | TreeR. | |
518eb852 | 14 | |
2ce5e44e | 15 | The different trigger outputs can be compared by looking at the GLT branch |
16 | of TreeD (filled during simulation) and the TC branch of TreeR (filled from | |
17 | a copy of TreeD during reconstruction or with this macro). | |
18 | Note: rec points from tracking chamber will be lost. | |
518eb852 | 19 | |
2ce5e44e | 20 | Usage: |
518eb852 | 21 | <pre> |
2ce5e44e | 22 | root [0] .L $ALICE_ROOT/MUON/MUONTrigger.C+ |
53958b19 | 23 | root [1] MUONTrigger("galice.root") |
518eb852 | 24 | </pre> |
25 | ||
2ce5e44e | 26 | |
1b30fc1f | 27 | \section trigger_s2 OFFLINE trigger Graphical User Interface (GUI) data quality and debugging tool |
2ce5e44e | 28 | |
2ce5e44e | 29 | - read digits and local trigger decision from simulated/real data |
1b30fc1f | 30 | - display the strips in local boards |
2ce5e44e | 31 | - reprocess trigger decision inside AliRoot |
32 | - set x/y strips interactively on boards and transfer them to the AliRoot | |
33 | TriggerElectronics, execute trigger algorithm and recover the local trigger | |
34 | decision | |
35 | ||
1b30fc1f | 36 | Usage (aliroot): |
518eb852 | 37 | <pre> |
1b30fc1f | 38 | root [0] new AliMUONTriggerGUI |
518eb852 | 39 | </pre> |
2ce5e44e | 40 | |
518eb852 | 41 | Main window shows the map of the local boards as seen from the I.P. |
1b30fc1f | 42 | The main window is position sensitive: by focusing a board, the "tip text" |
43 | shows the board name, the crate name, the board ID and the board | |
44 | internal number in the GUI. | |
2ce5e44e | 45 | |
1b30fc1f | 46 | Menus: |
2ce5e44e | 47 | |
2ce5e44e | 48 | |
518eb852 | 49 | \subsection trigger_s2_sub1 File |
2ce5e44e | 50 | |
1b30fc1f | 51 | - "Run input" - open a file and start with a given event number: |
52 | - "your_path/galice.root" to use simulated (or re-created) aliroot digits | |
53 | - confirm with "Apply (galice)" | |
54 | - "your_path/rawfilename.root" to use raw data in root format | |
55 | - confirm with "Apply (raw)" | |
56 | - "Control" - navigate in the tree with events | |
57 | - "Exit" - exit the main application | |
2ce5e44e | 58 | |
2ce5e44e | 59 | |
518eb852 | 60 | \subsection trigger_s2_sub2 Maps |
2ce5e44e | 61 | |
1b30fc1f | 62 | - "Digits map" - graphical map showing digits in the four chambers, MT11 ... MT22 |
63 | - "Reset digits" - clean the digits map | |
2ce5e44e | 64 | |
1b30fc1f | 65 | \subsection trigger_s2_sub3 Chambers digit maps |
2ce5e44e | 66 | |
1b30fc1f | 67 | - "Update" - update the map after: |
2ce5e44e | 68 | - loading of another event |
69 | - changing interactively the strip signals in boards GUI | |
70 | ||
2ce5e44e | 71 | |
518eb852 | 72 | \subsection trigger_s2_sub4 Circuit |
73 | ||
1b30fc1f | 74 | - "Open" - open a board GUI by circuit (board) number |
2ce5e44e | 75 | |
2ce5e44e | 76 | |
1b30fc1f | 77 | \subsection trigger_s2_sub5 TriggerDSET, run the trigger algorithm with interactively set strips |
518eb852 | 78 | |
1b30fc1f | 79 | - this is an interface to AliMUONTriggerElectronics |
80 | - "Digit store" - create a digit store (object) with the current board digits (input from the circuit GUI) | |
81 | - "Trigger store" - create a trigger store (object) from the digit store, using AliMUONTriggerElectronics; | |
82 | each type of store can be "cleared" and "printed" | |
83 | - "Front End Test" - simulate a FET (all strips fire) on all boards or on a regional board | |
84 | - "Write raw data" - save the trigger store in a raw data file (DATE and ROOT) format | |
518eb852 | 85 | |
1b30fc1f | 86 | \subsection trigger_s2_sub6 Circuit GUI ("Circuit/Open" or click on boards map) |
2ce5e44e | 87 | |
1b30fc1f | 88 | - the window title shows the name of the board, the number and the status |
89 | - "Draw" visualize x/y strips | |
90 | - "Set/unset" x (or) y strips, on mouse click | |
2ce5e44e | 91 | - "Digits" create board digits from the actual configuration created in the GUI |
92 | - "Reset" reset modification on strips done interactively | |
93 | ||
1b30fc1f | 94 | The sequence to test the trigger algorithm is: |
95 | - open a board GUI | |
96 | - set some x/y strips | |
97 | - press "Digits" to create board digits | |
98 | - from the TrigerDSET menu create a digit store, then a trigger store and print it to see the trigger | |
99 | decision | |
100 | - write raw data for further investigation | |
2ce5e44e | 101 | |
518eb852 | 102 | \section trigger_s3 How to check integrated trigger efficiency |
2ce5e44e | 103 | |
2ce5e44e | 104 | The MUONTriggerEfficiency.C macro (included in the check scripts) calculates |
105 | the trigger efficiency for the 2 pt cuts. | |
106 | The output is stored in MUONTriggerEfficiency.out file. | |
518eb852 | 107 | |
2ce5e44e | 108 | Usage: |
518eb852 | 109 | <pre> |
2ce5e44e | 110 | root [0] .L $ALICE_ROOT/MUON/MUONTriggerEfficiency.C+ |
111 | root [1] MUONTriggerEfficiency() | |
518eb852 | 112 | </pre> |
113 | ||
ea6d7574 | 114 | Two LUTs are stored in the CDB (/Calib/TriggerLut/): |
115 | - Run0_999999999_v0_s0.root with Lpt 1.0 GeV and Hpt 1.7 GeV | |
116 | - Run0_999999999_v1_s0.root with Lpt 0.0 GeV and Hpt 1.0 GeV (default) | |
117 | ||
118 | and can be built with the AliMUONCDB class taking as source the root files | |
119 | (found in $ALICE_ROOT/MUON/data/): | |
120 | - lutAptLpt1Hpt1p7.root | |
121 | - lutAptAptLpt1.root | |
122 | ||
123 | respectively. | |
10db214a | 124 | |
2ce5e44e | 125 | The reference for J/psi and Upsilon is as below |
126 | For 1000 Jpsi events with: | |
518eb852 | 127 | <pre> |
2ce5e44e | 128 | AliGenParam *gener = new AliGenParam(1, AliGenMUONlib::kJpsi); |
129 | gener->SetMomentumRange(0,999); | |
130 | gener->SetPtRange(0,100.); | |
131 | gener->SetPhiRange(0., 360.); | |
132 | gener->SetCutOnChild(1); | |
133 | gener->SetChildPhiRange(0.,360.); | |
134 | gener->SetChildThetaRange(171.0,178.0); | |
135 | gener->SetOrigin(0,0,0); | |
136 | gener->SetForceDecay(kDiMuon); | |
137 | gener->SetTrackingFlag(1); | |
518eb852 | 138 | </pre> |
139 | ||
2ce5e44e | 140 | the output should be |
518eb852 | 141 | <pre> |
10db214a | 142 | Efficiency Lpt cut = 0.9061 +/- 0.0456 |
143 | Efficiency Hpt cut = 0.6943 +/- 0.0376 | |
518eb852 | 144 | </pre> |
145 | ||
ea6d7574 | 146 | Similarly, for 1000 Upsilon events (replace kJpsi by kUpsilon), the output |
147 | should be | |
518eb852 | 148 | |
149 | <pre> | |
10db214a | 150 | Efficiency Lpt cut = 0.9872 +/- 0.0458 |
151 | Efficiency Hpt cut = 0.9851 +/- 0.0457 | |
518eb852 | 152 | </pre> |
153 | ||
154 | ||
155 | \section trigger_s4 How to check single muon trigger efficiency versus pt | |
2ce5e44e | 156 | |
2ce5e44e | 157 | The MUONTriggerEfficiencyPt.C macro produces trigger single muon efficiency |
158 | versus pt plots for the 2 pt cuts. | |
159 | Results are compared to the reference (red curves). | |
160 | To be used with (at least) 10000 events as follows | |
518eb852 | 161 | <pre> |
2ce5e44e | 162 | AliGenBox * gener = new AliGenBox(1); |
163 | gener->SetPtRange(0.,10.); | |
164 | gener->SetPhiRange(0., 360.); | |
165 | gener->SetThetaRange(171.000,178.001); | |
166 | gener->SetPart(13); // or -13 | |
167 | gener->SetOrigin(0.,0., 0.); | |
168 | gener->SetSigma(0.0, 0.0, 0.0); | |
518eb852 | 169 | </pre> |
170 | ||
2ce5e44e | 171 | Outputs are stored in MUONTriggerEfficiencyPt.gif/eps/out files |
172 | Important note: this macro works with one (real) muon track per event only | |
518eb852 | 173 | |
2ce5e44e | 174 | Usage: |
518eb852 | 175 | <pre> |
2ce5e44e | 176 | root [0] .L $ALICE_ROOT/MUON/MUONTriggerEfficiencyPt.C+ |
177 | root [1] MUONTriggerEfficiencyPt() | |
518eb852 | 178 | </pre> |
179 | ||
180 | ||
181 | \section trigger_s5 How to get trigger chamber efficiency from data | |
2ce5e44e | 182 | |
2ce5e44e | 183 | Trigger chamber efficiency map is calculated during reconstruction and saved in AliESDs.root |
184 | In order to view and save the map, use macro MUONTriggerChamberEfficiency.C | |
185 | ||
186 | To compile MUONTriggerChamberEfficiency.C | |
518eb852 | 187 | <pre> |
2ce5e44e | 188 | .includepath $ALICE_ROOT/MUON |
189 | .L $ALICE_ROOT/MUON/MUONTriggerChamberEfficiency.C+ | |
518eb852 | 190 | </pre> |
2ce5e44e | 191 | |
518eb852 | 192 | To run MUONTriggerChamberEfficiency.C |
193 | <pre> | |
2ce5e44e | 194 | MUONTriggerChamberEfficiency(); |
518eb852 | 195 | </pre> |
2ce5e44e | 196 | |
518eb852 | 197 | If you want to make the calculated map available for next simulation use option kTRUE, i.e. |
198 | <pre> | |
2ce5e44e | 199 | MUONTriggerChamberEfficiency(kTRUE); |
518eb852 | 200 | </pre> |
2ce5e44e | 201 | |
202 | When running next simulation, please remember to activate trigger efficiency | |
203 | by adding in Config.C: | |
518eb852 | 204 | <pre> |
2ce5e44e | 205 | MUON->SetTriggerEffCells(1); |
518eb852 | 206 | </pre> |
207 | ||
91509ec6 | 208 | This chapter is defined in the READMEtrigger.txt file. |
209 | ||
518eb852 | 210 | */ |
2ce5e44e | 211 |