Fixes in reconstruction: 1) Define in a single place (AliMUONTrack) the algorithm to be used to associate 2 tracks by comparing the position of their clusters. Update all the classes/macro using that algorithm to find the simulated track corresponding to a given reconstructed one: AliMUONTrack: - Change the function IsValid(...) to be able to check the reconstructibility of the track depending on the tracking algorithm - Change the name of the function CompatibleTrack to FindCompatibleCluster that is actually what the function does - New function Match(...) to associate, or not, 2 tracks by comparing the position of their clusters (can be used to assign MC labels to reconstructed tracks). AliMUONRecoCheck: - Check the track reconstructibility according to given informations about the tracking algorithm (those info can be extracted from RecoParam). - New function FindCompatibleTrack(...) to find in the given store a track that match the given track. Matching is done by using MC labels or by comparing clusters' position. All other classes/macros/tasks: - use these new functionnalities 2) Additional correction: DecodeRecoCocktail.C: - correct the algorithm to make it working even if there are ghost tracks - avoid accessing OCDB when not needed MUONRecoCheck.C: - new histograms/graphs to study the momentum resolution as a function of the momentum - new histograms/graphs to study the cluster resolution at each chamber - avoid loading magnetic field when not needed AliMUONTrackLight: - correct constructor - avoid using magnetic field when not needed (Philippe P.)
Class AliMUONCDB: - Changed to namespace (remove constructor and destructor) - Added new functions to ease the loading of Mapping, Magnetic Field and RecoParam from OCDB (OCDB path and run number must properly set before using any of these function) - Moved from libMUONbase in libMUONrec Class AliMUONESDInterface: - Adding a flag in functions converting ESD track to MUON track to disable the refitting of track parameters at each cluster. That way, you do not need to load the proper RecoParam and magnetic field, but the drawback is that only the track parameters at first cluster, copied directly from ESD, is meaningful. Macros: - Remove the unnecessary access to geometry, mapping, magnetic field and/or recoParam - Use the new functionalities of AliMUONCDB to load these informations from the OCDB when needed (except geometry for now) Updated relevant READMEs (Philippe P., Ivana)
- Remove "connected tracks" (i.e. track sharing at least 1 cluster in station 3, 4 or 5) at the end of the tracking. This allow to remove almost all the fake tracks without affecting the good ones. - New option in RecoParam (RemoveConnectedTracksInSt12(..)) to extend the definition of "connected tracks" to the ones sharing at least 1 cluster in any station (including station 1 and 2). - In AliMUONRecoCheck, build the cluster IDs of the simulated tracks by using the Detection Element ID stored into the TrackRef. It is used to check the compatibility between TrackRef and reconstructed clusters instead of using their z position. - Change the method AliMUONTrack::CompatibleTrack() to also return the number of reconstructed clusters. It gives more information to check the compatibility between simulated and reconstructed tracks. (Philippe P.)
- AliMUONRecoParam.cxx: Fill in the "event specie" variable according what the set of parameters is designed for, as defined in AliRecoParam: - AliMUONESDInterface.h, AliMUONESDInterface.cxx, AliMUONTrackReconstructor.cxx, AliMUONTrackReconstructorK.cxx, AliMUONRecoCheck.h, AliMUONRecoCheck.cxx, MUONRefit.C, MUONAlignment.C, AliEveMUONData.cxx, AliEveMUONTrack.cxx: Use the Kalman filter + smoother to recompute track parameters at each clusters when recovering a MUONTrack from an ESDTtrack. You can use the static method ResetTracker(...) to change it by providing a new AliMUONRecoParam object to the interface. - AliMUONRefitter.h, AliMUONRefitter.cxx, AliMUONTrackHitPattern.h: fix compilation warning - AliMUONVTrackReconstructor.h, AliMUONTrackHitPattern.cxx, AliMUONTrackExtrap.cxx, AliMUONTrack.cxx: Remove unnecessary include - AliMUONReconstructor.cxx, AliMUONVTrackReconstructor.cxx, AliMUONTracker.cxx, MUONClusterInfo.C: Philippe