BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
FitWLSQ.h
Go to the documentation of this file.
1#include "TH1.h"
2
3#ifndef FITWLSQ_H
4#define FITWLSQ_H 1
5
6//
7// Advanced refit for tracks by Andrey Moshkin
8//
9class FitWLSQ
10{
13
14 public:
15 FitWLSQ(Double_t* xx,
16 Double_t cSigma1 = 0.01,
17 Double_t cSigma2 = 0.07,
18 Double_t cP1 = 0.9,
19 Int_t nNPoints = 6,
20 Int_t nNParams = 2,
21 Bool_t RBF = kTRUE,
22 Bool_t LHf = kTRUE,
23 Int_t RBfn = 7); // constructor
24 ~FitWLSQ(); // destructor
25 Double_t param[3]; // fit parameters
26 Double_t cov[3][3]; // covariance matrix
28 Double_t* wrb; // robust weights
30
32
34
35 private:
36 Double_t det3(Double_t a[3][3]);
37
38 Double_t alg_add(Double_t a[3][3], Int_t row, Int_t column);
39
40 void cov_matrix(Double_t a[3][3]);
41
43
45
46 void CheckMatrix(Double_t* pdA, Double_t* pdB, TString sz);
47
49
51
53
54 Bool_t par_check(Double_t* par, Double_t* par1);
55
56 void RB(Double_t* yy, Int_t);
57
58 void RBN(Double_t* yy, Int_t);
59
60 void RBM(Double_t* yy, Int_t);
61
62 void RB_OPT(Double_t* yy, Int_t);
63
64 void CovarianceMatrixPrint(void);
65
66 Double_t* sigmaF; // weights
67 Double_t* w; // weights
68 Double_t* x; // x coordinats
69 Double_t sigma_k; // robust sigma
73 Double_t resolution; // resolution
77};
78
79#endif
bool Bool_t
int Int_t
double Double_t
constexpr Bool_t kTRUE
Double_t WLSQGet(Double_t dX)
Definition FitWLSQ.cxx:363
Double_t * wrb
Definition FitWLSQ.h:28
FitWLSQ(Double_t *xx, Double_t cSigma1=0.01, Double_t cSigma2=0.07, Double_t cP1=0.9, Int_t nNPoints=6, Int_t nNParams=2, Bool_t RBF=kTRUE, Bool_t LHf=kTRUE, Int_t RBfn=7)
Definition FitWLSQ.cxx:11
void RB(Double_t *yy, Int_t)
Definition FitWLSQ.cxx:411
Double_t sigma_k
Definition FitWLSQ.h:69
void RBM(Double_t *yy, Int_t)
Definition FitWLSQ.cxx:542
Bool_t RB_FIT
Definition FitWLSQ.h:74
Double_t alg_add(Double_t a[3][3], Int_t row, Int_t column)
Definition FitWLSQ.cxx:71
Double_t P1
Definition FitWLSQ.h:72
Bool_t Status
Definition FitWLSQ.h:29
Bool_t LH_INI
Definition FitWLSQ.h:75
Int_t NPoints
Definition FitWLSQ.h:11
Bool_t par_check(Double_t *par, Double_t *par1)
Definition FitWLSQ.cxx:393
Double_t WLSQRms(Double_t *pdY)
Definition FitWLSQ.cxx:376
Double_t param[3]
Definition FitWLSQ.h:25
void cov_matrix(Double_t a[3][3])
Definition FitWLSQ.cxx:112
Int_t NParams
Definition FitWLSQ.h:12
void RBN(Double_t *yy, Int_t)
Definition FitWLSQ.cxx:468
Double_t resolution
Definition FitWLSQ.h:73
Double_t Sigma2
Definition FitWLSQ.h:71
Bool_t WLSQFit(Double_t *pdY)
Definition FitWLSQ.cxx:316
Bool_t SymMatrix(Double_t *pdA, Double_t *pdB)
Definition FitWLSQ.cxx:277
Bool_t Fit(Double_t *y)
Definition FitWLSQ.cxx:671
Double_t * w
Definition FitWLSQ.h:67
Double_t f_lh(Double_t *yy, Double_t *zz, Double_t *w, Double_t *par)
Definition FitWLSQ.cxx:143
Double_t cov[3][3]
Definition FitWLSQ.h:26
Double_t det3(Double_t a[3][3])
Definition FitWLSQ.cxx:63
Double_t Sigma1
Definition FitWLSQ.h:70
void RB_OPT(Double_t *yy, Int_t)
Definition FitWLSQ.cxx:605
Int_t RB_TYPE
Definition FitWLSQ.h:76
Double_t * sigmaF
Definition FitWLSQ.h:66
~FitWLSQ()
Definition FitWLSQ.cxx:55
void CheckMatrix(Double_t *pdA, Double_t *pdB, TString sz)
Definition FitWLSQ.cxx:253
void CovarianceMatrixPrint(void)
Definition FitWLSQ.cxx:740
Int_t numItera
Definition FitWLSQ.h:27
Bool_t Initial(Double_t *trk)
Definition FitWLSQ.cxx:181
Double_t * x
Definition FitWLSQ.h:68