AOD Trigger Analysis in release 13 Simon George

  • Slides: 29
Download presentation
AOD Trigger Analysis in release 13 Simon George Ricardo Goncalo Jamboree BNL 6 -10

AOD Trigger Analysis in release 13 Simon George Ricardo Goncalo Jamboree BNL 6 -10 August 06 Aug 07 BNL US-ATLAS Analysis Trigger analysis - S George &R Goncalo 2007

 • Outline of analysis techniques • Recap: trigger analysis with Rel. 12 Outline

• Outline of analysis techniques • Recap: trigger analysis with Rel. 12 Outline – Trigger menu – Trigger. Decision • Rel. 12 vs Rel. 13 – Trigger. Decision vs Trig. Decision. Tool – Trigger menu changes – Details of Trig. Decision. Tool • Analysis recipes – – – Athena-based AOD recipes Basic Trig. Decision. Tool Advanced Trig. Decision. Tool: Navigation Re-run trigger decision Other tools • Rel. 13 status – What works and what doesn’t • Trigger menus (point to TAPM) • Conclusions 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 2

Trigger Analysis techniques • • Things you can do with AOD in Athena. Check

Trigger Analysis techniques • • Things you can do with AOD in Athena. Check chain status – Did the signature(s) I’m interested in pass or fail? • Look at objects reconstructed by the trigger – Dig a bit deeper into why the chain passed or not – Compare with offline reconstruction – See AOD content talk • Change the trigger cuts – Modify the properties of the hypothesis algorithms – Re-run the decision – Tune the cuts to optimise rate/efficiency 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 3

Recap: what exists in 12. 0. 6 • 12. 0. 6 -7 used for

Recap: what exists in 12. 0. 6 • 12. 0. 6 -7 used for CSC production; – Use CSC-06 configuration: • • • Trig. T 1 Config. Version=“CSC-06” Trig. HLTConfig. Version=“CSC-06” Stream tests use somewhat different menu (STR-01) Main physics trigger signatures: Slice HLT signatures Starting from L 1 items: Comments Electron 2 e 15 i, e 25 i, e 60 2 EM 15, 2 EM 25, EM 60 No isolation in L 1 items; e 25 i ~realistic Photon 2 g 20 i, g 60 2 EM 15 I, EM 60 Start from L 1 items with isolation Muon mu 6, mu 20 i MU 06, MU 20 No isol; mu 20 i ~realistic; L 1 p. T ordering Tau tau 10 i, tau 15 i, tau 20 i, tau 25 i, tau 35 i TAU 10 i, TAU 15 i, TAU 20 i, TAU 25 i, TAU 35 i Jet j 160, 2 j 120, 3 j 65, 4 j 50 J 45, 2 J 45, 3 J 45, 4 J 45 L 1_J 45 not realistic ETmiss met 10 TAU 05 Starts from L 1 tau In addition, technical or “expert” signatures for performance studies – tau. No. Cut, e 10, jet 20… – Needed in practice to allow trigger rerunning (must produce trigger objects) 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 4

What exists in 12. 0. 6 (cont. ) • Full list of trigger signatures,

What exists in 12. 0. 6 (cont. ) • Full list of trigger signatures, including technical signatures 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 5

What doesn’t exist in 12. 0. 6 • Most of the above signatures have

What doesn’t exist in 12. 0. 6 • Most of the above signatures have not been optimized: – This means that the efficiencies and rates are more or less unrealistic – Means that asking if trigger passed is meaningless • Most likely many useful signatures missing in each slice • No prescale factors – These can easily be studied by hand, at least in simple cases • Some existing signatures are “turned off” – b 35 : run in “Accept. All” mode – L 2_Ze 10 : e 10 “technical” signature not storing Trig. Electrons – frjet 10 : problems with L 1 bit encodin/non-optimal calibration • Mixed triggers not possible – tau. XX + ETmiss. YY; mu. XX + e. YY … • No ETsum or Jet Sum triggers yet 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 6

Using Trigger. Decision – 12. 0. 6 • Trigger. Decision: AOD/ESD object filled for

Using Trigger. Decision – 12. 0. 6 • Trigger. Decision: AOD/ESD object filled for all signatures • Retrieve from Store. Gate: – Default SG key is “My. Trigger. Decision” (Trig. Decision. Maker/job. Ofragment_Trigger. Decision. Maker. py) • Query Trigger. Decision: Trigger. Decision* p_trigger_decision; sc = m_store. Gate>retrieve(p_trigger_decision, ”My. Trigger. Decision”); if ( p_trigger_decision->is. Trigger. Passed() ) m_log << MSG: : DEBUG << “Some signature was satisfied!” << endreq; if ( p_trigger_decision->is. Defined(“e 25 i”) ) { bool e_candidate_found = p_td->is. Passed(“e 25 i”); m_log << MSG: : DEBUG << “e 25 i signature was satisfied!” << endreq; } • Filled for whatever signatures were configured – Retrieves configuration tables at initialization for L 1/L 2/EF • Self-contained – No config needed to use it in AOD 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 7

Problems with 12. 0. 6 • Trig. Decision – In order to be self-contained,

Problems with 12. 0. 6 • Trig. Decision – In order to be self-contained, each signature (chain) is stored as a string, along with its pass/fail status – not the most space-efficient approach and does not scale well as the menu grows • Navigation – Outside of the trigger algorithms themselves, no uniform way to relate features from different algorithms, same Ro. I – Use of pointers in some classes as a workaround caused AOD size issues. – No way to know which features relate to successful chains, e. g. which egammas passed the e 25 i trigger? 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 8

Tutorial for 12. 0. 6 • https: //twiki. cern. ch/twiki/bin/view/Atlas/Tri gger. Analysis. Tutorial 1205

Tutorial for 12. 0. 6 • https: //twiki. cern. ch/twiki/bin/view/Atlas/Tri gger. Analysis. Tutorial 1205 • You can still do a lot despite the noted deficiencies. 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 9

Release 12 vs. release 13 • Trig. Decision/Trig. Decision. Tool replace Trigger. Decision –

Release 12 vs. release 13 • Trig. Decision/Trig. Decision. Tool replace Trigger. Decision – What’s new? • • • Compact: chains stored as bits Use config service to interpret bits as chain names Config saved in AOD (ideally per-run) so still self-contained Access through tool to hide this Navigation from chains to related features – Described on following pages • Menu differences – – More complete, but FDR menu planned for 13. 0. 30 Caveats about unoptimized triggers still apply Some changes to chains and AOD content New Steering supports most missing features 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 10

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 11

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 11

Trig. Decision. Tool - details • Trig. Decision. Tool is the interface for users

Trig. Decision. Tool - details • Trig. Decision. Tool is the interface for users to analyse the results of the trigger. – Brings together event-wise information and configuration information (which is run-wise) – Provides access to run-wise info using handles (like human readable chain names) which exist only in configuration. – It is a tool because it has to use number of other Athena services and tools. – It relies on the ESD/AOD object Trig. Dec: : Trig. Decision • The Trig. Dec: : Trig. Decision is an object holding event-wise trigger information. – Trig. Decision is produced in Athena, after trigger has run from RDO, and saved to AOD & ESD – Created by Trig. Decision. Maker algorithm – Inputs are CTPDecision (LVL 1), HLTResult (LVL 2 & EF) and the trigger configuration – It is T/P separated and its persistent partners are defined in the Trig. Event. Athena. Pool package. – It should not be used directly, but via the Trig. Decision. Tool 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 12

Trig. Decision. Tool (cont. ) • There are 4 levels of detail for accessing

Trig. Decision. Tool (cont. ) • There are 4 levels of detail for accessing trigger config information, Trig. Decision. Details. 1. NONE - if no configuration information is needed - and only simple information can be inspected 2. CHAINS - where only chain information is needed - also no configuration is needed 3. CONFIG - when the configuration is needed and user friendly methods are enabled 4. FULL - when also trigger objects need to be accessed • Reference documentation for Trig. Decision. Tool: – • http: //atlas-computing. web. cern. ch/atlascomputing/links/nightly. Dev. Directory/Atlas. Offline/latest_doxygen/Install Area/doc//Trig. Decision/html/class. Trig. Dec_1_1 Trig. Decision. Tool. html Simple, self-contained object Trig. Dec: : Trig. Decision. Record also available – – Originally made for SAN Could be used in AOD for direct ROOT access 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 13

Analysis recipes • • Athena-based AOD recipes Basic Trig. Decision. Tool Advanced Trig. Decision.

Analysis recipes • • Athena-based AOD recipes Basic Trig. Decision. Tool Advanced Trig. Decision. Tool: Navigation Re-run hypotheses – Similar to rel 12 tutorial, not covered today. • Other tools – Trig. Decision. Tool clients 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 14

Reading AOD directly in ROOT? • The recipes presented today all read AOD within

Reading AOD directly in ROOT? • The recipes presented today all read AOD within Athena • Reading AOD with ROOT is experimentally available in 13. 0. X • Not yet possible/supported for the trigger • But progress is being made • Plan to work in it this week • Probably for rel 14 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 15

How-to • 1. Instantiate a Trig. Decision. Tool using namespace Trig. Dec; Trig. Analysis.

How-to • 1. Instantiate a Trig. Decision. Tool using namespace Trig. Dec; Trig. Analysis. Example: : Trig. Analysis. Example(const std: : string& name, ISvc. Locator* p. Svc. Locator) : Algorithm(name, p. Svc. Locator), m_store. Gate("Store. Gate. Svc", name), m_trig. Dec("Trig. Dec: : Trig. Decision. Tool", this), m_log(0) {} • 2. Access the Trig. Decision. Tool methods – To ask if trigger passed (*), which signatures were successful, etc OR • 3. Use the navigation to access trigger objects 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 17

The new Trig. Decision. Tool - Examples 06 Aug 07 BNL Trigger analysis -

The new Trig. Decision. Tool - Examples 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 18

Event pass/fail info • Simply find if each level passed (*) (*m_log) << MSG:

Event pass/fail info • Simply find if each level passed (*) (*m_log) << MSG: : INFO << endreq; (*m_log) << MSG: : INFO << "Exercise 0: Overall trigger decision: " << endreq; (*m_log) << MSG: : INFO << "Pass state = " << (m_trig. Dec->is. Trigger. Passed() ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Level 1 was configured " << (m_trig. Dec->is. Configured(L 1) ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Level 1 was successful " << (m_trig. Dec->is. Passed(L 1) ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Level 2 was configured " << (m_trig. Dec->is. Configured(L 2) ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Level 2 was successful " << (m_trig. Dec->is. Passed(L 2) ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Event Filter was configudred " << (m_trig. Dec->is. Configured(EF) ? "pass" : "fail") << endreq; (*m_log) << MSG: : INFO << "Event Filter was configudred " << (m_trig. Dec->is. Passed(EF) ? "pass" : "fail") << endreq; Trig. Analysis. Example Trig. Analysis. Example INFO Exercise 0: Overall trigger decision: INFO Pass state = pass INFO Level 1 was configured pass INFO Level 1 was successful pass INFO Level 2 was configured pass INFO Level 2 was successful pass INFO Event Filter was configudred pass (*) For simulated data (at least for now) this doesn’t really mean anything 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 19

Find if a signature passed Trig. Decision. Tool: : is. Passed(Trig. Level level, std:

Find if a signature passed Trig. Decision. Tool: : is. Passed(Trig. Level level, std: : string chain) Note: templated code… doing a lot of stuff in the background (*m_log) << MSG: : INFO << endreq; (*m_log) << MSG: : INFO << "Exercise 1: Trigger element" << endreq; (*m_log) << MSG: : INFO << "Level 2: m_trig. Dec->is. Passed(“L 2_e 25 i”) " << (m_trig. Dec->is. Passed("L 2_e 25 i") ? "true" : "false") << endreq; (*m_log) << MSG: : INFO << "L 2_e 25 i Trigger. Element found" << endreq; Trig. Analysis. Example INFO Exercise 1: Trigger element Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Reading HLTResult for Lvl 1 ID=0 Event is Accepted=1 passed. Through=0 HLTStatus=1554 size of raw. Result=815 words (=3260 bytes) Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Found 18 chains in HLTResult Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Counter = 64 success (raw) = 1 pass-through = 0 prescaled = 0 last. Active. Step = 3 name = Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Counter = 74 success (raw) = 1 pass-through = 0 prescaled = 0 last. Active. Step = 2 name = Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Counter = 400 success (raw) = 1 pass-through = 1 prescaled = 0 last. Active. Step = 3 name = Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool. . . DEBUG Counter = 320 success (raw) = 0 pass-through = 1 prescaled = 0 last. Active. Step = 1 name = … and 130 DEBUG lines later… Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO Level 2: m_trig. Dec->is. Passed(L 2, L 2_e 25 i) false 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 20

New stuff! …first a silly example • Get the HLT: : Chain from Trig.

New stuff! …first a silly example • Get the HLT: : Chain from Trig. Decision. Tool const HLT: : Chain* p_chn = m_trig. Dec->get. HLTChain("L 2_e 25 i"); unsigned int code = 0; if (p_chn) { code = p_chn->get. Chain. Counter(); (*m_log) << MSG: : INFO << "Trigger element for L 2_e 25 i has counter id " << code << endreq; (*m_log) << MSG: : INFO << "Level 2: m_trig. Dec->is. Passed(L 2, " << code << “)? = " << (m_trig. Dec->is. Passed("L 2_e 25 i") ? "true" : "false") << endreq; (*m_log) << MSG: : INFO << "L 2_e 25 i chain counter id = " << code << endreq; } else { (*m_log) << MSG: : INFO << "Could not retrieve L 2_e 25 i chains" << endreq; } Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO Trigger element for L 2_e 25 i has counter id 67 Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Item L 2_e 25 i not found. Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO Level 2: m_trig. Dec->is. Passed(L 2, 67)? = false Trig. Analysis. Example INFO L 2_e 25 i chain counter id = 67 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 21

More…prescale factors • Trig. Decision. Tool: : prescale. Factor() Trig. Analysis. Example Trig. Analysis.

More…prescale factors • Trig. Decision. Tool: : prescale. Factor() Trig. Analysis. Example Trig. Analysis. Example Trig. Analysis. Example 06 Aug 07 BNL INFO INFO INFO INFO INFO INFO INFO 177 items in L 1 | L 1 item | prescale | pass | | L 1_1 EM 1| 1| pass| | L 1_2 EM 15 i| 1| fail| | L 1_2 EM 25 i| 1| fail| | L 1_1 EM 60| 1| fail| | L 1_XE 20| 1| fail| | L 1_1 MU 6| 1| fail| | L 1_2 MU 6| 1| fail| | L 1_1 MU 8| 1| fail| | L 1_1 MU 10| 1| fail| | L 1_1 MU 11| 1| fail| | L 1_1 MU 20| 1| fail| | L 1_1 MU 40| 1| fail| | L 1_1 TAU 5| 1| fail| | L 1_1 TAU 10| 1| pass| | L 1_1 TAU 10 i| 1| pass| | L 1_1 TAU 15| 1| fail| | L 1_1 TAU 15 i| 1| fail| | L 1_1 TAU 20 i| 1| fail| | L 1_1 TAU 25 i| 1| fail| | L 1_1 TAU 35 i| 1| fail| | L 1_1 TAU 17 I_XE 30| 1| fail| | L 1_BGRP 0| 100| fail| Trigger analysis - S George & R Goncalo 22

INFO INFO INFO INFO Configured HLT menu - master key=0 |level| chain name |

INFO INFO INFO INFO Configured HLT menu - master key=0 |level| chain name | id |prescale fact|passthr. fact|P/T| | L 2_e 10| 64| 1| 0| 0| | L 2_e 25 i| 67| 1| 0| 0| | L 2_e 60| 68| 1| 0| 0| | L 2_2 e 15 i| 73| 1| 0| 0| | L 2_g 10| 74| 1| 0| 0| | L 2_2 g 20 i| 76| 1| 0| 0| | L 2_g 60| 77| 1| 0| 0| | L 2 | tau 10_L 2| 320| 1| 1| 1| | L 2 | tau 10 i_L 2| 321| 1| | L 2 | tau 15_L 2| 322| 1| 1| 1| | L 2 | tau 15 i_L 2| 323| 1| 1| 1| | L 2 | tau 20 i_L 2| 324| 1| 1| 1| | L 2 | tau 25 i_L 2| 325| 1| 1| 1| | L 2 | tau 35 i_L 2| 326| 1| 1| 0| 06 Aug 07 BNL lower chain | id | EM 01| Y| EM 01| N| EM 01| N| EM 01| N| Trigger analysis - S George & R Goncalo pass |after prsc| Y| pass | N| fail | N| fail | Y| pass | N| fail | Y| fail | fail | Y| fail | N| fail | 23

v Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain EF_e 25

v Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain EF_e 25 i found in EF Trig. Analysis. Example INFO Got a vector of 0 TEs. Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO Chain L 2_e 25 i: Counter = 67 success (raw) = 0 passthrough = 0 prescaled = 0 last. Active. Step = 0 name = L 2_e 25 i passed: 0 Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO For L 2_e 25 i, 1 TEs found. Trig. Analysis. Example. Trig. Dec: : Trig. Decision. Tool DEBUG Chain L 2_e 25 i found in L 2 Trig. Analysis. Example INFO For L 2_e 25 i, prescale factor is 1 Trig. Analysis. Example INFO TE is active 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 24

Trigger data via other analysis tools • These tools are clients of Trig. Decision.

Trigger data via other analysis tools • These tools are clients of Trig. Decision. Tool • Event displays – Atlantis (Trig. Jive. XML) – VP 1 – Status: both working with new Trig. Decision (we think) • Analysis tools – Event. View • Status: to be done for rel. 13 – CBNTAA • Status: to be done for rel. 13 • Trigger rate tool – Status: being done • Your analysis – Starts here… 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 25

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 26

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 26

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 27

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 27

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 28

06 Aug 07 BNL Trigger analysis - S George & R Goncalo 28

Release 13 status for Trig. Decision. Tool • Some known problems with Trig. Decision.

Release 13 status for Trig. Decision. Tool • Some known problems with Trig. Decision. Tool and related code – List them… or too technical, ref twiki? – (configured chains is actually “started”; crash when trying to get L 2 features (fix in head); …) • It works well enough to try it. • Feedback is very useful at this stage. 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 29

Conclusions • Trig. Decision. Tool, and the steering, configuration and navigation code behind it,

Conclusions • Trig. Decision. Tool, and the steering, configuration and navigation code behind it, provide a major step up in functionality for analysis of the trigger performance. • Now would be a great time to try it out and provide feedback. 06 Aug 07 BNL Trigger analysis - S George & R Goncalo 30