Add new Muon PIDs object in SOA format
All threads resolved!
All threads resolved!
Compare changes
Files
12+ 9
− 10
@@ -12,7 +12,6 @@
@@ -177,15 +176,15 @@ namespace LHCb::Event {
This merge request builds on top of !2095 (merged).
Adds LHCb::Pr::Muon::PIDs
object which mainly consists of
class PIDs {
std::vector<int> m_statuses;
std::vector<float> m_chi2Corrs;
Zipping::ZipFamilyNumber m_zipIdentifier;
and follows a similar structure as https://gitlab.cern.ch/lhcb/Rec/blob/master/Phys/SelKernel/SelKernel/VertexRelation.h.
Only the IsMuon
flag is implemented for now, more can be added later. Checking the IsMuon
flag is vectorized.
The version to iterate over muon ids is defined PrIterableMuonIDs.h
.
Additionally a transform
function which can operate with PrTracks
and PrMuonIDs
is introduced. This allows to write
auto muonPIDs = Zipping::transform<MuonPIDs>( tracks, ismuon );
where tracks
are iterable and ismuon
is a lambda which calculates one muon id per track. No attempt to vectorize this has been made.
Additional changes
PrZip.h
to ZipUtils.h
endScifiState
accessors used in muon id algorithm.Tests of the Pr::Muon::PIDs
class are implemented in Event/RecEvent/tests/src/TestMuonZipInfrastructure
See Rec!1689 (merged) for the adaption of the MuonID algorithm and Moore!240 (merged) for a test.