Line | |
---|
1 | #ifndef G__SOLGRIDCOV_H
|
---|
2 | #define G__SOLGRIDCOV_H
|
---|
3 |
|
---|
4 | #include <TVectorD.h>
|
---|
5 | #include <TMatrixDSym.h>
|
---|
6 |
|
---|
7 | class SolGeom;
|
---|
8 |
|
---|
9 | // Class to create geometry for solenoid geometry
|
---|
10 |
|
---|
11 | class SolGridCov{
|
---|
12 | // Class to handle storing and retrieving/interpolation of covariance matrices
|
---|
13 | private:
|
---|
14 | Int_t fNpt; // Number of pt points in grid
|
---|
15 | TVectorD fPta; // Array of pt points in GeV
|
---|
16 | Int_t fNang; // Number of angle points in grid
|
---|
17 | TVectorD fAnga; // Array of angle points in degrees
|
---|
18 | TMatrixDSym *fCov; // Pointers to grid of covariance matrices
|
---|
19 | // Service routines
|
---|
20 | Int_t GetMinIndex(Double_t xval, Int_t N, TVectorD x); // Find bin
|
---|
21 | TMatrixDSym MakePosDef(TMatrixDSym NormMat); // Force positive definitness
|
---|
22 | public:
|
---|
23 | SolGridCov();
|
---|
24 | ~SolGridCov();
|
---|
25 |
|
---|
26 | void Calc(SolGeom *G);
|
---|
27 |
|
---|
28 | // Covariance interpolation
|
---|
29 | Double_t GetMinPt() { return fPta(0); }
|
---|
30 | Double_t GetMaxPt() { return fPta(fNpt - 1); }
|
---|
31 | Double_t GetMinAng() { return fAnga(0); }
|
---|
32 | Double_t GetMaxAng() { return fAnga(fNang - 1); }
|
---|
33 | TMatrixDSym GetCov(Double_t pt, Double_t ang);
|
---|
34 | };
|
---|
35 |
|
---|
36 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.