Implemented new sliding-window seed finder in CbmTaskBuildRawEvents.
Implemented a new seed finder based on the old "sliding-window" event builder "CbmBuildEventsSimple". Seed times are obtained when the number of digis within a sliding time window exceeds a threshold. The purpose is to enable seed finding with a reference detector which has large background noise.
Merge request reports
Activity
Suggested reviewer: @v.friese
Dear @f.uhlig, @p.-a.loizeau, @d.smith,
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
there are now at least two different versions of the seed finder implemented in the task. In my opinion both should be implemented as algorithms and then it is up to the user which one to plug in.
@f.uhlig I agree in principle. The reason why I have not done so so far is because each seed finder consists only of a few lines of code and is encapsulated in a single function. Not sure that this warrants a stand-alone class for each, together with a base class, which will be required. Probably, if the number of seed finders grows to much larger than two, this is ultimately the right approach, so implementing it now might be more future proof. Also, I'm not happy with how the switchting between seed finders is currently implemented. There should be a more elegant solution, possibly using an enum for different seed finder types. I will think about it. The main purpose of this MR was to provide @v.friese with a working example, that can be used for tests etc.
added 4 commits
-
dbd6eba3...e5f0a293 - 2 commits from branch
computing:master
- 7ece7548 - Implemented new sliding-window seed finder in CbmTaskBuildRawEvents.
- 5334af4e - CbmTaskBuildRawEvents: Removed 'single-instance' seed time filler as it is...
-
dbd6eba3...e5f0a293 - 2 commits from branch
added 10 commits
-
5334af4e...661105d3 - 6 commits from branch
computing:master
- 5927dff5 - Bugfix: Replaced ECbmModuleId::kHodo by ECbmModuleId::kT0 in...
- 02fc57f7 - Implemented new sliding-window seed finder in CbmTaskBuildRawEvents.
- deedd129 - CbmTaskBuildRawEvents: Removed 'single-instance' seed time filler as it is...
- 98e873f1 - Added new class CbmSeedFinderSlidingWindow.
Toggle commit list-
5334af4e...661105d3 - 6 commits from branch
@f.uhlig The sliding window seed finder now has been implemented in a separate algo class. Setting to WIP until the new class has been integrated into the event builder task.
Edited by Dominik SmithThis MR already includes the bugfix proposed in !462 (merged)
added 1 commit
- eacfddb4 - Added new class CbmSeedFinderSlidingWindow. Replaced the seed finding...
added 1 commit
- 6343920d - Added new class CbmSeedFinderSlidingWindow. Replaced the seed finding...
@v.friese The WIP flag has been removed. The current version is fully operational. On possibility for further refining the seed finder is to combine the sliding-window approach with the "detector list" approach. Instead of passing a digi vector to the seed finder one could pass a sorted list of digi times to the seed finder, which was obtained from multiple detectors. Before implementing this I would like some feedback as to whether this is a desirable feature.
added 1 commit
- 8dbeff13 - CbmSeedFinderSlidingWindow: Class now also accepts a vector with explicit...
In preparation for what I described above, the sliding-window seed finder now also accepts a vector of doubles (explicit times) instead of a vector of digis. The input type then triggers a template selection.
This change came at a small price: In the old version, the seed finder would automatically detect non-allocated pointers in the vector of digis and ignore them. Now, any pointer that is nullptr triggers a crash and an error message. I assume this case should never occur in the input data, at least I am not aware that the unpackers would ever do this.
added 1 commit
- fc56768e - CbmSeedFinderSlidingWindow: Class now also accepts a vector with explicit...
added 7 commits
-
5d871213 - 1 commit from branch
computing:master
- 07d55827 - Bugfix: Replaced ECbmModuleId::kHodo by ECbmModuleId::kT0 in...
- 031e18f4 - Implemented new sliding-window seed finder in CbmTaskBuildRawEvents.
- 817a14ff - CbmTaskBuildRawEvents: Removed 'single-instance' seed time filler as it is...
- 2ebfdfeb - Added new class CbmSeedFinderSlidingWindow. Replaced the seed finding...
- 22d9bbd5 - CbmSeedFinderSlidingWindow: Class now also accepts a vector with explicit...
- 9551ff6e - CbmTaskBuildRawEvents: List of seed detectors can now be used with sliding-window seed finder.
Toggle commit list-
5d871213 - 1 commit from branch