source: trunk/MagicSoft/Mars/manalysis/MCT1FindSupercuts.h@ 2454

Last change on this file since 2454 was 2357, checked in by wittek, 21 years ago
*** empty log message ***
File size: 2.8 KB
Line 
1#ifndef MARS_MCT1FindSupercuts
2#define MARS_MCT1FindSupercuts
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8#ifndef ROOT_TArrayD
9#include <TArrayD.h>
10#endif
11#ifndef ROOT_TArrayI
12#include <TArrayI.h>
13#endif
14
15class MFilter;
16class MEvtLoop;
17class MH3;
18class MCT1SupercutsCalc;
19class MGeomCam;
20class MHMatrix;
21/*
22#include "MFilter.h"
23#include "MEvtLoop.h"
24#include "MH3.h"
25#include "MCT1SupercutsCalc.h"
26#include "MGeomCam.h"
27#include "MHMatrix.h"
28*/
29
30class MCT1FindSupercuts : public MParContainer
31{
32private:
33
34 TString fFilenameTrain;
35 TString fFilenameTest;
36
37 Int_t fHowManyTrain;
38 Int_t fHowManyTest;
39
40 TString fFilenameParam;
41
42 TString fHadronnessName;
43
44 MCT1SupercutsCalc *fCalcHadTrain;
45 MCT1SupercutsCalc *fCalcHadTest;
46
47 MHMatrix *fMatrixTrain;
48 MHMatrix *fMatrixTest;
49 MGeomCam *fCam;
50
51 MEvtLoop *fObjectFit;
52
53 MFilter *fMatrixFilter;
54
55 // to comunicate with MINUIT -----------------
56 // attention : dimensions must agree with those in
57 // MMinuitInterface::CallMinuit()
58 //char fParName [80][100];
59 TArrayD fVinit;
60 TArrayD fStep;
61 TArrayD fLimlo;
62 TArrayD fLimup;
63 TArrayI fFix;
64
65 UInt_t fNpar;
66
67 TString fMethod;
68
69 Double_t fMin, fEdm, fErrdef;
70 Int_t fNpari, fNparx, fIstat;
71 Int_t fErrMinimize;
72 //--------------------------------------------
73
74
75public:
76 MCT1FindSupercuts(const char *name=NULL, const char *title=NULL);
77 ~MCT1FindSupercuts();
78
79 void SetFilenameTraining(const TString &name, const Int_t howmany)
80 {fFilenameTrain = name; fHowManyTrain = howmany; }
81
82 void SetFilenameTest(const TString &name, const Int_t howmany)
83 {fFilenameTest = name; fHowManyTest = howmany; }
84
85 void SetFilenameParam(const TString &name) {fFilenameParam = name;}
86 void SetHadronnessName(const TString &name) {fHadronnessName = name;}
87
88 void SetMatrixFilter(MFilter *filter) {fMatrixFilter = filter;}
89
90 Bool_t DefineTrainMatrix(const TString &name, const Int_t howmany,
91 MH3 &href, const TString &filetrain);
92
93 Bool_t DefineTestMatrix(const TString &name, const Int_t howmany,
94 MH3 &href, const TString &filetest);
95
96 Bool_t DefineTrainTestMatrix(const TString &name,
97 const Int_t howmanytrain, MH3 &hreftrain,
98 const Int_t howmanytest, MH3 &hreftest,
99 const TString &filetrain, const TString &filetest);
100
101 MHMatrix *GetMatrixTrain() { return fMatrixTrain; }
102 MHMatrix *GetMatrixTest() { return fMatrixTest; }
103
104 Bool_t ReadMatrix( const TString &filetrain, const TString &filetest);
105
106 Bool_t FindParams(TString parSCinit, TArrayD &params, TArrayD &steps);
107 Bool_t TestParams();
108
109 ClassDef(MCT1FindSupercuts, 1) // Class for optimization of the Supercuts
110};
111
112#endif
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
Note: See TracBrowser for help on using the repository browser.