Belle II Software  release-08-01-10
BaseSoftConstraint.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * Forked from https://github.com/iLCSoft/MarlinKinfit *
6  * *
7  * Further information about the fit engine and the user interface *
8  * provided in MarlinKinfit can be found at *
9  * https://www.desy.de/~blist/kinfit/doc/html/ *
10  * and in the LCNotes LC-TOOL-2009-001 and LC-TOOL-2009-004 available *
11  * from http://www-flc.desy.de/lcnotes/ *
12  * *
13  * See git log for contributors and copyright holders. *
14  * This file is licensed under LGPL-3.0, see LICENSE.md. *
15  **************************************************************************/
16 
17 #ifndef __BaseSoftConstraint_H
18 #define __BaseSoftConstraint_H
19 
20 #include "analysis/OrcaKinFit/BaseConstraint.h"
21 
22 namespace Belle2 {
28  namespace OrcaKinFit {
29 
30  class BaseFitObject;
31 
32 // Class BaseSoftConstraint:
34 
72  public:
73 
76 
78  virtual double getChi2() const = 0;
79 
80 
82  virtual void add2ndDerivativesToMatrix(double* M,
83  int idim
84  ) const = 0;
86  virtual void addToGlobalChi2DerVector(double* y,
87  int idim
88  ) const = 0;
89 
90 
91 // protected:
92 // char* name;
93  };
94 
95  }// end OrcaKinFit namespace
97 } // end Belle2 namespace
98 
99 #endif // __BASECONTRAINT_H
Abstract base class for constraints of kinematic fits.
Abstract base class for soft constraints of kinematic fits.
virtual void add2ndDerivativesToMatrix(double *M, int idim) const =0
Adds second order derivatives to global covariance matrix M.
virtual double getChi2() const =0
Returns the chi2.
virtual void addToGlobalChi2DerVector(double *y, int idim) const =0
Add derivatives of chi squared to global derivative matrix.
virtual ~BaseSoftConstraint()
Virtual destructor.
Abstract base class for different kinds of events.