Was tested on initialStep and detachedTriplet but there was no super improvement;
Config for these iterations is left in Geoms/CMS-2017.cc but commented out / inactive.
Logic for potential removal of seed-hits is in CombCandidate::CompactifyHitStorageForBestCand() and follows what is done in CMSSW: certain minumum number of hits is required to be available for backward-fit before (some) seed hits can be dropped. The number is int IterationConfig::m_backward_fit_min_hits. SteeringPArams::set_iterator_limits(..) has to be set accordingly -- to cover all possible seed-hit removal occurances.
Cleanup layer-plan setup - remove bools for pickup-only, backward-fit, backward-search: this logic has been moved to SteeringParams::iterator in a previous PR.
Add JSON schemas for SteeringParams and LayerControl. This makes saving of IterationConfig in JSON format almost complete -- the only missing part in seed-partition function.
Make ConfigJson_Load_File() really just load a JSON file over a default-instantiated IterationConfig. This allows CMSSW config-producer to just specify a JSON filename, without providing the default IterationsInfo.
int IterationConfig::m_backward_fit_min_hits
.SteeringPArams::set_iterator_limits(..)
has to be set accordingly -- to cover all possible seed-hit removal occurances.MTV 1k ttbar 50, 7 iterations, baseline is PR 360 (named StopLoopers-2 in plots): http://xrd-cache-1.t2.ucsd.edu/matevz/PKF/bks-det-trip-4.vs.stop-loopers-2/
There is no change in eff/fake-rate for built-tracks for all iterations (as there shouldn't be).
There is accompanying PR to trackreco/cmssw: trackreco/cmssw#50