1 #ifndef ROOT_EdbShowAlgE
2 #define ROOT_EdbShowAlgE
9 #include "TBenchmark.h"
10 #include "TMultiLayerPerceptron.h"
11 #include "TMLPAnalyzer.h"
13 #include "TObjString.h"
85 Float_t* eInANN =
new Float_t[70];
89 Float_t* eInfoANN =
new Float_t[70];
92 TH1F* eInANN_Hist[70];
109 TString eMLP_WeightFileNameArray[10];
128 void Init(TString ParaName);
131 void CreateInputHistos();
134 void FillInputHistosPara_XX();
137 TString CreateMLPLayout(Int_t NrOfANNInputNeurons);
143 void ClearPlateBinning();
144 void ResetWeightFileNameArray();
145 void AddWeightFilePlate(TString tmpString, Int_t dospec);
147 Bool_t CheckStringToShowAlgEParaName(TString tmpString2);
150 int GetLastBinHistoFilles(TH1* h);
176 eMLP_Layout = layout;
179 eMLP_WeightFileName = weightfilename;
182 eMLP_InputFileName = MLP_InputFileName;
185 eMLP_TrainEpochs = nep;
188 eMLPArrayN = MLPArrayN;
192 eShowAlgEPlatesN = ShowAlgEPlatesN;
196 void SetDoTrain(Int_t
type);
197 void SetDoRun(Int_t
type);
199 void SetInputHistosPara(Int_t ParaType);
200 void SetInputHistosPara_FJ();
201 void SetInputHistosPara_YC();
202 void SetInputHistosPara_XX();
203 void SetInputHistosPara_YY();
205 void SetWriteMLPWeightFile(Int_t
type);
206 void SetWriteMLPInputFile(Int_t
type);
207 void SetReadMLPInputFile(Int_t
type);
209 void ReadMLPInputFile();
210 void WriteMLPInputFile();
214 inline TMultiLayerPerceptron*
GetMLP()
const {
219 return eInANN_Hist[nr];
226 return eMLP_WeightFileName;
229 return eMLP_InputFileName;
232 return eMLP_TrainEpochs;
257 void Create_MLPTree();
263 void SetInputHistos(TH1F* h, Int_t nbin, Double_t lower, Double_t upper);
270 void CreateStandardWeightFileStrings();
271 void CreateStandardMLPArrayN();
272 void PrintWeightFileStrings();
273 void ResetPlateBinning();
275 Int_t CheckPlateAndPlateBinning(Int_t Plate);
276 void AddWeightFile(TString tmpString, Int_t Plate, TString tmpString2);
279 void CreateMLPLayouts();
280 void CreateMLPLayouts_FJ();
281 void CreateMLPLayouts_LT();
282 void CreateMLPLayouts_YC();
283 void CreateMLPLayouts_JC();
284 void CreateMLPLayouts_XX();
285 void CreateMLPLayouts_YY();
286 void CreateMLPLayout_YC(Int_t nr);
287 void CreateMLPLayout_XX(Int_t nr);
288 void CreateMLPLayout_YY(Int_t nr);
291 void FillInputNeuronsArray_YC();
292 void FillInputNeuronsArray_XX();
293 void FillInputNeuronsArray_YY();
295 void CreateInputNeuronsArray_YC();
296 void CreateInputNeuronsArray_XX();
297 void CreateInputNeuronsArray_YY();
299 void CreateInputNeuronsArray();
303 void CreateMLPArray();
304 void LoadMLPWeights();
305 void LoadMLPWeights(Int_t nr);
307 void SetBinsInputHistos();
308 void SetBinsInputHistos_YC();
309 void SetBinsInputHistos_XX();
310 void SetBinsInputHistos_FJ();
311 void SetBinsInputHistos_YY();
314 void FillMLP_SimpleTree_YC(
EdbShowerP* show, Int_t ShowAlgEParaNr);
315 void FillMLP_SimpleTree_YC();
316 void FillMLP_SimpleTree_XX(
EdbShowerP* show, Int_t ShowAlgEParaNr);
317 void FillMLP_SimpleTree_XX();
318 void FillMLP_SimpleTree_YY(
EdbShowerP* show, Int_t ShowAlgEParaNr);
319 void FillMLP_SimpleTree_YY();
320 void FillMLP_SimpleTree();
322 void WriteMLP_SimpleTree(TString
filename);
329 int GetMLPArrayNr(Int_t NPlToCheck);
335 int ReadShowAlgEPar(
const char *
file);
TObjArray * RecoShowerArray
Definition: Shower_E_FromShowerRoot.C:12
Definition: EdbShowAlgE.h:42
Int_t SetMLPTrainEpochs()
Definition: EdbShowAlgE.h:231
TString GetMLPLayout()
Definition: EdbShowAlgE.h:222
Int_t eMLP_InputNeurons
Definition: EdbShowAlgE.h:113
TObjArray * eRecoShowerArray
Definition: EdbShowAlgE.h:58
TString eMLP_Layout
Definition: EdbShowAlgE.h:102
TString GetMLPInputFileName()
Definition: EdbShowAlgE.h:228
Int_t eMLP_TrainEpochs
Definition: EdbShowAlgE.h:111
TH1F * GetHistInANN(Int_t nr) const
Definition: EdbShowAlgE.h:218
TArrayI * eMLP_InputNeuronsArray
Definition: EdbShowAlgE.h:114
TString GetMLPWeightFileName()
Definition: EdbShowAlgE.h:225
TString eShowAlgEParaName
Definition: EdbShowAlgE.h:47
void SetMLPLayout(TString layout)
Definition: EdbShowAlgE.h:175
Bool_t eMLP_SimpleIsDone
Definition: EdbShowAlgE.h:99
Float_t eOutANN
Definition: EdbShowAlgE.h:87
void SetRecoShowerArray(TObjArray *RecoShowerArray)
Definition: EdbShowAlgE.h:171
void SetMLPArrayN(Int_t MLPArrayN)
Definition: EdbShowAlgE.h:187
TMultiLayerPerceptron * GetMLP() const
Definition: EdbShowAlgE.h:214
TString eMLP_InputFileName
Definition: EdbShowAlgE.h:117
Int_t eShowAlgEPlatesN
Definition: EdbShowAlgE.h:49
Int_t eMLP_InputNeuronsArrayN
Definition: EdbShowAlgE.h:115
TObjArray * eMLP_LayoutArray
Definition: EdbShowAlgE.h:103
void SetMLPWeightFileName(TString weightfilename)
Definition: EdbShowAlgE.h:178
TMultiLayerPerceptron * eMLP_Simple
Definition: EdbShowAlgE.h:97
Bool_t eMLP_ReadMLPInputFile
Definition: EdbShowAlgE.h:119
Bool_t eDoANNRun
Definition: EdbShowAlgE.h:68
Int_t eRecoShowerArrayN
Definition: EdbShowAlgE.h:59
Int_t eMLPArrayN
Definition: EdbShowAlgE.h:64
Int_t eShowAlgEParaNr
Definition: EdbShowAlgE.h:48
TString eMLP_WeightFileName
Definition: EdbShowAlgE.h:108
TObjArray * eMLPArray
Definition: EdbShowAlgE.h:63
Bool_t eMLP_WriteWeightFile
Definition: EdbShowAlgE.h:107
Bool_t eMLP_WriteMLPInputFile
Definition: EdbShowAlgE.h:118
void SetPlatesN(Int_t ShowAlgEPlatesN)
Definition: EdbShowAlgE.h:191
Bool_t eDoANNTrain
Definition: EdbShowAlgE.h:67
TTree * eMLP_SimpleTree
Definition: EdbShowAlgE.h:100
Bool_t eMLP_LayoutArrayIsDone
Definition: EdbShowAlgE.h:104
TArrayI * eShowAlgEPlateBinning
Definition: EdbShowAlgE.h:53
void SetMLPTrainEpochs(Int_t nep)
Definition: EdbShowAlgE.h:184
void SetMLPInputFileName(TString MLP_InputFileName)
Definition: EdbShowAlgE.h:181
Definition: EdbShowerP.h:28
string filename
Definition: emthickness.cpp:34
void Finalize()
Definition: ShowRec.cpp:513
void Run(bool AbsCoord=false, float X0, float Y0, float DDX, float DDY, const char *File, bool Images=false)
Definition: run.C:208
void Initialize()
Definition: rwcToEdb.cpp:28
Int_t type
Definition: testBGReduction_By_ANN.C:15
TFile * file
Definition: write_pvr.C:3