online: BMON hit-finder
The merge request introduces a separate hit finder for BMON in the online reconstruction chain.
TODO:
-
hit calibrator configuration -
hit calibrator proposal -
hit calibrator validation -
hit finder configuration -
hit finder proposal -
hit finder validation
@n.herrmann, could you please validate the calibration procedure?
Algorithm description
BMON addressing
Original addresses of BMON digis are used. For mcbm2024_nickel runs, the two BMON diamonds are distinguished explicitly by the selection bitmask and the diamond hardware addresses, which are specified in the configuration file (e.g., CbmSoft/cbmroot_parameter!219 (diffs)).
Digi calibration
The digi calibration procedure (see cbm::algo::bmon::Calibrate::operator()) is taken from one for TOF (see cbm::algo::tof::Calibrate::operator()). NB: Probably, some of the calibration steps are unnecessary.
Hit class
The cbm::algo::bmon::Hit class contains the hit time, time error, diamond address and number of channels.
- time error is set temporarily to 0 (FIXME: provide a reasonable definition of time uncertainty)
- the hit address does not contain information on channel: this should reduce the complexity of the hit PartitionedVector (number of partitions equals to number of diamonds).
- number of channels corresponds to the number of digis, which were used to create a hit: either 1 or 2
Hit-finding algorithm
A sample of input digis is bucket-sorted by diamonds (on the steering class level). During the sorting the digis coming from the dead channels (specified in a config) are rejected. NB: Probably, a rejection by charge threshold should be considered here as well.
The algorithm has a O(nDigis) time complexity and relies on time-sorting of digis within a diamond, which is natural for real data taking.
The digis are iterated over the range (digis.begin(), prev(digis.end())). If the time difference between this digi and the next digi is less then 1ns (configurable) and if the channels (strips) are neighbouring, a hit is created from two digis. In this case, the time of a hit is calculated as a weighted average of the digi times, with weights equal to digi charges (see Hit constructor).
Otherwise, a single digi is used to create a hit (see Hit constructor).
Merge request reports
Activity
added Online Reconstruction mCBM labels
requested review from @p.-a.loizeau
assigned to @v.friese
mentioned in merge request !2016 (closed)
added 6 commits
-
208fdc87...40285ba7 - 4 commits from branch
computing:master
- dc5a275f - online: BMON digi calibrator
- 70b1f1aa - BMON calibrator: flexible configuration
-
208fdc87...40285ba7 - 4 commits from branch
Dear @d.smith, @fweig, @f.uhlig, @v.friese, @p.-a.loizeau, @n.herrmann, @i.deppner,
you have been identified as code owner of at least one file which was changed with this merge request.
Please check the changes and approve them or request changes.
added CodeOwners label
added 8 commits
- 092e2a2f - online: processing of multiple tasks in a single qa::Data instance
- a7284d60 - updates on online QA + bugfix of histogram server
- 9d8bbaf8 - online qa: task header and QA-manager in the online binary
- 47868ee2 - online-qa: moving the tracking QA on the new framework
- 661e8ef7 - online: BMON digi calibrator
- eb6803d8 - BMON calibrator: flexible configuration
- c6973f76 - online: BMON hitfinder
- 46d6eb83 - online: BMON hitfinder QA
Toggle commit listmentioned in merge request !2022 (merged)
added 10 commits
-
46d6eb83...0313f4e3 - 2 commits from branch
computing:master
- 1d44392d - online: processing of multiple tasks in a single qa::Data instance
- 9834a3e6 - updates on online QA + bugfix of histogram server
- f79115e4 - online qa: task header and QA-manager in the online binary
- 65588415 - online-qa: moving the tracking QA on the new framework
- 8af02614 - online: BMON digi calibrator
- 868e3199 - BMON calibrator: flexible configuration
- dc093deb - online: BMON hitfinder
- a7cfd429 - online: BMON hitfinder QA
Toggle commit list-
46d6eb83...0313f4e3 - 2 commits from branch
mentioned in merge request !2000 (merged)
- Resolved by Pierre-Alain Loizeau
To be taken into account for review: built upon !2021 (merged) which introduces the QA manager (see first 4 commits)
=> Should be merged after itMade this a thread so that we do not forget it before merging
mentioned in merge request !2021 (merged)
added 11 commits
-
a7cfd429...6c6d5d39 - 3 commits from branch
computing:master
- 33d66448 - online: processing of multiple tasks in a single qa::Data instance
- bdcfb32f - updates on online QA + bugfix of histogram server
- 39bb2a1b - online qa: task header and QA-manager in the online binary
- f0d19046 - online-qa: moving the tracking QA on the new framework
- fe67b639 - online: BMON digi calibrator
- 79ea3969 - BMON calibrator: flexible configuration
- f394ec1e - online: BMON hitfinder
- 318f8a3b - online: BMON hitfinder QA
Toggle commit list-
a7cfd429...6c6d5d39 - 3 commits from branch
added 9 commits
-
feca4502 - 1 commit from branch
computing:master
- 5dc8c2cd - online: processing of multiple tasks in a single qa::Data instance
- 230021d3 - updates on online QA + bugfix of histogram server
- 698ae9a8 - online qa: task header and QA-manager in the online binary
- 4a7f6e4b - online-qa: moving the tracking QA on the new framework
- 40ccfdef - online: BMON digi calibrator
- 2cb3a367 - BMON calibrator: flexible configuration
- c4be978e - online: BMON hitfinder
- f95b61f8 - online: BMON hitfinder QA
Toggle commit list-
feca4502 - 1 commit from branch
added 8 commits
-
f95b61f8...9a7d6c30 - 4 commits from branch
computing:master
- 6ba359e5 - online: BMON digi calibrator
- 4b7a7509 - BMON calibrator: flexible configuration
- 22f028a0 - online: BMON hitfinder
- 44f4fabc - online: BMON hitfinder QA
Toggle commit list-
f95b61f8...9a7d6c30 - 4 commits from branch