2017-04-26 RecSys v21r3
This version uses Gaudi v28r2, LHCb v42r3 and Lbcom v20r3 (and LCG_88 with ROOT 6.08.06)This version is released on master branch.
New or changed functionalities
- [MR !561] Compute and store the new Muon chi2 with correlated hits in the MuonIDAlgLite
- and store (empty) the new MVA operators. Follows the change in the MuonPID Event Model, LHCb!581
- [MR !553] Streamline PatBBDTSeedClassifier implementation
- and move the computation of observables for a track from PatLongLivedTracking to PatBBDTSeedClassifier so that the observables are (almost by construction) in sync with the BDT implementation.
- [MR !547] (Hopefully) final version of final classifier for PatLLT
- [MR !550] add TrackStateVertex::setWeight method
- [MR !539] Added IPrMatchTool Interface to allow flexibility for future branc
- [MR !550] add TrackStateVertex::setWeight method
- IMatchTool was shared between PatMatch and PrMatch. To allow more flexibility a new interface IPrMatchTool is added to Pr/PrAlgorithms
Performance optimisations
- [MR !554] Kalman keep node store
- Keeps the node store (Updated states) for the lifetime of the track
- [MR !542] Use 'always inline' attribute to force compiler to inline functions used by CPU dispatch methods.
Bug fixes
- [MR !560] Rich future use long long int for truncation
- Fixes a small issue with double truncation, that is resolved by using long long int instead of just int.
- [MR !555] Fix unprotected debug in PatLongLivedTracking.cpp
- [MR !552] Cleanup some debugs in VeloClusterPosition.cpp
- [MR !551] RICH Future : Fix build platform differences.
- [MR !552] Cleanup some debugs in VeloClusterPosition.cpp
- A number of fixes to address some differences seen between the opt and dbg builds in the nightly tests.
- Now truncate the Cherenkov theta and phi precision to 7 d.p. More than enough physics wise, but removes noise due to small instabilities due to opt using -O3 and dbg not.
- Update a number of MC monitors to properly handle situations where a Track object has multiple possible MCParticles associated to it. Works around issues due to Relations sorting not being stable.
- Relies on LHCb!592.
- Now truncate the Cherenkov theta and phi precision to 7 d.p. More than enough physics wise, but removes noise due to small instabilities due to opt using -O3 and dbg not.
- [MR !548] Kalman batch processing
- Fixed coverity warnings.
- Fixed performance issues of TrackVectorFitter by processing tracks in batches.
- Batch size is configurable and defaulted to 100.
- Fixed performance issues of TrackVectorFitter by processing tracks in batches.
- [MR !549] Fix a bug in CCE scan analysis code (shanzhen-CCE)
- [MR !544] Fix out of bounds array acces in NShared calculation
- [MR !545] Fix FPE in CaloTools due to sqrt(-x) in AVX2+FMA builds
- [MR !544] Fix out of bounds array acces in NShared calculation
- Adds protection to GammaPi0SeparationTool to prevent taking the square root of a negative number
Changes to tests
- [MR !543] Replace GaudiTest.py by GaudiTesting - see LHCBPS-1692
Code modernisations and cleanups
- [MR !559] Removed PrCheatedVelo.cpp and PrCheatedVelo.h