Skip to content
Snippets Groups Projects

Add reproductions/adaptations of the Run 2 Hlt2 Jet lines

Merged Patrick Spradlin requested to merge spradlin-Hlt2Jets into master

Add Hlt2 lines that reproduce the Run 2 jet lines (Hlt2Lines/Jets).

The implementation uses the pre-functionalized HltParticleFlow and HltJetBuilder algorithms and defines specialized wrappers for them.

The Run 2 jet lines rely on 2-body combinations that are intermediate products of the Topo lines. These combinations are used as secondary vertexes to tag the jets. In order to reproduce this functionality, the new jet line module contains code to perform its own reconstruction of these 2-body combinations.

The Run 2 2-body Topo combinations include V0s that are reconstructed as Hlt2 standard particles. This branch incorporates !220 (closed) in order to obtain V0s in the new framework.

This branch is a cleaned-up version of the work in the spradlin-Hlt2JetsJetLowPt branch, https://gitlab.cern.ch/lhcb/Moore/tree/spradlin-Hlt2JetsJetLowPt, with a simplified change history. It supercedes the spradlin-Hlt2JetsJetLowPt branch.

This is the product of work begun by @amato and @spradlin at the July Hackathon.

Edited by Alex Pearce

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • added 1 commit

    • 9bfda07f - Update to try to conform to argument conventions.

    Compare with previous version

  • Alex Pearce mentioned in merge request !216 (merged)

    mentioned in merge request !216 (merged)

  • Alex Pearce mentioned in merge request !220 (closed)

    mentioned in merge request !220 (closed)

    • Resolved by Patrick Spradlin

      There was one test in the most recent nightly that failed due to this MR. The test was added in !216 (merged) (so you won't have seen it running the tests on your branch; the nightlies merge all non-WIP MRs before running), and checks that all makers in standard_particles can be instantiated and produce some objects.

      What I'd like to discuss here is whether the test is wrong or if it's this MR; I'm leaning towards the former :smile:

      The test finds 'standard particle makers' by grabbing all functions defined in standard_particles that begin with make_. It then instantiates each one by calling it with no argument, and this is where the test fails: there are several makers introduced in this MR with positional (required) arguments.

      As I saw it when I wrote the test, the make_ functions in standard_particles define the 'interface' for users. If you want a kaon, you do make_kaons() or whatever variant you need. As these are 'standard' all behaviour should be specified by defaults, in a similar manner to outputs of the reconstruction (e.g. make_pvs). This MR breaks that interface idea...

      ...but the way the standard particle creation has been split up here makes a lot of sense! Especially when you have a utility function that can be used, for example, to make either K_{\text{S}} or \Lambda^{0}; there are no defaults in this case, so you need positional arguments (e.g. for the decay descriptor).

      Summary

      Given all that, I think the 'internal building blocks' in standard_particles should be prefixed with an underscore, e.g. _make_V0LL. The 'exposed' makers, beginning with make_, are the ones users should use and the ones picked up by the tests, and these should be instantiable without positional arguments.

      What do you think @spradlin? We're coming up with these conventions on-the-fly, so I'm happy to go in a different direction. The only important thing is that we test the 'standard particle makers' somehow (so maybe we re-write the test).

  • Patrick Spradlin added 3 commits

    added 3 commits

    • e9db0b6a - Updated internal intermediate V0 maker names in standard_particles.
    • 1166a41d - Updated more internal intermediate V0 maker names in standard_particles.
    • f5708b09 - Cleanup minor errors introduced in last commit.

    Compare with previous version

  • Edited by Software for LHCb
  • Alex Pearce marked as a Work In Progress

    marked as a Work In Progress

  • Alex Pearce mentioned in merge request !237 (merged)

    mentioned in merge request !237 (merged)

  • Patrick Spradlin added 25 commits

    added 25 commits

    • f5708b09...3439b72e - 15 commits from branch master
    • 0999bab0 - Added copies of the 2018 shared V0s to the Hlt2 standard_particles
    • cb34275d - Clean commit of adaptation of the Run 2 Hlt2 Jet lines developed on the...
    • 899cab48 - Removed function/makers as default arguments (ref....
    • e413d678 - Try to resolve automatic merge conflicts in Hlt2Conf/lines/__init__.py
    • 6099b395 - Update to try to conform to argument conventions.
    • 7944f3f5 - Updated internal intermediate V0 maker names in standard_particles.
    • 0bdd25c3 - Updated more internal intermediate V0 maker names in standard_particles.
    • 0835ac1d - Cleanup minor errors introduced in last commit.
    • b2615b06 - Updated Hlt2Conf.test_hlt2_standard_particles.qmt to recognize some features...
    • fbd82667 - Added CaloCluster unpackers to data_from_file.

    Compare with previous version

  • Just FYI that with !233 (merged) the format of options files has changed a bit, so you might have some conflicts rebasing on master. We can help with that if needed.

  • mentioned in issue #84 (closed)

  • Patrick Spradlin added 42 commits

    added 42 commits

    • fbd82667...24c6a277 - 32 commits from branch master
    • 3fe97409 - Added copies of the 2018 shared V0s to the Hlt2 standard_particles
    • 439c23df - Clean commit of adaptation of the Run 2 Hlt2 Jet lines developed on the...
    • f5fd0b3f - Removed function/makers as default arguments (ref....
    • 7d07f021 - Update to try to conform to argument conventions.
    • 7f12a68d - Updated internal intermediate V0 maker names in standard_particles.
    • 8c27adec - Updated more internal intermediate V0 maker names in standard_particles.
    • 2423d2f0 - Cleanup minor errors introduced in last commit.
    • ef19632c - Updated Hlt2Conf.test_hlt2_standard_particles.qmt to recognize some features...
    • aedecb27 - Update for compatibility with current master.
    • 99f6bcd4 - Disable neutral protoparticle input; minor tweak to V0 cuts.

    Compare with previous version

  • Patrick Spradlin unmarked as a Work In Progress

    unmarked as a Work In Progress

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading