1919#include " Common/DataModel/Centrality.h"
2020#include " Common/DataModel/CollisionAssociationTables.h"
2121#include " Common/DataModel/EventSelection.h"
22+ #include " Common/DataModel/FwdTrackReAlignTables.h"
2223#include " Common/DataModel/Multiplicity.h"
2324#include " Common/DataModel/TrackSelectionTables.h"
24- #include " Common/DataModel/FwdTrackReAlignTables.h"
2525#include " Tools/ML/MlResponse.h"
2626
2727#include < CCDB/BasicCCDBManager.h>
4040#include < Framework/DataTypes.h>
4141#include < Framework/InitContext.h>
4242#include < Framework/runDataProcessing.h>
43+ #include < MCHBase/TrackerParam.h>
4344#include < MCHGeometryTransformer/Transformations.h>
4445#include < MCHTracking/Track.h>
45- #include < MCHTracking/TrackParam.h>
46- #include < MCHTracking/TrackFitter.h>
47- #include < MCHBase/TrackerParam.h>
4846#include < MCHTracking/TrackExtrap.h>
47+ #include < MCHTracking/TrackFitter.h>
48+ #include < MCHTracking/TrackParam.h>
4949#include < MFTTracking/Constants.h>
5050#include < ReconstructionDataFormats/TrackFwd.h>
5151
@@ -168,10 +168,10 @@ struct GlobalMuonMatching {
168168 struct : ConfigurableGroup {
169169 Configurable<bool > cfgEnableMftAlignmentCorrections{" cfgEnableMFTAlignmentCorrections" , true , " Enable alignment corrections for the MFT tracks" };
170170 // slope corrections
171- // Configurable<float> cfgMFTAlignmentCorrXSlopeTop{"cfgMFTAlignmentCorrXSlopeTop", (-0.0006696 - 0.0005621) / 2.f, "MFT X slope correction - top half"};
172- // Configurable<float> cfgMFTAlignmentCorrXSlopeBottom{"cfgMFTAlignmentCorrXSlopeBottom", (0.00105 + 0.001007) / 2.f, "MFT X slope correction - bottom half"};
173- // Configurable<float> cfgMFTAlignmentCorrYSlopeTop{"cfgMFTAlignmentCorrYSlopeTop", (-0.002299 - 0.002442) / 2.f, "MFT Y slope correction - top half"};
174- // Configurable<float> cfgMFTAlignmentCorrYSlopeBottom{"cfgMFTAlignmentCorrYSlopeBottom", (-0.0005339 - 0.0006921) / 2.f, "MFT Y slope correction - bottom half"};
171+ // Configurable<float> cfgMFTAlignmentCorrXSlopeTop{"cfgMFTAlignmentCorrXSlopeTop", (-0.0006696 - 0.0005621) / 2.f, "MFT X slope correction - top half"};
172+ // Configurable<float> cfgMFTAlignmentCorrXSlopeBottom{"cfgMFTAlignmentCorrXSlopeBottom", (0.00105 + 0.001007) / 2.f, "MFT X slope correction - bottom half"};
173+ // Configurable<float> cfgMFTAlignmentCorrYSlopeTop{"cfgMFTAlignmentCorrYSlopeTop", (-0.002299 - 0.002442) / 2.f, "MFT Y slope correction - top half"};
174+ // Configurable<float> cfgMFTAlignmentCorrYSlopeBottom{"cfgMFTAlignmentCorrYSlopeBottom", (-0.0005339 - 0.0006921) / 2.f, "MFT Y slope correction - bottom half"};
175175 Configurable<float > cfgMFTAlignmentCorrXSlopeTop{" cfgMFTAlignmentCorrXSlopeTop" , 0 .f , " MFT X slope correction - top half" };
176176 Configurable<float > cfgMFTAlignmentCorrXSlopeBottom{" cfgMFTAlignmentCorrXSlopeBottom" , 0 .f , " MFT X slope correction - bottom half" };
177177 Configurable<float > cfgMFTAlignmentCorrYSlopeTop{" cfgMFTAlignmentCorrYSlopeTop" , 0 .f , " MFT Y slope correction - top half" };
@@ -245,13 +245,13 @@ struct GlobalMuonMatching {
245245 using MatchingCandidates = std::map<int64_t , std::vector<MatchingCandidate>>;
246246 std::map<int64_t , std::vector<MatchingCandidate>> mMatchingCandidates ;
247247
248- class TrackParExt : public o2 ::track::TrackParCovFwd
248+ class TrackParExt : public o2 ::track::TrackParCovFwd
249249 {
250- public:
250+ public:
251251 TrackParExt () = default ;
252252 TrackParExt (const TrackParExt& t) = default ;
253253 TrackParExt (o2::track::TrackParCovFwd const & t, int nc = -1 , bool r = false )
254- : TrackParCovFwd(t), nClusters(nc), removable(r) {}
254+ : TrackParCovFwd(t), nClusters(nc), removable(r) {}
255255 ~TrackParExt () = default ;
256256
257257 TrackParExt& operator =(const TrackParCovFwd& tpf)
@@ -272,7 +272,8 @@ struct GlobalMuonMatching {
272272
273273 void setRemovable () { removable = true ; }
274274 bool isRemovable () const { return removable; }
275- private:
275+
276+ private:
276277 int nClusters{-1 };
277278 bool removable{false };
278279 };
@@ -296,7 +297,7 @@ struct GlobalMuonMatching {
296297 mch::geo::TransformationCreator transformation;
297298 std::map<int , math_utils::Transform3D> transformRef; // reference geometry w.r.t track data
298299 std::map<int , math_utils::Transform3D> transformNew; // new geometry
299- double mImproveCutChi2 ; // Chi2 cut for track improvement.
300+ double mImproveCutChi2 ; // Chi2 cut for track improvement.
300301 TGeoManager* geoNew = nullptr ;
301302 TGeoManager* geoRef = nullptr ;
302303 globaltracking::MatchGlobalFwd mMatching ;
@@ -869,7 +870,7 @@ struct GlobalMuonMatching {
869870 const auto rho1PtPhi = static_cast <int8_t >(128 .f * cov (2 , 4 ) / (sig1Pt * sigPhi));
870871 const auto rho1PtTgl = static_cast <int8_t >(128 .f * cov (3 , 4 ) / (sig1Pt * sigTgl));
871872 gmCandidateFwdTracksCov (sigX, sigY, sigPhi, sigTgl, sig1Pt,
872- rhoXY, rhoPhiY, rhoPhiX, rhoTglX, rhoTglY, rhoTglPhi, rho1PtX, rho1PtY, rho1PtPhi, rho1PtTgl);
873+ rhoXY, rhoPhiY, rhoPhiX, rhoTglX, rhoTglY, rhoTglPhi, rho1PtX, rho1PtY, rho1PtPhi, rho1PtTgl);
873874 }
874875
875876 template <class TMCH >
@@ -1028,12 +1029,12 @@ struct GlobalMuonMatching {
10281029
10291030 // select MCH tracks with strict quality cuts
10301031 if (!isGoodMuon (muonTrack, collision,
1031- configMuonTagging.cfgMuonTaggingTrackChi2MchUp ,
1032- configMuonTagging.cfgMuonTaggingPMchLow ,
1033- configMuonTagging.cfgMuonTaggingPtMchLow ,
1034- {configMuonTagging.cfgMuonTaggingEtaMchLow , configMuonTagging.cfgMuonTaggingEtaMchUp },
1035- {configMuonTagging.cfgMuonTaggingRabsLow , configMuonTagging.cfgMuonTaggingRabsUp },
1036- configMuonTagging.cfgMuonTaggingPdcaUp )) {
1032+ configMuonTagging.cfgMuonTaggingTrackChi2MchUp ,
1033+ configMuonTagging.cfgMuonTaggingPMchLow ,
1034+ configMuonTagging.cfgMuonTaggingPtMchLow ,
1035+ {configMuonTagging.cfgMuonTaggingEtaMchLow , configMuonTagging.cfgMuonTaggingEtaMchUp },
1036+ {configMuonTagging.cfgMuonTaggingRabsLow , configMuonTagging.cfgMuonTaggingRabsUp },
1037+ configMuonTagging.cfgMuonTaggingPdcaUp )) {
10371038 continue ;
10381039 }
10391040
@@ -1059,9 +1060,9 @@ struct GlobalMuonMatching {
10591060
10601061 template <class EVT , class BC , class TMUON , class TMFT >
10611062 bool isMftMchTimeCompatible (EVT const & collisions,
1062- BC const & bcs,
1063- TMUON const & mchTrack,
1064- TMFT const & mftTrack)
1063+ BC const & bcs,
1064+ TMUON const & mchTrack,
1065+ TMFT const & mftTrack)
10651066 {
10661067 if (!mchTrack.has_collision () || !mftTrack.has_collision ()) {
10671068 return false ;
@@ -1116,7 +1117,7 @@ struct GlobalMuonMatching {
11161117 }
11171118
11181119 // fill matching candidates table
1119- if (!configMatching.cfgMatchAllTracks .value ) {
1120+ if (!configMatching.cfgMatchAllTracks .value ) {
11201121 // collect global MFT-MCH or MFT-MCH-MID tracks and associate them to the corresponding MCH(-MID) track
11211122 for (const auto & muonTrack : muonTracks) {
11221123 // skip MCH or MCH-MID tracks
@@ -1135,9 +1136,9 @@ struct GlobalMuonMatching {
11351136
11361137 mMatchingCandidates [mchTrackIndex].emplace_back (MatchingCandidate{
11371138 muonTrack.globalIndex (),
1138- mftTrackIndex,
1139- muonTrack.matchScoreMCHMFT (),
1140- muonTrack.chi2MatchMCHMFT ()});
1139+ mftTrackIndex,
1140+ muonTrack.matchScoreMCHMFT (),
1141+ muonTrack.chi2MatchMCHMFT ()});
11411142 }
11421143 } else {
11431144 // build matching candidates from all time-compatible MFT-MCH pairs
@@ -1226,7 +1227,7 @@ struct GlobalMuonMatching {
12261227 continue ;
12271228 }
12281229
1229- // continue;
1230+ // continue;
12301231
12311232 auto mchTrackParIt = mMchTrackPars .find (mchIndex);
12321233 if (mchTrackParIt == mMchTrackPars .end ()) {
@@ -1262,8 +1263,8 @@ struct GlobalMuonMatching {
12621263
12631264 // Add transformed cluster into temporary variable
12641265 convertedTrack.createParamAtCluster (*clusterMCH);
1265- // LOGF(debug, "Track %d, cluster DE%d: x:%g y:%g z:%g", muon.globalIndex(), cluster.deId(), cluster.x(), cluster.y(), cluster.z());
1266- // LOGF(debug, "Track %d, re-aligned cluster DE%d: x:%g y:%g z:%g", muonRealignId, cluster.deId(), clusterMCH->getX(), clusterMCH->getY(), clusterMCH->getZ());
1266+ // LOGF(debug, "Track %d, cluster DE%d: x:%g y:%g z:%g", muon.globalIndex(), cluster.deId(), cluster.x(), cluster.y(), cluster.z());
1267+ // LOGF(debug, "Track %d, re-aligned cluster DE%d: x:%g y:%g z:%g", muonRealignId, cluster.deId(), clusterMCH->getX(), clusterMCH->getY(), clusterMCH->getZ());
12671268 }
12681269
12691270 // Refit the re-aligned track
@@ -1590,13 +1591,12 @@ struct GlobalMuonMatching {
15901591 }
15911592 }
15921593
1593-
15941594 void processData (MyEvents const & collisions,
1595- aod::BCsWithTimestamps const & bcs,
1596- MyMuons const & muonTracks,
1597- MyMFTs const & mftTracks,
1598- MyMFTCovariances const & mftCovs,
1599- aod::FwdTrkCls const & clusters)
1595+ aod::BCsWithTimestamps const & bcs,
1596+ MyMuons const & muonTracks,
1597+ MyMFTs const & mftTracks,
1598+ MyMFTCovariances const & mftCovs,
1599+ aod::FwdTrkCls const & clusters)
16001600 {
16011601 auto bc = bcs.begin ();
16021602 initCcdb (bc);
0 commit comments