-
Notifications
You must be signed in to change notification settings - Fork 4.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Import mkFit from trackreco/mkFit to cmssw.
This commit is squashed from many commits made during the code review. Below is a list of changes (in addition to overall cleanup): - Build subdirs of MkFitCore/src/, put Ice source back in Ice/. Move CMS-2017 geom test to MkFitCMS. - Move files with stand-alone steering code out of attic/. - Use std::aligned_alloc in place of _mm_malloc. - Reenable standalone quality and root-based validation. So far ohnly works for standalone runBtpCe_MultiIter() - MIMI even though the modifications have also been made in legacy best-hit, standard, and clone-engine steering functions. - Remove standalone externals from MkFitCore. - Remove RecoTracker/MkFitCore/standalone/dust-chest/ directory that contained nlohmann and SMatrix externals. - Move them to a new github repo: trackreco/mkFit-external - In standalone configure, clone the mkFit-external repo into buld directory. - Modify Makefiles to include from this new directory instead of dusty-chest/. - Make Pool<T> to return unique_ptr directly, and reduce public interface, follow CMS' naming convention, aling naming a bit closer to edm::ReusableObjectHolder. - refactor LayerNumberConverter - Remove std::vector inheritance of CombCandidate - use a std::vector member. - Switch to regular std::clamp - Significant cleanup of Config.h/cc - Split Config.h/cc into standalone/ConfigStandalone.h/cc Move as much standalone stuff as possible. - Move TrackExtra class out of Track.h/cc into standalone/TrackExtra.h/cc - Move Conformal-fit stuff into standalone as well. - Makefiles -- distclean removes libs and executables. - Remove some more Config variables related to standalone sim. - Remove usage of unnamed union/struct for bitfield initialization. - LayerNumberConverter.h private data - Rename most functions to start with a lower-case letter. - HitStructures: classes LayerOfHits and EventOfHits - make all members private - proper pub/priv order - remove commented code - improve comments - Remove unused Track::clone() - HitStructures: classes TrackCand, CombCandidate, EventOfCombCandidates - make all members private, write accessors as needed - proper pub/priv order - remove commented code - improve comments - Mostly miscellaneous review followup: - commented out code cleanup - drop const in returned values - enum-> constexpr in Matriplex.h - costexpr for 1620 - Remove more standalone vars, typedefs, includes from Config.h. - include CMS_SA_ALLOW, with support for MKFIT_STANDALONE - Move Matriplex/test to standalone/test, move define ASSUME_ALIGNED to MatriplexCommon.h - Fixup CandCloner - remove unused code - move impl of begin/end funcs to .cc, use dprint - make members private - Remove MkFitCMS/standalone/CMS-2017/. This contained data and code to generate CMS-2017.acc geometry description. - Move plugin loader from TrackerInfo to ConfigStandalone - Do not dlclose geometry/config plugin library. - Move standalone auto-generated files of out cmssw repo (to trackreco/mkFit-external). - Move material constants to class MaterialEffects, make a const global instance of it namespace Config. - LayerInfo privatization + related changes and removal of some members obsoleted by layer-plan (sibling/next layer). - TrackerInfo privatization. - Use unique_ptr for JSON object, and remove release_json() as unnecessary - default LayerInfo::m_is_stereo = false - Split Config in Const / Config, remove unused useCMSGeom and nParams. Config now has to be turned into a class, some variables would be better off being put into IterationConfig or similar. - Remove Config::nTotalLayers, build writeMemoryFile. - Put propagation-flags into PropagationConfig class. Access through const& singleton pattern. - Move Config::json_verbose to standalone, put json functions into JsonConfig class. - Move Config::silent to standalone and a member of MkBuilder. - Final cleanup of Config.h - add ool argument to PropagationConfig::set_as_default(bool force) - move includePCA to ConfigStandalone (for cmd-line option processing) and introduce new member bool PropagationConfig::backward_fit_to_pca - if-def MKFIT_STANDALONE numThreadsFinder numThreadsEvents numSeedsPerTask - if-def MKFIT_STANDALONE bool removeDuplicates and useHitsForDuplicates - use edm::isFinite with non-standalone build - Fixofy MkBase / MkFitter / MkFinder - members use m_ prefix - privatize/protectify data members, put them to the end - remove some comments - On Slava's request remove from backward-fit outlier/nan-fit hit rejection proto-code and discussion about why it should be implemented the way it was and what to do with overlaps when primary hit gets rejected. - drop cmsDeltaRad and related commented-out code for rough propagation window from nominal r/z to the actual expected hit (this was set up for the CMS geometry and was replaced by the per-layer windows; we are not going back from this setup) - use TrackAlgorithm instead of literals - Code cleanup: - move some aged standalone code out of StdStandaloneSeqs.cc - remove unneeded 1.02 alocation scale in LayerOfHits - remove unused eta regions from TrackerInfo - superseeded by seed-partitioning function, layer-plan and steering-params.
- Loading branch information
Showing
227 changed files
with
43,391 additions
and
622 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.