simple-tof-analysis
 All Classes Namespaces Functions Variables Groups Pages
TSChi2ConstraintCalc.h
1 /*
2  * TSChi2ConstraintCalc.h
3  *
4  * Created on: Oct 4, 2014
5  * Author: Silvestro di Luise
6  * Silvestro.Di.Luise@cern.ch
7  *
8  */
9 
10 #ifndef TSCHI2CONSTRAINTCALC_H_
11 #define TSCHI2CONSTRAINTCALC_H_
12 
13 
14 #include <TMath.h>
15 #include <TMatrixTSym.h>
16 #include <TMatrixT.h>
17 #include <TMatrixD.h>
18 #include <TMatrixDSym.h>
19 #include <TDecompChol.h>
20 #include <TDecompLU.h>
21 
22 #include "TSNamed.h"
23 
24 #include "TSNuiParam.h"
25 #include "TSNuiParamSet.h"
26 #include "TSCovMatrixMgr.h"
27 
28 /*
29  *
30  */
32 
33 public:
34 
36  virtual ~TSChi2ConstraintCalc();
37 
38  void Clear();
39 
40  double Eval() const;
41 
42  virtual double Compute() const;
43 
44  int GetDimension() const {return fDimension;}
45 
46  void Init();
47 
48 
49  void Configure(const TSNuiParamSet &, const TSCovMatrixMgr &);
50 
51 private:
52 
53 
54  int fDimension;
55 
56 
57  TSNuiParamSet fParamSet;
58 
59 
60  static const int kDimension = 500;
61 
62  TSNuiParam *fParamArray[kDimension];
63 
64  double fCacheParCenter[kDimension];
65  double fCacheParValue[kDimension];
66 
67  double fCacheWeightsArray[kDimension*kDimension];
68  int fCacheWeightsArrayIdx[kDimension*kDimension];
69  int fCacheWeightsArrayIdy[kDimension*kDimension];
70  double fCacheWeightsMatix[kDimension][kDimension];
71 
72  TMatrixTSym<double> fMatCov;
73  TMatrixTSym<double> fMatW;
74 
75 
76 };
77 
78 #endif /* TSCHI2CONSTRAINTCALC_H_ */
Definition: TSCovMatrixMgr.h:40
Definition: TSChi2ConstraintCalc.h:31
double Eval() const
Definition: TSChi2ConstraintCalc.cc:195
Definition: TSNuiParam.h:30
Definition: TSNuiParamSet.h:36
void Configure(const TSNuiParamSet &, const TSCovMatrixMgr &)
Definition: TSChi2ConstraintCalc.cc:63
Definition: TSNamed.h:38