Belle II Software  release-08-01-10
CDCRobustSZFitter.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 #pragma once
9 
10 namespace Belle2 {
15  namespace TrackFindingCDC {
16  class CDCSZObservations;
17  class CDCTrajectorySZ;
18 
21 
22  public:
37 
43  CDCTrajectorySZ fitTheilSen(const CDCSZObservations& szObservations) const;
44 
50  CDCTrajectorySZ fitWeightedTheilSen(const CDCSZObservations& szObservations) const;
51 
52 
53  private:
55  double getMedianZ0(const CDCSZObservations& szObservations, double tanLambda) const;
56  };
57  }
59 }
Utility class implementing robust versions of linear sz trajectory line fits.
CDCTrajectorySZ fitWeightedTheilSen(const CDCSZObservations &szObservations) const
Implements the weighted Theil-Sen line fit algorithm.
CDCTrajectorySZ fitTheilSen(const CDCSZObservations &szObservations) const
Implements the original Theil-Sen line fit algorithm.
double getMedianZ0(const CDCSZObservations &szObservations, double tanLambda) const
Compute the median z0 intercept from the given observations and an estimated slope.
CDCTrajectorySZ fitUsingSimplifiedTheilSen(const CDCSZObservations &szObservations) const
Fit a linear sz trajectory to the reconstructed stereo segment.
Class serving as a storage of observed sz positions to present to the sz line fitters.
Linear trajectory in sz space.
Abstract base class for different kinds of events.