Skip to content
Snippets Groups Projects

PrChecker functional

Merged Sebastien Ponce requested to merge sponce_PRChecker2Refactoring into master

Major refactoring of the PrChecker to make it fully functional and thread safe. Current state is the following :

  • PrChecker2 has been dropped, replaced with a new PrChecker
  • the new PrChecker only deals with one type of tracks
  • so the configuration of the different types to be checked has moved to configuration
  • and this includes in particular the cuts to be applied
  • new Prchecker is functional
  • thread safety has not yet been tested

This merge request does not change the physics output but does change the ref files, as indentation and checker names have changed. I did check (using RegexpReplacer in LHCbExclusions.py) that everything is consistent. For the record, here is what I added to it :

    RegexpReplacer(
        orig=r'^VeloPrChecker.Velo  *',
        repl=r'SomePrChecker ') +
    RegexpReplacer(
        orig=r'^PrChecker[^ ]*  *',
        repl=r'SomePrChecker ') +
    RegexpReplacer(
        orig=r'  *',
        repl=r' ') +
    RegexpReplacer(
        orig=r'^[^ ]*MCCheck  *',
        repl=r'SomePrChecker ') +
    RegexpReplacer(
        orig=r'^[^ ]*MC\.\.\. INFO',
        repl=r'SomePrChecker INFO') +

For practical purposes, I've added these lines to BrunelExclusion in Brunel!710 (closed) so that it's easier to validate the changes.

Edited by Marco Cattaneo

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
  • @dovombru I think your use case ir perfectly valid and on top the changes I've made go in the direction of defining the cuts in the python code anyway (they are now in PrUpgradeChecking.py).

    So I'll modify PrCheckerEfficiencyPlots.py to adapt it.

  • added 1 commit

    • 38b6b12d - Fixed PrKernelDict.xml after removal of IPrCounter

    Compare with previous version

  • Sebastien Ponce resolved all discussions

    resolved all discussions

  • added 1 commit

    • cd9e7952 - Fixed handling of double eta25 entries in PrChecker cuts and title size of TTCounters

    Compare with previous version

  • added 1 commit

    • 76027953 - Fixed handling of double eta25 entries in PrChecker cuts and title size of TTCounters

    Compare with previous version

  • @dovombru PRConfig!75 converts the options files. There were 2 actually (also PrCheckerEfficiencyPlots_HLT2.py).

    Now, I've translated the code as it should be. But that "fixes bugs" and thus the output is now different. What I call "bugs" here (and it would be nice you can confirm they are not features) are extra cuts and extra checkers that were/were not running although you did not ask for/suppress them. They were there because the existing checkers were only half overwritten and thus still half used.

    For example, in PrCheckerEfficiencyPlots ouput :

    • cuts starting with numbers in the Velo, Forward and UpStream output disappeared
    • the dedicated VeloPrChecker is not there anymore
    • lines in TT efficiencies were duplicated, adding a version with extra ">3TT" for each one

    Basic idea is that now the output is clean and corresponds to the config file. Just tell me whether it is ok or whether some things need to be put back as they were (maybe the extra VeloChecker ?)

  • Thanks for the pointer to the second script. FYI @mengzhen this script is being adopted to the refactoring of the PrChecker.

    Concerning the features: I only care about the histograms being created with the specific categories I define in PrCheckerEfficiencyPlots.py. If by "cuts starting with numbers" you refer to the name, I do not care. I believe these appear in the default categories? Similarly for the text output: it is not relevant for creating the efficiency histograms.

    What do you mean by the extra VeloChecker? The many categories @rquaglia added including electrons and the region outside 2 < eta < 5? I believe we should be able to run this checker still.

  • Ok, then I'll readd Renato's checker. Then I'll let you check the nightlies when this will be merged and we can fine tune in case there is still something wrong

  • @cattanem I think you can unwip when you have a slot

  • Marco Cattaneo added 1 deleted label

    added 1 deleted label

  • @sponce, this will run in lhcb-tdr-test, but presumably many Brunel tests will fail due to the changes described in your RegexpReplacers above. Could you please make also a MR to Brunel, adding the above to Rec/Brunel/python/Brunel/QMTest/BrunelExclusions.py, so we can spot any real diffs?

  • Sebastien Ponce mentioned in merge request Brunel!710 (closed)

    mentioned in merge request Brunel!710 (closed)

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