Skip to content

CPAlgorithms: various minor improvements for more user-friendly experience

Baptiste Ravina requested to merge ravinab/athena:cpalgo_improvements into main

With the new YAML-based config approach for configuring CPalgo blocks (see !63155 (merged)), it is now important to improve the readability of the configs and make the user experience easier. The following changes are implemented:

  • in JetAnalysisConfig, rename the configurable properties reduction and JEROption to systematicsModelJES and systematicsModelJER (much clearer)
  • in EventSelectionConfig, change the default type of the configurable property selections from string to list (correct). This typo didn't lead to any problem before, until the YAML-based config checks. Also remove the redundancy between the two properties blockname and name, so the user only needs to pass name.
  • in ConfigText.py, which sets the availability of config blocks for the YAML file together with their defaults:
    • for FTagConfig, set postfix to empty by default (which leads to the unique name f"{btagger}_{btagWP}")
    • make available the following config blocks: ObjectCutFlowBlock, EventCutFlowBlock, EventSelectionConfig, EventSelectionMergerConfig, BootstrapGeneratorConfig
    • set defaults for the EventCutFlowBlock: read from EventInfo without any prior selection (should really be the case 99% of the time, these options are just available for completeness)
  • in PileupReweightingBlock, add the mcChannelNumber to the output (very useful), as well as the beamspot weight (necessary for Run 2). Also save the pileup weight itself, and use the convention weight_X (so that a user can search the output tree for all weights with tree->Print("weight*")).
  • in GeneratorAnalysisBlock, change the behaviour on data samples to not set up any algorithm instead of crashing (saves the user from having a different YAML config file for data!). Also adapt to the weight_X convention. Set more useful defaults.
Edited by Baptiste Ravina

Merge request reports