Skip to content

Call Allen from Moore

Dorothea Vom Bruch requested to merge dovombru_Allen_Moore_integration into master

Adds functionality to call Allen from Moore, one event at a time. The conditions and geometry information are passed to Allen through the AllenUpdater. Raw banks are dumped to the TES in the format expected by Allen. Output from Allen is saved in the HostBuffers struct, which is also written to the TES. Then various converters convert Allen objects to baseline LHCb objects, such as tracks and vertices. These are then used for physics checks.

The following checks are possible on all tracks of all events:

  • Track efficiency (PrChecker) and PV efficiency & resolution check (PrimaryVertexChecker), using Hlt/RecoConf/options/hlt1_reco_baseline_and_Allen_with_mcchecking.py
  • Track resolution (TrackResChecker), using Hlt/RecoConf/python/RecoConf/options/hlt1_reco_allen_trackresolution.py
  • IP resolution (TrackIPResolutionCheckerNT), using Hlt/RecoConf/options/hlt1_reco_allen_IPresolution.py
  • Muon ID efficiency, using Hlt/RecoConf/options/hlt1_reco_allen_muonid_efficiency.py
  • PV efficiency & resolution will be added with !501 (closed)

Allen can also be called as a trigger. Similar to the run_moore call, run_allen is added for this purpose. The Allen updater is configured in run_allen or run_allen_reconstruction. Similarly, the HltANNSvc is configured in run_allen based on the line names stored in the Allen configuration file, created at Allen build time. Hlt/Hlt1Conf/options/allen_hlt1_pp_default.py is the options script to call the Allen trigger, which will run the full HLT1 including selections and return the HostBuffers content as well as the DecReports to TES.

Allen HLT1 trigger rates are printed in the form of counters like so:

RunAllen                            SUCCESS Number of counters : 22
 |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
 |*"Selected by Hlt1BeamOneDecision"               |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1BeamTwoDecision"               |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1BothBeamsDecision"             |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1D2KKDecision"                  |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1D2KPiDecision"                 |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1D2PiPiDecision"                |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1DiMuonHighMassDecision"        |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1DiMuonLowMassDecision"         |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1DiMuonSoftDecision"            |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1ErrorEventDecision"            |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1GECPassthroughDecision"        |        10 |          9 |( 90.00000 +- 9.486833)% |
 |*"Selected by Hlt1LowPtDiMuonDecision"           |        10 |          1 |( 10.00000 +- 9.486833)% |
 |*"Selected by Hlt1LowPtMuonDecision"             |        10 |          1 |( 10.00000 +- 9.486833)% |
 |*"Selected by Hlt1NoBeamsDecision"               |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1ODINLumiDecision"              |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1ODINNoBiasDecision"            |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1PassThroughDecision"           |        10 |         10 |( 100.0000 +- 0.000000)% |
 |*"Selected by Hlt1SingleHighPtMuonDecision"      |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1TrackMVADecision"              |        10 |          1 |( 10.00000 +- 9.486833)% |
 |*"Selected by Hlt1TrackMuonMVADecision"          |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1TwoTrackMVADecision"           |        10 |          0 |( 0.000000 +- 0.000000)% |
 |*"Selected by Hlt1VeloMicroBiasDecision"         |        10 |          0 |( 0.000000 +- 0.000000)% |

Two tests are added with this MR: One for writing the Allen DecReports to an MDF file, the second to compare the DecReports from the MDF file with the counters in the log file of the test producing the MDF file.

Depends on Allen!281 (merged), Rec!1897 (merged), Allen!385 (merged), Allen!382 (merged), Allen!402 (merged), LHCb!2649 (merged), Online!388 (merged), Allen!418 (merged),

requires !574 (merged) for ref. updates.

Edited by Christopher Rob Jones

Merge request reports