Deterministic Annealing Filter for track reconstruction

This branch add the possibility to use DAF in track reconstruction procedure.
In general, DAF is an iterated Kalman Filter that assigns a weight to every competing hit. The wrong hit assignment to the track is avoided introducing an annealing factor which changes iteration by iteration.
Thanks to these features, DAF is particularly suited for noisy environments, where the electronic noise or pile up effects can not be neglected.

The basic components are:
- SiTrackerMultiRecHit: This is a TackingRecHit with virtual position and virtual covariance matrix built in order to incorporate several competing hits.
- MultiRecHitCollector: which build the SiTrackerMultiRecHit collecting hits with the same IdDet (Simple one).
- SiTrackerMultiRecHitUpdator: which builds the SiTrackerMultiRecHit or updates an existing one.
- MRHChi2MeasurementEstimator: it performs the chi2 estimate.

@slava77 - perhaps much of this can be changed in a follow on PR? [though imo things like the consumes are best done now..]

On Jul 1, 2014, at 9:54 PM, Slava Krutelyov <notifications@github.com>
 wrote:

> In RecoTracker/TrackProducer/plugins/DAFTrackProducer.cc:
> 
> > +  //put everything in the event
> > +  putInEvt(theEvent, thePropagator.product(),theMeasTk.product(), 
> > +           outputRHColl, outputTColl, outputTEColl, 
> > +           outputTrajectoryColl, algoResults, theBuilder.product());
> > +  putInEvtTrajAnn(theEvent, trajannResults, outputTrajAnnColl);
> > +
> > +  LogDebug("DAFTrackProducer") << "end the DAF algorithm." << "\n";
> > +}
> > +
> > +void DAFTrackProducer::getFromEvt(edm::Event& theEvent,edm::Handle<TrajectoryCollection>& theTrajectoryCollection, reco::BeamSpot& bs)
> > +{
> > +
> > +  //get the TrajectoryCollection from the event
> > +  //WARNING: src has always to be redefined in cfg file
> > +  edm::InputTag src_=getConf().getParameter<edm::InputTag>( "src" );
> > +  theEvent.getByLabel(src_,theTrajectoryCollection );
> 
> This should be changed to getByToken and a corresponding consumes
> 
> —
> Reply to this email directly or view it on GitHub.
>