Skip to content
Snippets Groups Projects

LoKiGen: add more symbols : GMINTREE, GMAXTREE, GSUMTREE & GMULTTREE

Merged Vanya Belyaev requested to merge vanya-lokigen-v1 into run2-patches

Phys/LoKiGen: add new symbols

  • GMINTREE : e.g. "GMINTREE( GPT , 'mu+' == GABSID) > xxx * GeV" - it can mimic certains selection/tripping criteria and also L0Muon trigger
  • GMAXTREE
  • GSUMTREE : e.g. "GMINTREE( GPT , ( 'pi+' == GABSID ) | ( 'K+' == GABSID ) ) > xxx * GeV" - it mimics some popular stripping/Hlt2 cuts used by Charm and BnoC groups
  • GMULTTREE : "GMULTTREE( GPT , ( 'mu+' == GABSID ) ) > xxx * GeV * GeV " - it mimics L0DiMuon-TOS for eg. B-> ( J/psi -> mu mu ) X decays

They are useful to extend and simplify the syntax of LoKi::GenCutTool allowing for mimic some trigger (e.g. L0Muon and/or L0DiMuon) and/or stripping selection criteria (like scalar sum of Pt, massively used by Charm and BnoC working groups). It will allow to mimic certain selection/stripping/trigger criteria as tight generator-level cuts, drastically improving the overall performance of MC-production system.

This MR is prepared for run2-patches branch and to be merged also for the master branch. For (rather unlikely) case Gauss-managers accept my recent proposal for agressive usage of tight generator-level cuts, it would have a lot of sense to discuss the backport of this MR to Sim09x branch of Gauss

Edited by Vanya Belyaev

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
  • Author Developer

    ignore sits inside the method:

    StatusCode LoKi::AuxFunBase::Error
    ( const std::string& msg ,
      const StatusCode&  sc  ,
      int mxprint            ) const
    {
      sc.ignore() ;
      return LoKi::Report::Error ( objType() + ": \t" + msg  , sc, mxprint ) ;
    }

    and

    StatusCode LoKi::Report::Error
    ( const std::string&  msg ,
      const StatusCode&   st  ,
      const size_t        mx  )
    {
      st.ignore() ;
      return LoKi::ErrorReport::instance().Error( msg , st , mx ) ;
    }

    Shouldn't it be enough?

  • I don't think so, because the function also returns a StatusCode, that is not tested. At least, the version from GaudiCommon needs to be tested.

  • Vanya Belyaev added 1 commit

    added 1 commit

    Compare with previous version

  • Author Developer

    I think the checked StatusCode is copied and the corresponding flag is copied also.. but OK, it is fixed now.

  • Marco Cattaneo resolved all discussions

    resolved all discussions

  • Marco Cattaneo mentioned in commit e3740ac1

    mentioned in commit e3740ac1

  • Marco Cattaneo mentioned in commit 1048f3c3

    mentioned in commit 1048f3c3

  • Marco Cattaneo mentioned in merge request !1376 (merged)

    mentioned in merge request !1376 (merged)

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