Skip to content

RD developments for the start of 2025 data-taking

Miguel Ramos Pernas requested to merge rd-devel into master

Goals

Implement major changes across the RD modules, including bug fixes, sanitation, bandwidth and rate reduction and the inclusion of a few new lines with minimal impact in the overall bandwidth of the experiment.

To be merged together with lhcb-datapkg/ParamFiles!124.

Overall impact on the bandwidth

Taken from the difference between this test and this reference. The increases in the sprucing are mostly due to the changes on the inclusive dilepton lines (handled by RD).

global

image

sprucing (turbo)

image

sprucing (full)

image

Contributing

The source branch of this merge request works with the following environment for the other LHCb repositories (LCG: 105c):

Repository commit
Allen a0fc2f0d492f3028a23a83063e8dc544de250814
Rec 3e09b408e4354c6db964a4a6ac36f060e7c89860
Lbcom e97494fcda91710e8dc088df2bf4d58bf5a9b84e
LHCb f8e979f927ebdc62896c7f2f35d7646077534ec8
Detector 959a4a3b988ff28821d52822e5d3e4b463134d9e
Gaudi 979e3109b95cadcb8a51a8cd7dfa1d39e2399e30
DBASE/AppConfig b19e99385b0ef47b60655f52f5af3618ff81ea79
DBASE/PRConfig 356c0b2432f91796f522dc082ac17f3112170dbd
DBASE/SprucingConfig f182f6251cd2bf4db911742e6d13b67af8afab59
PARAM/ParamFiles rd-devel
Alignment dbf64ea53152b55a19c7ed74bc4a6e24fc0a9448

Speak to @mramospe and @matzeni before you plan to introduce changes. DO NOT PUSH directly to the branch of this MR (rd-devel) unless you are instructed to do so by the coordinators. Additions for the start of 2025 data-taking should happen in independent branches, one per topology. See the presentations from the RD Hackathon in December for more details. If you want to modify anything, please check first whether there are other relevant MRs with the RD label that implement changes in you modules (i.e. work on a similar topology), and comment on them instead. The deadline to add contributions to this branch is 19/02/2025.

The tests must be run starting from this snippet and then adapted to included the suggestions from this mattermost conversation.

All the additions need to be tested locally, including:

  • Impact on the bandwidth and rate: if including new lines, these must be well justified (i.e. the physics case must not be already covered by other existing lines) and have rates and bandwidths below 100 Hz and 10 MB/s, respectively. This must be tested on real data. Follow the instructions at the RD migration meeting for advice on how to proceed. If you are tweaking existing lines the same thresholds apply.
  • Impact on the throughput: comparing the time with the execution of 2024-patches with no extra modifications.
  • (optional) Determine efficiencies: if there is simulation already available, it will be interesting to know the efficiencies so we ensure that there is no bug in the selections.

Do not rebase or force-push to this branch without the consent of @mramospe and/or @matzeni, since this might lead to losses on the changes

Changes

The modifications that were implemented are shown here:

Improvements in B -> (X) tau l lines: !4173 (merged)

By @fabudine, @fpolci, @tfulghes

  • Fixed bug in units for eta' (electron energy threshold from 400 GeV -> 350 MeV)
  • Renamed file b_to_xtaul_hlt2 -> b_to_xtaul_3pi_hlt2
  • Renamed file b_to_tautau_hlt2 -> b_to_taul_3pi_hlt2
  • Renamed lines 'Hlt2RD_BsToTauMu_TauTo3Pi_OS' and 'Hlt2RD_BsToTauE_TauTo3Pi_OS' to 'Hlt2RD_BdToTauMu_TauTo3Pi_OS' and 'Hlt2RD_BdToTauE_TauTo3Pi_OS'. These lines were moved from the file b_to_ll_LFV_hlt2.py to b_to_taul_3pi_hlt2. Prescaling was removed.
  • Introduced 'Hlt2RD_BdToTauMu_TauTo3Pi_SS' and 'Hlt2RD_BdToTauE_TauTo3Pi_SS' lines
  • Selections for electrons, muons and tauons are shared across all B -> (X) tau l lines
  • Selections for B(s) modified to align b_to_taul lines.
  • tau vertex chi2 selection loosened from 6 -> 9
  • Introduced soft cut 0.1 mm < bpvvdrho < 8 mm on for all taus decaying into 3pi.
  • Removed prescale and persistreco arguments from line constructors since they were all set to 1 and False, respectively, by default

Improvements to the strange decay lines: !4254 (merged)

By @mramospe, @tharris, @tmombach, @femiguel, @sargueda

  • Redefine the builders to split the requirements between mesons and hyperons (the latter can apply requirements on the transverse momentum)
  • Implement downstream lines
  • Remove obsolete or unused lines
  • Apply opening angle requirements among the decay products to remove ghosts
  • Port the inclusive dimuon line and add a dielectron soft line
  • Optimize the requirements for downstream lines
  • Implement custom requirements for electron modes (tighter kinematic requirements and relaxed PID)
  • Revisit requirements for hyperons
  • Revisit the prescales

Improvements to radiative b decay lines: !4276 (merged)

By @fibishop, @martorel, @yihou

  • Refactor by consolidating copy+paste code into functions; moving all builders into builders/b_to_xgamma_exclusive_builders, and requiring identical selections for identical topologies+physics cases
  • Retuning of generic di/trihadron selections to control rates
  • Loosen KS selections
  • Use pi rather than K hypothesis for mass window for ppi builder
  • Remove FDCHI2(B) cut for KK/Kpi/pipiGamma lines
  • Loosen PIDE cut for downstream conversion electrons
  • Move Lb->LGee and B+->K*+Gee lines spruce->HLT2
  • Remove most duplicated lines from spruce (keep some to allow inclusive line validation)
  • BPV->OWNPV
  • Add register_line_builder to Hlt2RD_BdToKsKKGamma_DD and Hlt2RD_BdToKsKpiGamma_DD
  • Make all persist_reco=False and add iso/tagging parts/pvtracks where necessary

Removal of Global Event Cut (GEC) from Inclusive Detached Dilepton (IDD) lines: !4196 (merged)

By @mtat

  • Remove GEC from all MVA-based IDD lines (not cut-based lines)
  • Add ECAL acceptance requirements to all dielectron and electron-muon inclusive lines (both IDD and cut-based)

Changes for the baryon number violating and lepton flavour violating lines : !4148 (merged)

By @matzeni

Change BPV to OWNPV functors for Inclusive Detached Dilepton (IDD) lines: !4401 (merged)

By @mtat

  • Change all BPV functors (and corresponding variable names) to OWNPV in IDD lines
  • Remove a lifetime argument in make_neutral_lls builder as this was not used anywhere

Changes to Rare Tau Decay Module (!4282 (merged))

by @sicapell @bemumme

  • general refactoring of code with static function for each different set of cuts on tracks and builders
  • add CHI2DOF<4 and GHOSTPROB<0.5 cut on tracks for HLT2_DsToPhiPi_PhiToMuMu and Hlt2_TauToMuMuMu
  • changes for the builder HLT2_DsToPhiPi_PhiToMuMu: used 3bodyBuilder as TauToMuMuMu , changing also the decay descriptor removing the explicit \\phi(1020)
  • new Hlt2_TauToMuMuMu_3Mu_SS to study combinatorial background
  • removed prescale from TauToMuMuE and TauToPMuMu
  • change BPV to OWNPV
  • Improve the selection and retrain the MVA of Hlt2RD_TauToMuGamma_EE and Hlt2RD_TauToMuGamma_EE_MVA

B2ll line improvements: !4153 (merged)

by @jherdiec @rquaglia

  • Includes fixes of B2EMu SameSign line by @rquaglia (closes !4021 (closed))
  • Change OWNPV to BVP on builders/b_to_ll_builders.py level
  • fix wrong labels, e.g. dimuons variable in B2EEGamma line
  • fix keyword argument forwarding in filter_B2MuE of b_to_ll_builders.py and keyword argument bug in B2EMu builder make_rd_detached_mue at rdbuilder_thor.py level

B2Xll line improvements: !4139 (merged)

overseen by @jagoodin @mtat, assembled in several MRs, linked with proponents below

Refactor cut-based incl. det. dilepton trigger: !4349 (merged)

by @jagoodin

  • Refactoring cut-based incl. det. trigger to reduce code duplication
  • Replace BPV with OWNPV in make_inclusive_cut_dilepton_plus_tracks
  • Include cut on lepton momentum in make_inclusive_cut_electronmuon

Reduce BW of sprucing lines: !4505 (merged)

by @mtat

Change to inclusive detached dilepton lines:

  • Tightened B vertex chi2 cut from 20 to 16 in all inclusive detached dilepton lines

Changes to SpruceRD_{BuToHp,B0ToHpHm}{EE,MuMu}{_SameSign}:

  • Removed topo as input to all btoxll sprucing lines
  • Tightened B vertex chi2 from 20 to 16
  • Tightened all hadron IP chi2 cuts by 1 unit
  • Tightened PID_MU from -3 to -2.5
  • Tightened lower end of B mass window in dielectron lines from 4.2 GeV to 4.3 GeV
  • Tightened electron PT cuts from 100 MeV to 200 MeV in BuToHpLL and 250 MeV in B0ToHpHmLL
  • Tightened DOCA chi2 cut on Jpsi from 36 to 20 on muon lines (cut is already at 10 for electron lines)
  • Tightened Jpsi vertex chi2 cut from 30 to 20
  • Added a Kst IP chi2 cut of 6 (8) to B0ToHpHmMuMu (EE)

Change to tau lines:

  • Tightened some existing prescales in btosmutau_exclusive_spruce.py Change that will affect other WGs:
  • Fixed bug in standard_particles.py where momentum cut was not applied
Edited by Miguel Ramos Pernas

Merge request reports

Loading