FEDRA emulsion software from the OPERA Collaboration
EdbShowerRec.h
Go to the documentation of this file.
1#ifndef ROOT_EdbShowerRec
2#define ROOT_EdbShowerRec
3
4#include "EdbDataSet.h"
5#include "TArrayI.h"
6#include "TObjArray.h"
7#include "EdbCluster.h"
8#include "TTree.h"
9#include "TSortedList.h"
10#include "TArrayL.h"
11#include "TMatrixD.h"
12#include "EdbVirtual.h"
13#include "TMultiLayerPerceptron.h"
14#include "smatrix/Functions.hh"
15#include "EdbTrackFitter.h"
16#include "TH1.h"
17#include "TSystem.h"
18#include "TF1.h"
19#include "TVector3.h"
20#include "TLorentzVector.h"
21#include "EdbLog.h"
22#include "TROOT.h"
23
24class EdbShowerRec : public TObject
25{
26private:
27
28 // Variables related to algorithm settings
31
34
36
37 // Variables to individually set QualityCut value (additionally to default.par)
38 Double_t eQualityPar[2];
40
41
42 // Variables concerning the Shower Object and the Reco Object:
43 Int_t eID;
44 Float_t eX0;
45 Float_t eY0;
46 Float_t eZ0;
47 Float_t eTx;
48 Float_t eTy;
49 Int_t eTrID;
50 Float_t eChi20;
51 Int_t eW0;
52 Float_t eP0;
53 Int_t eFlag0;
56
57 Float_t eDz;
58 Int_t eL;
59
60 Int_t eIDb[10000];
61 Int_t ePlateb[10000];
62 Float_t eXb[10000];
63 Float_t eYb[10000];
64 Float_t eZb[10000];
65 Float_t eTXb[10000];
66 Float_t eTYb[10000];
67 Float_t eChi2b[10000];
68 Float_t ePb[10000];
69 Int_t eWb[10000];
70 Int_t eFlagb[10000];
71 Int_t eNFilmb[10000];
72 Float_t eDeltarb[10000];
73 Float_t eDeltathetab[10000];
74 Int_t eTagPrimary[10000];
75 Int_t emcDigitIndexTop[1000];
76 Int_t emcDigitIndexBottom[1000];
77
78 Int_t eSize;
79 Int_t eSize15;
80 Int_t eSize20;
81 Int_t eSize30;
82
83 Float_t eOutput;
84 Float_t eOutput15;
85 Float_t eOutput20;
86 Float_t eOutput30;
87
88
89
92
93 // Variables used for naming the files to read/write the specified
94 // data structures or specified objects.
95 // Read:
97
98
99 // EdbPVRec object:
103 Int_t eAliNpat;
107
110
111
112 // TObjArray storing Initiator Basetracks:
113 // May be real BTs (from linked_tracks) or virtual
114 // ones (just positions).
115 TObjArray* eInBTArray;
119
120 // TObjArray storing reconstructed showers (objects of EdbTrackP class):
123
124
125
126
127
128
129 //----------------------------------------------------------------
130
136
142
146// TMultiLayerPerceptron* eEnergyANN[9]; //!< Container for the ANNs trained on different
147 // shower length ("nfilmb");
148 TObjArray* eEnergyANN;
149 TMultiLayerPerceptron* eEANN();
150
151
153 // shower length ("nfilmb");
155 Double_t inANN[70];
157
158 Int_t eShowersN;
159
160public:
161
163 EdbShowerRec(TObjArray* InBTArray, int num,int MAXPLATE, int DATA, int piece2, int piece2par,int DOWN,EdbPVRec *pvr);
165
166 EdbShowerRec(EdbPVRec *pvr, Int_t OptionType);
167
168 virtual ~EdbShowerRec();
169
172 Int_t sizeb15;
173 Int_t sizeb20;
174 Int_t sizeb30;
175 Float_t output15;
176 Float_t output20;
177 Float_t output30;
178 Float_t output50;
179 Float_t E_MC;
180
181
182 Int_t sizeb;
183 Int_t isizeb;
184 Int_t showerID;
185 Int_t idb[10000];
186 Int_t plateb[10000];
187 Float_t xb[10000];
188 Float_t yb[10000];
189 Float_t zb[10000];
190 Float_t txb[10000];
191 Float_t tyb[10000];
192 Int_t nfilmb[10000];
193 Int_t ngrainb[10000];
194 Int_t ntrace1simub[10000];
195 Int_t ntrace2simub[10000];
196 Float_t ntrace3simub[10000];
197 Int_t ntrace4simub[10000];
198 Float_t chi2btkb[10000];
199 Float_t deltarb[10000];
200 Float_t deltathetab[10000];
201 Float_t deltaxb[10000];
202 Float_t deltayb[10000];
203 Float_t tagprimary[10000];
204 Int_t mcDigitIndexTop[1000];
206
211
212 Float_t purityb;
213 Float_t trackdensb;
214
215 Int_t eProb90;
216 Int_t eProb1;
217
218 TFile *fileout;
219 TTree *treesaveb;
220 TFile *file;
221
222 TFile *fileout2;
224
225 TFile *fileout3;
228
232
233 TTree *varia ;
234
237
244 Int_t type;
245
246 TMultiLayerPerceptron *mlp1;
247 TMultiLayerPerceptron *mlp2;
248 TMultiLayerPerceptron *mlp3;
249 TMultiLayerPerceptron *mlp4;
250
251 char cmd[500];
252
253 inline Int_t GetN() const {
254 return eShowersN;
255 }
256
257 Int_t GetID() const {
258 return eID;
259 }
260 Float_t GetX0() const {
261 return eX0;
262 }
263 Float_t GetY0() const {
264 return eY0;
265 }
266 Float_t GetZ0() const {
267 return eZ0;
268 }
269 Float_t GetChi20() const {
270 return eChi20;
271 }
272 Int_t GetW0() const {
273 return eW0;
274 }
275 Float_t GetP0() const {
276 return eP0;
277 }
278 Int_t GetFlag0() const {
279 return eFlag0;
280 }
281 Float_t GetTx() const {
282 return eTx;
283 }
284 Float_t GetTy() const {
285 return eTy;
286 }
287 Float_t GetDz() const {
288 return eDz;
289 }
290 Int_t GetL() const {
291 return eL;
292 }
293 Int_t GetTrID() const {
294 return eTrID;
295 }
296
297 Int_t GetSize() const {
298 return eSize;
299 }
300 Int_t GetSize15() const {
301 return eSize15;
302 }
303 Int_t GetSize20() const {
304 return eSize20;
305 }
306 Int_t GetSize30() const {
307 return eSize30;
308 }
309 Int_t GetPlateb(int i) const {
310 return ePlateb[i];
311 }
312 Int_t GetIDb(int i) const {
313 return eIDb[i];
314 }
315
316 Float_t GetXb(int i) const {
317 return eXb[i];
318 }
319 Float_t GetYb(int i) const {
320 return eYb[i];
321 }
322 Float_t GetZb(int i) const {
323 return eZb[i];
324 }
325 Float_t GetTXb(int i) const {
326 return eTXb[i];
327 }
328 Float_t GetTYb(int i) const {
329 return eTYb[i];
330 }
331 Float_t GetChi2b(int i) const {
332 return eChi2b[i];
333 }
334 Int_t GetWb(int i) const {
335 return eWb[i];
336 }
337 Float_t GetPb(int i) const {
338 return ePb[i];
339 }
340 Int_t GetFlagb(int i) const {
341 return eFlagb[i];
342 }
343 Int_t GetNFilmb(int i) const {
344 return eNFilmb[i];
345 }
346 Float_t GetDeltarb(int i) const {
347 return eDeltarb[i];
348 }
349 Float_t GetDeltathetab(int i) const {
350 return eDeltathetab[i];
351 }
352 Int_t GetTagPrimaryb(int i) const {
353 return eTagPrimary[i];
354 }
355
356
357 Float_t GetOutput() const {
358 return eOutput;
359 }
360 Float_t GetOutput15() const {
361 return eOutput15;
362 }
363 Float_t GetOutput20() const {
364 return eOutput20;
365 }
366 Float_t GetOutput30() const {
367 return eOutput30;
368 }
369
370 Float_t GetEnergy() const {
371 return eEnergyCorrectedb;
372 }
373 Float_t GetEnergyUn() const {
374 return eEnergyUnCorrectedb;
375 }
376 Float_t GetEnergySigma() const {
378 }
379 Float_t GetEnergyUnSigma() const {
381 }
382 Float_t GetmcDigitIndexTop(int i) const {
383 return emcDigitIndexTop[i];
384 }
385 Float_t GetmcDigitIndexBottom(int i) const {
386 return emcDigitIndexBottom[i];
387 }
388 void SetID(int id) {
389 eID = id;
390 }
391
392 void SetX0( float x ) {
393 eX0 = x;
394 }
395 void SetY0( float y ) {
396 eY0 = y;
397 }
398 void SetZ0( float z ) {
399 eZ0 = z;
400 }
401 void SetChi20(float chi2) {
402 eChi20=chi2;
403 }
404 void SetW0(int w) {
405 eW0=w;
406 }
407 void SetP0(float p) {
408 eP0=p;
409 }
410 void SetFlag0(int flag) {
411 eFlag0=flag;
412 }
413 void SetmcDigitIndexTop0(int mcDt) {
415 }
416 void SetmcDigitIndexBottom0(int mcDb) {
418 }
419 void SetTx( float tx ) {
420 eTx = tx;
421 }
422 void SetTy( float ty ) {
423 eTy = ty;
424 }
425 void SetTrID( int id ) {
426 eTrID = id;
427 }
428
429 void SetSize( int size ) {
430 eSize = size;
431 }
432 void SetSize15( int size ) {
433 eSize15 = size;
434 }
435 void SetSize20( int size ) {
436 eSize20 = size;
437 }
438 void SetSize30( int size ) {
439 eSize30 = size;
440 }
441
442 void SetDz( float dz ) {
443 eDz = dz;
444 }
445 void SetL( int L ) {
446 eL = L;
447 }
448
449 void SetOutput( float output ) {
450 eOutput = output;
451 }
452 void SetOutput15( float output ) {
453 eOutput15= output;
454 }
455 void SetOutput20( float output ) {
456 eOutput20 = output;
457 }
458 void SetOutput30( float output ) {
459 eOutput30 = output;
460 }
461
462 void SetXb(float xb, int i) {
463 eXb[i]= xb;
464 }
465 void SetIDb(int idb2, int i) {
466 eIDb[i] = idb2;
467 }
468 void SetPlateb(int plate2, int i) {
469 ePlateb[i] = plate2;
470 }
471 void SetYb(float yb, int i) {
472 eYb[i]= yb;
473 }
474 void SetZb(float zb, int i) {
475 eZb[i]= zb;
476 }
477 void SetTXb(float txb, int i) {
478 eTXb[i]= txb;
479 }
480 void SetTYb(float tyb, int i) {
481 eTYb[i]= tyb;
482 }
483 void SetChi2b(float chi2b, int i) {
484 eChi2b[i]= chi2b;
485 }
486 void SetWb(int w, int i) {
487 eWb[i]= w;
488 }
489 void SetPb(float p, int i) {
490 ePb[i]= p;
491 }
492 void SetFlagb(int flag, int i) {
493 eFlagb[i]= flag;
494 }
495 void SetNFilmb(int nfilmb, int i) {
496 eNFilmb[i]= nfilmb;
497 }
498 void SetDeltarb(float deltarb, int i) {
499 eDeltarb[i]= deltarb;
500 }
501 void SetDelthetab(float deltathetab, int i) {
503 }
504 void SetPrimary(int tagprimary, int i) {
506 }
507 void SetmcDigitIndexTop(int mcDt, int i) {
508 emcDigitIndexTop[i]= mcDt;
509 }
510 void SetmcDigitIndexBottom(int mcDb, int i) {
511 emcDigitIndexBottom[i]= mcDb;
512 }
513
514 void InitPiece(EdbDataPiece &piece, const char *cpfile, const char *parfile);
515 int ReadPiece(EdbDataPiece &piece, EdbPattern &pat);
516// int FindPredictions(EdbPattern &pred, const char *cpfile, const char *parfile, EdbPattern &found);
517 /*
518 void rec(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *TRid, int piece2, int piece2par, int DOWN, float Rcut, float Tcut);
519 void recdown(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *TRid, int piece2, int piece2par, float Rcut, float Tcut);
520 void recup(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *TRid, int piece2, int piece2par,float Rcut, float Tcut);
521 */
522
524 // void rec(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *plate0, int *id0, int *TRid, double *Esim, int piece2, int piece2par, int DOWN);
525 // void recdown(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *plate0, int *id0, int *TRid, double *Esim, int piece2, int piece2par);
526 // void recup(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *plate0, int *id0, int *TRid, double *Esim, int piece2, int piece2par);
528 void rec(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop, int *mcDigitIndexBottom, int piece2, int piece2par, int DOWN,EdbPVRec *pvr);
529 void rec(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, double* chi20, int* W0, double* P0, int* Flag0, int *plate0, int *id0, int *TRid, double *Esim,int piece2, int piece2par,int DOWN,EdbPVRec *pvr);
530
531 void recdown(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, double* chi20, int* W0, double* P0,int* Flag0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop0, int *mcDigitIndexBottom0, int piece2, int piece2par,EdbPVRec *pvr);
532 void recup(int num,int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, double* chi20, int* W0, double* P0,int* Flag0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop0, int *mcDigitIndexBottom0, int piece2, int piece2par,EdbPVRec *pvr);
533
534
535 void rec(TObjArray *sarr, EdbPVRec *pvr);
536
537
538
539 // void remove(char *shfname, char *def,float Rcut, float Tcut);
540 // void vert(const char *name2,const char *def,float Rcut, float Tcut);
541 void remove(char *shfname, char *def,int MAXPLATE, int piece2par);
542 void vert(const char *name2,const char *def,int MAXPLATE, int piece2par);
543
544 void SaveResults();
545 void initproc( const char *def, int iopt, const char *rcut);
546 void ReadAffAndZ( char *fname, Float_t *pZoffs, Float_t *a11, Float_t *a12, Float_t *a21, Float_t *a22, Float_t *b1, Float_t *b2);
547 void NeuralNet() ;
548 int SaveLNK();
549 TObjArray* ShowerToEdbSegPArray();
550
551 //-------------------------------
552 // To estimate the energy values, either
553 // after(!) the reconstruction was done, or
554 // we have an already reconstructed shower file.
555 void SetDoEnergyCalculation(Bool_t DoEnergyCalculation) {
556 eDoEnergyCalculation=DoEnergyCalculation;
557 }
561 Float_t Energy_CorrectEnergy(Float_t MeasuredEnergy, Int_t NPlatesNr);
563 Float_t Energy_CalcSigma(Float_t Energy, Int_t NPlatesNr);
564 void LoadShowerFile(TString ShowerFileName);
565
567 return eHistEnergyNominal;
568 }
571 }
574 }
577 }
580 }
581
582
589
590
593 }
595 return histo_nbtk_av;
596 }
598 return histo_deltaR_mean;
599 }
601 return histo_deltaT_mean;
602 }
604 return histo_deltaR_rms;
605 }
607 return histo_deltaT_rms;
608 }
609
610
611
612
613 //-------------------------------
614 // NEW FUNCTIONS ADDED BY FWM (not related to energy);
615 //-------------------------------
616 void PrintInitiatorBTs();
617 int AddInitiatorBT(EdbSegP* seg);
618
619 Float_t* GetEnergyValues(Int_t TreeEntry);
620 Float_t* GetShowerValues(Int_t TreeEntry);
621 Int_t GetTreeBranchEntryNr(EdbSegP* seg);
622
623
624 // Inline Set Functions:
625 inline void SetUseAliSub(Bool_t UseAliSub) {
626 eUseAliSub=UseAliSub;
627 }
628
629 inline void SetEdbPVRec( EdbPVRec* Ali ) {
630 eAli = Ali;
634 eAliLoaded=kTRUE;
635 }
636 inline void SetInBTArray( TObjArray* InBTArray ) {
637 eInBTArray = InBTArray;
638 eInBTArrayN=eInBTArray->GetEntries();
639 if (eInBTArrayN>0) {
640 eInBTArrayIsFilled=kTRUE;
641 }
642 }
643
644 inline void SetInBTArrayN(Int_t InBTArrayN) {
645 eInBTArrayN = InBTArrayN;
646 }
647
648 inline void SetInBTArray( EdbSegP* InBT) {
649 // check if eInBTArray was created, if not do it now.:
650 if (!eInBTArray) eInBTArray=new TObjArray();
651 eInBTArray->Clear();
652 eInBTArray->Add(InBT);
653 eInBTArrayN=eInBTArray->GetEntries();
654 if (eInBTArrayN>0) {
655 eInBTArrayIsFilled=kTRUE;
656 }
657 }
658
659 void SetInBTArray( EdbPVRec* Ali, Int_t mode=0 );
660
661 inline void SetRecoShowerArrayN(Int_t RecoShowerArrayN) {
662 eRecoShowerArrayN = RecoShowerArrayN;
663 }
664 inline void SetRecoShowerArray(TObjArray* RecoShowerArray) {
666 }
667
668 void SetAlgoParameter(Double_t paravalue, Int_t paranr);
669 void ResetAlgoParameters();
670 inline void SetQualityCutValues(Double_t p0, Double_t p1) {
671 eQualityPar[0]=p0;
672 eQualityPar[1]=p1;
673 eUseQualityPar=kTRUE;
674 }
675
676
677 // Inline Get Functions:
678 inline Bool_t GetUseAliSub() {
679 return eUseAliSub;
680 }
681 inline EdbPVRec* GetEdbPVRec( ) const {
682 return eAli;
683 }
684 inline Int_t GetEdbPVRecNpat() const {
685 return eAliNpat;
686 }
687 inline Int_t GetEdbPVRecNplateNumber() const {
689 }
690 inline Bool_t GetAliLoaded() const {
691 return eAliLoaded;
692 }
693 inline EdbPVRec* GetEdbPVRecSub( ) const {
694 return eAli_Sub;
695 }
696
697
698 inline TObjArray* GetInBTArray( ) const {
699 return eInBTArray;
700 }
701 inline EdbSegP* GetInBT(Int_t i) const {
702 return (EdbSegP*)eInBTArray->At(i);
703 }
704 inline TObjArray* GetRecoShowerArray( ) const {
705 return eRecoShowerArray;
706 }
707
708 inline Int_t GetInBTArrayN() const {
709 return eInBTArrayN;
710 }
711 inline Int_t GetRecoShowerArrayN() const {
712 return eRecoShowerArrayN;
713 }
714
715
716 Double_t GetAlgoParameter(Int_t paranr);
717
718 // Inline Reset Functions:
719 inline void ResetInBTArray() {
721 eInBTArrayN = 0;
722 }
723 inline void ResetRecoShowerArray() {
726 }
727
728
729
730
731 // Function to fill the eInBTArray if it is not already done (in Constructor or by SetInBTArray())
733
734 void ClearInBTArray();
736
737 // Function for EdbPVRec Object for analysis use.
738 void LoadEdbPVRec();
739 void Transform_eAli( EdbSegP* InitiatorBT, Float_t ExtractSize );
740 void CalcTrackDensity(EdbPattern* pat_interim,Int_t pat_interim_halfsize,Int_t& npat_int,Int_t& npat_total,Int_t& npatN);
741 Float_t GetEdbPVRecNSeg(EdbPVRec* ali, Int_t mode);
743
744 // Print:
745 inline void PrintEdbPVRec() const {
746 eAli->Print();
747 };
749 void PrintParameters();
750
751 // "Other Functions"
753 Double_t DeltaR_WithPropagation(EdbSegP* s,EdbSegP* stest);
754 Double_t DeltaR_WithoutPropagation(EdbSegP* s,EdbSegP* stest);
755 Bool_t FindPrecedingBTs(EdbSegP* s, EdbSegP* InBT, EdbPVRec *gAli, EdbTrackP* shower);
756 Bool_t IsInConeTube(EdbSegP* TestingSegment, EdbSegP* StartingSegment, Double_t CylinderRadius, Double_t ConeAngle);
757 Double_t InvariantMass(EdbSegP* s1, EdbSegP* s2, Double_t Momentum1=-1, Double_t Momentum2=-1, Double_t ID1=22, Double_t ID2=22);
758
759 // Execute -- the reconstruction function:
760 void Execute();
761
762 // Execute -- Transfer ShowerObjectArray into Treebrach Tree;
764
765 // Execute -- Transfer Treebrach Tree into ShowerObjectArray ;
767
768 // Standard Print Function:
769 void Print();
770 // Standard Help Function:
771 void Help();
772 // Standard Reset Function:
773 void Set0();
774 // Standard Init Function:
775 void Init();
776
777 ClassDef(EdbShowerRec,3)
778};
779#endif /* ROOT_EdbShowerRec */
brick z0
Definition: RecDispMC.C:106
brick dz
Definition: RecDispMC.C:107
TObjArray * RecoShowerArray
Definition: Shower_E_FromShowerRoot.C:12
Edb raw data unit (scanned plate) associated with run file.
Definition: EdbDataSet.h:26
emulsion data processing
Definition: EdbDataSet.h:181
Definition: EdbPVRec.h:148
Definition: EdbPattern.h:273
Int_t Npatterns() const
Definition: EdbPattern.h:366
void Print() const
Definition: EdbPattern.cxx:1693
Definition: EdbSegP.h:21
Definition: EdbShowerRec.h:25
Int_t ntrace2simub[10000]
Definition: EdbShowerRec.h:195
Double_t eQualityPar[2]
Definition: EdbShowerRec.h:38
void InitPiece(EdbDataPiece &piece, const char *cpfile, const char *parfile)
Definition: EdbShowerRec.cxx:263
void SetInBTArray(EdbSegP *InBT)
Definition: EdbShowerRec.h:648
Int_t GetL() const
Definition: EdbShowerRec.h:290
void CalculateEnergyValues()
Definition: EdbShowerRec.cxx:2450
Float_t tagprimary[10000]
Definition: EdbShowerRec.h:203
Float_t ntrace3simub[10000]
Definition: EdbShowerRec.h:196
void SetIDb(int idb2, int i)
Definition: EdbShowerRec.h:465
Int_t sizeb30
sizeb30: basetracks within the first 30 plates
Definition: EdbShowerRec.h:174
Int_t ntrace4simub[10000]
Definition: EdbShowerRec.h:197
Int_t emcDigitIndexTop0
Top Digit index of the first shower segment.
Definition: EdbShowerRec.h:54
Float_t yb[10000]
position of segment i
Definition: EdbShowerRec.h:188
Float_t output30
old neural net variables for e/pi separation
Definition: EdbShowerRec.h:177
Double_t bin57
Definition: EdbShowerRec.h:243
int ReadPiece(EdbDataPiece &piece, EdbPattern &pat)
Definition: EdbShowerRec.cxx:1905
TTree * varia
Definition: EdbShowerRec.h:233
TH1D * GetHistdeltaR_rms()
Definition: EdbShowerRec.h:603
Float_t GetChi2b(int i) const
Definition: EdbShowerRec.h:331
Double_t bin60
Definition: EdbShowerRec.h:243
TFile * file
Definition: EdbShowerRec.h:220
void SetEdbPVRec(EdbPVRec *Ali)
Definition: EdbShowerRec.h:629
void PrintEdbPVRec() const
Definition: EdbShowerRec.h:745
Double_t bin23
Definition: EdbShowerRec.h:240
void ClearInBTArray()
Definition: EdbShowerRec.cxx:4270
Int_t emcDigitIndexBottom[1000]
mc bottom digit index of basetrack
Definition: EdbShowerRec.h:76
Int_t sizeb15
sizeb15: basetracks within the first 15 plates
Definition: EdbShowerRec.h:172
TObjArray * eInBTArray
Definition: EdbShowerRec.h:115
Float_t GetEnergy() const
Definition: EdbShowerRec.h:370
virtual ~EdbShowerRec()
Definition: EdbShowerRec.cxx:198
void SetAlgoParameter(Double_t paravalue, Int_t paranr)
Definition: EdbShowerRec.cxx:4818
Double_t eAlgoParameterConeRadius
Radius of spanning cone from first BT.
Definition: EdbShowerRec.h:29
Int_t GetNFilmb(int i) const
Definition: EdbShowerRec.h:343
void LoadEdbPVRec()
Definition: EdbShowerRec.cxx:3689
Float_t Energy_CalcSigma(Float_t Energy, Int_t NPlatesNr)
Definition: EdbShowerRec.cxx:3007
Int_t eRecoShowerArrayN
Definition: EdbShowerRec.h:122
Int_t eIDb[10000]
ID of basetrack.
Definition: EdbShowerRec.h:60
TH1D * histo_nbtk_av
Definition: EdbShowerRec.h:583
void SetZ0(float z)
Definition: EdbShowerRec.h:398
Int_t eFlag0
Flag of the first shower segment.
Definition: EdbShowerRec.h:53
Int_t GetSize30() const
Definition: EdbShowerRec.h:306
Int_t showerID
??? forgot what it was ???
Definition: EdbShowerRec.h:184
void SetInBTArrayN(Int_t InBTArrayN)
Definition: EdbShowerRec.h:644
Float_t eTx
tanX: deltaX/deltaZ for the first shower segment
Definition: EdbShowerRec.h:47
Int_t GetSize15() const
Definition: EdbShowerRec.h:300
Double_t bin5
Definition: EdbShowerRec.h:238
Double_t bin59
Definition: EdbShowerRec.h:243
void PrintParameters()
Definition: EdbShowerRec.cxx:4846
Float_t eZb[10000]
Z position of basetrack.
Definition: EdbShowerRec.h:64
Float_t xb[10000]
position of segment i
Definition: EdbShowerRec.h:187
void Transform_eAli(EdbSegP *InitiatorBT, Float_t ExtractSize)
Definition: EdbShowerRec.cxx:3724
Double_t bin22
Definition: EdbShowerRec.h:240
void SetmcDigitIndexTop(int mcDt, int i)
Definition: EdbShowerRec.h:507
Int_t eWb[10000]
W of basetrack.
Definition: EdbShowerRec.h:69
TFile * fileout2
Definition: EdbShowerRec.h:222
void SetXb(float xb, int i)
Definition: EdbShowerRec.h:462
TH1D * histo_deltaT_rms
Definition: EdbShowerRec.h:588
TMultiLayerPerceptron * eEANN()
shower length ("nfilmb");
TString * eEnergyWeightFileString[9]
Container for the weightfiles trained on different.
Definition: EdbShowerRec.h:152
Double_t bin52
Definition: EdbShowerRec.h:243
TObjArray * GetInBTArray() const
Definition: EdbShowerRec.h:698
Double_t bin35
Definition: EdbShowerRec.h:241
Float_t GetEdbPVRecNSeg(EdbPVRec *ali, Int_t mode)
Definition: EdbShowerRec.cxx:3862
Double_t bin49
Definition: EdbShowerRec.h:242
void SetPlateb(int plate2, int i)
Definition: EdbShowerRec.h:468
Float_t output50
old neural net variables for e/pi separation
Definition: EdbShowerRec.h:178
Int_t eProb1
Definition: EdbShowerRec.h:216
Double_t bin32
Definition: EdbShowerRec.h:241
Float_t GetZ0() const
Definition: EdbShowerRec.h:266
void SetQualityCutValues(Double_t p0, Double_t p1)
Definition: EdbShowerRec.h:670
void SetChi20(float chi2)
Definition: EdbShowerRec.h:401
Float_t chi2btkb[10000]
Definition: EdbShowerRec.h:198
Double_t bin12
Definition: EdbShowerRec.h:239
Int_t GetSize20() const
Definition: EdbShowerRec.h:303
void SetFlag0(int flag)
Definition: EdbShowerRec.h:410
Float_t GetZb(int i) const
Definition: EdbShowerRec.h:322
Double_t bin2
Definition: EdbShowerRec.h:238
Double_t bin44
Definition: EdbShowerRec.h:242
Float_t GetTXb(int i) const
Definition: EdbShowerRec.h:325
Float_t GetDeltarb(int i) const
Definition: EdbShowerRec.h:346
EdbPVRec * gAli
Definition: EdbShowerRec.h:227
Bool_t eInBTArrayLoaded
Definition: EdbShowerRec.h:117
void SetRecoShowerArray(TObjArray *RecoShowerArray)
Definition: EdbShowerRec.h:664
Double_t bin4
Definition: EdbShowerRec.h:238
Float_t GetTx() const
Definition: EdbShowerRec.h:281
void SetTx(float tx)
Definition: EdbShowerRec.h:419
Float_t GetmcDigitIndexTop(int i) const
Definition: EdbShowerRec.h:382
Bool_t eShowerTreeIsDone
ShowerReconstruction already done or not.
Definition: EdbShowerRec.h:143
Float_t eP0
P of the first shower segment.
Definition: EdbShowerRec.h:52
Bool_t eAliLoaded
Definition: EdbShowerRec.h:108
Float_t GetP0() const
Definition: EdbShowerRec.h:275
Float_t eAli_Sub_halfsize
Definition: EdbShowerRec.h:102
EdbSegP * GetInBT(Int_t i) const
Definition: EdbShowerRec.h:701
Bool_t eInBTArrayIsFilled
Definition: EdbShowerRec.h:91
Int_t eProb90
Definition: EdbShowerRec.h:215
int SaveLNK()
Definition: EdbShowerRec.cxx:3101
Double_t bin45
Definition: EdbShowerRec.h:242
Int_t mcDigitIndexBottom[1000]
Definition: EdbShowerRec.h:205
void SetY0(float y)
Definition: EdbShowerRec.h:395
void SetPrimary(int tagprimary, int i)
Definition: EdbShowerRec.h:504
TH1D * GetHistdeltaT_rms()
Definition: EdbShowerRec.h:606
void SetYb(float yb, int i)
Definition: EdbShowerRec.h:471
char cmd[500]
Definition: EdbShowerRec.h:251
TMultiLayerPerceptron * mlp1
Definition: EdbShowerRec.h:246
Int_t GetID() const
Definition: EdbShowerRec.h:257
Bool_t GetUseAliSub()
Definition: EdbShowerRec.h:678
Double_t bin54
Definition: EdbShowerRec.h:243
Int_t number_eventb
definition of treebranch
Definition: EdbShowerRec.h:171
TH1F * GetHistEnergyNominal()
Definition: EdbShowerRec.h:566
void CalcTrackDensity(EdbPattern *pat_interim, Int_t pat_interim_halfsize, Int_t &npat_int, Int_t &npat_total, Int_t &npatN)
Definition: EdbShowerRec.cxx:4858
void SetX0(float x)
Definition: EdbShowerRec.h:392
TF1 * eEnergyResolutionFitFunction_All
Definition: EdbShowerRec.h:156
Int_t eL
length of the shower in number of film
Definition: EdbShowerRec.h:58
void PrintInitiatorBTs()
Definition: EdbShowerRec.cxx:2424
void SetZb(float zb, int i)
Definition: EdbShowerRec.h:474
Int_t GetFlagb(int i) const
Definition: EdbShowerRec.h:340
Float_t GetXb(int i) const
Definition: EdbShowerRec.h:316
Int_t eAli_SubNpat
Definition: EdbShowerRec.h:104
Float_t eYb[10000]
Y position of basetrack.
Definition: EdbShowerRec.h:63
Double_t bin41
Definition: EdbShowerRec.h:242
Float_t purityb
purity of the shower (MC info needed).
Definition: EdbShowerRec.h:212
void LoadShowerFile(TString ShowerFileName)
Definition: EdbShowerRec.cxx:2491
EdbPVRec * eAli_Sub
Definition: EdbShowerRec.h:101
void SetmcDigitIndexBottom0(int mcDb)
Definition: EdbShowerRec.h:416
EdbPVRec * GetEdbPVRec() const
Definition: EdbShowerRec.h:681
Int_t GetW0() const
Definition: EdbShowerRec.h:272
Int_t GetN() const
Definition: EdbShowerRec.h:253
Double_t bin50
Definition: EdbShowerRec.h:242
Float_t trackdensb
Track density around the shower (BT/mm2) (using eAli_Sub_halfsize).
Definition: EdbShowerRec.h:213
void Set0()
Definition: EdbShowerRec.cxx:230
void Print()
Definition: EdbShowerRec.cxx:4941
Double_t bin28
Definition: EdbShowerRec.h:240
TMultiLayerPerceptron * mlp4
Definition: EdbShowerRec.h:249
TFile * fileout3
Definition: EdbShowerRec.h:225
void Energy_CreateANNTree()
Definition: EdbShowerRec.cxx:3027
Double_t GetAlgoParameter(Int_t paranr)
Definition: EdbShowerRec.cxx:4832
Float_t eEnergyCorrectedb
Neural Network output for Corrected Energy.
Definition: EdbShowerRec.h:131
Int_t ngrainb[10000]
Definition: EdbShowerRec.h:193
Bool_t IsInConeTube(EdbSegP *TestingSegment, EdbSegP *StartingSegment, Double_t CylinderRadius, Double_t ConeAngle)
Definition: EdbShowerRec.cxx:3536
Double_t bin29
Definition: EdbShowerRec.h:240
void Help()
Definition: EdbShowerRec.cxx:4909
int AddInitiatorBT(EdbSegP *seg)
Definition: EdbShowerRec.cxx:2402
Int_t GetIDb(int i) const
Definition: EdbShowerRec.h:312
Float_t GetOutput15() const
Definition: EdbShowerRec.h:360
void SetmcDigitIndexBottom(int mcDb, int i)
Definition: EdbShowerRec.h:510
Int_t sizeb20
sizeb20: basetracks within the first 20 plates
Definition: EdbShowerRec.h:173
TMultiLayerPerceptron * mlp3
Definition: EdbShowerRec.h:248
Int_t eW0
W of the first shower segment.
Definition: EdbShowerRec.h:51
TH1F * eHistEnergyCorrectedb
Definition: EdbShowerRec.h:138
Bool_t eDoEnergyCalculation
EnergyEstimation to do or not.
Definition: EdbShowerRec.h:144
Float_t GetY0() const
Definition: EdbShowerRec.h:263
Float_t output15
old neural net variables for e/pi separation
Definition: EdbShowerRec.h:175
Int_t eTagPrimary[10000]
1 for first Basetrack - 0 for the other
Definition: EdbShowerRec.h:74
Int_t isizeb
??? forgot what it was ???
Definition: EdbShowerRec.h:183
void SetOutput(float output)
Definition: EdbShowerRec.h:449
Int_t eSize30
number of BT in the shower (for 30 films crossed)
Definition: EdbShowerRec.h:81
Float_t eTy
tanY: deltaY/deltaZ for the first shower segment
Definition: EdbShowerRec.h:48
TH1F * eHistEnergySigmaCorrectedb
Definition: EdbShowerRec.h:140
Float_t GetDeltathetab(int i) const
Definition: EdbShowerRec.h:349
Double_t bin20
Definition: EdbShowerRec.h:239
Int_t eNFilmb[10000]
Plate number of basetrack in the shower reference.
Definition: EdbShowerRec.h:71
Float_t GetTy() const
Definition: EdbShowerRec.h:284
TH1F * eHistEnergySigmaUnCorrectedb
Definition: EdbShowerRec.h:141
TH1D * GetHistNBaseTracks()
Definition: EdbShowerRec.h:594
Double_t DeltaR_WithPropagation(EdbSegP *s, EdbSegP *stest)
Definition: EdbShowerRec.cxx:3511
TH1D * histo_longprofile_av
Definition: EdbShowerRec.h:584
TH1D * GetHistdeltaT_mean()
Definition: EdbShowerRec.h:600
Double_t bin25
Definition: EdbShowerRec.h:240
Float_t GetDz() const
Definition: EdbShowerRec.h:287
void SetDoEnergyCalculation(Bool_t DoEnergyCalculation)
Definition: EdbShowerRec.h:555
void SetOutput15(float output)
Definition: EdbShowerRec.h:452
Float_t GetEnergyUn() const
Definition: EdbShowerRec.h:373
TString eFilename_LinkedTracks
Definition: EdbShowerRec.h:96
Double_t InvariantMass(EdbSegP *s1, EdbSegP *s2, Double_t Momentum1=-1, Double_t Momentum2=-1, Double_t ID1=22, Double_t ID2=22)
Definition: EdbShowerRec.cxx:4878
Float_t eOutput30
Neural Network output for e/pi separation (for 30 films crossed)
Definition: EdbShowerRec.h:86
void PrintRecoShowerArray()
Definition: EdbShowerRec.cxx:3477
Double_t bin58
Definition: EdbShowerRec.h:243
void SetOutput20(float output)
Definition: EdbShowerRec.h:455
Double_t bin30
Definition: EdbShowerRec.h:240
Double_t bin47
Definition: EdbShowerRec.h:242
Int_t eAlgoParameterNPropagation
N plates backpropagating.
Definition: EdbShowerRec.h:35
Float_t Energy_CorrectEnergy(Float_t MeasuredEnergy, Int_t NPlatesNr)
Definition: EdbShowerRec.cxx:2948
Int_t ePlateb[10000]
Plate ID of basetrack.
Definition: EdbShowerRec.h:61
void Init()
Definition: EdbShowerRec.cxx:209
Float_t GetOutput20() const
Definition: EdbShowerRec.h:363
Int_t GetEdbPVRecNplateNumber() const
Definition: EdbShowerRec.h:687
Double_t bin26
Definition: EdbShowerRec.h:240
Int_t mcDigitIndexTop[1000]
Definition: EdbShowerRec.h:204
Double_t bin53
Definition: EdbShowerRec.h:243
Double_t bin21
Definition: EdbShowerRec.h:240
void ClearRecoShowerArray()
Definition: EdbShowerRec.cxx:4275
Float_t output20
old neural net variables for e/pi separation
Definition: EdbShowerRec.h:176
Float_t * GetShowerValues(Int_t TreeEntry)
Definition: EdbShowerRec.cxx:3415
void vert(const char *name2, const char *def, int MAXPLATE, int piece2par)
Definition: EdbShowerRec.cxx:1490
Int_t eInBTArrayMaxSize
Definition: EdbShowerRec.h:118
Float_t energy_shot_particle
Definition: EdbShowerRec.h:135
Float_t eEnergySigmaUnCorrectedb
Neural Network output for UnCorrected Energy Sigma.
Definition: EdbShowerRec.h:134
void SetDelthetab(float deltathetab, int i)
Definition: EdbShowerRec.h:501
Float_t GetOutput30() const
Definition: EdbShowerRec.h:366
Float_t deltathetab[10000]
Definition: EdbShowerRec.h:200
Float_t eDeltathetab[10000]
Angular criteria of basetrack.
Definition: EdbShowerRec.h:73
Double_t bin46
Definition: EdbShowerRec.h:242
Float_t * GetEnergyValues(Int_t TreeEntry)
Definition: EdbShowerRec.cxx:3360
Int_t GetSize() const
Definition: EdbShowerRec.h:297
void SetW0(int w)
Definition: EdbShowerRec.h:404
TObjArray * eRecoShowerArray
Definition: EdbShowerRec.h:121
Int_t GetEdbPVRecNpat() const
Definition: EdbShowerRec.h:684
Double_t bin13
Definition: EdbShowerRec.h:239
Float_t ePb[10000]
P of basetrack.
Definition: EdbShowerRec.h:68
TMultiLayerPerceptron * mlp2
Definition: EdbShowerRec.h:247
Double_t bin14
Definition: EdbShowerRec.h:239
Double_t bin42
Definition: EdbShowerRec.h:242
EdbPVRec * GetEdbPVRecSub() const
Definition: EdbShowerRec.h:693
void SetL(int L)
Definition: EdbShowerRec.h:445
Bool_t eEnergyIsDone
EnergyEstimation already done or not.
Definition: EdbShowerRec.h:145
Int_t emcDigitIndexTop[1000]
mc top digit index of basetrack
Definition: EdbShowerRec.h:75
TTree * treesaveb3
Definition: EdbShowerRec.h:226
Float_t eEnergySigmaCorrectedb
Neural Network output for Corrected Energy Sigma.
Definition: EdbShowerRec.h:133
void Energy_ExtractShowerParametrisationProfile()
Definition: EdbShowerRec.cxx:2510
Float_t EnergyUnCorrectedb
Definition: EdbShowerRec.h:208
Bool_t GetAliLoaded() const
Definition: EdbShowerRec.h:690
Int_t eSize
number of BT in the shower
Definition: EdbShowerRec.h:78
Int_t GetTrID() const
Definition: EdbShowerRec.h:293
void SetTy(float ty)
Definition: EdbShowerRec.h:422
void SetFlagb(int flag, int i)
Definition: EdbShowerRec.h:492
void Execute()
Definition: EdbShowerRec.cxx:3937
void rec(int num, int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop, int *mcDigitIndexBottom, int piece2, int piece2par, int DOWN, EdbPVRec *pvr)
OLD — not used anymore....
Definition: EdbShowerRec.cxx:317
Float_t deltarb[10000]
Definition: EdbShowerRec.h:199
Double_t bin55
Definition: EdbShowerRec.h:243
Int_t ntrace1simub[10000]
Definition: EdbShowerRec.h:194
void SetTYb(float tyb, int i)
Definition: EdbShowerRec.h:480
void initproc(const char *def, int iopt, const char *rcut)
Definition: EdbShowerRec.cxx:271
Int_t idb[10000]
??? forgot what it was ???
Definition: EdbShowerRec.h:185
Int_t eFlagb[10000]
Flag of basetrack.
Definition: EdbShowerRec.h:70
Float_t GetYb(int i) const
Definition: EdbShowerRec.h:319
TH1F * eHistEnergyNominal
Definition: EdbShowerRec.h:137
Float_t eDz
length of the shower along Z
Definition: EdbShowerRec.h:57
Float_t eX0
|_coordinates of the first shower segment
Definition: EdbShowerRec.h:44
Double_t inANN[70]
Definition: EdbShowerRec.h:155
Double_t eAlgoParameterConnectionDR
Connection Criterium: delta R.
Definition: EdbShowerRec.h:32
Double_t bin11
Definition: EdbShowerRec.h:239
TH1F * GetHistEnergyCorrectedb()
Definition: EdbShowerRec.h:569
Int_t nfilmb[10000]
plate position of segment i w.r.t. starting segment.
Definition: EdbShowerRec.h:192
Int_t GetTreeBranchEntryNr(EdbSegP *seg)
Definition: EdbShowerRec.cxx:3318
void SetID(int id)
Definition: EdbShowerRec.h:388
Bool_t eInitiatorBTIsCreated
Definition: EdbShowerRec.h:90
Double_t bin51
Definition: EdbShowerRec.h:243
void SetUseAliSub(Bool_t UseAliSub)
Definition: EdbShowerRec.h:625
Int_t eInBTArrayN
Definition: EdbShowerRec.h:116
Double_t bin24
Definition: EdbShowerRec.h:240
void ResetInBTArray()
Definition: EdbShowerRec.h:719
void ResetRecoShowerArray()
Definition: EdbShowerRec.h:723
Float_t eZ0
|
Definition: EdbShowerRec.h:46
Double_t eAlgoParameterConeAngle
Opening angle of spanning cone from first BT.
Definition: EdbShowerRec.h:30
void SetSize(int size)
Definition: EdbShowerRec.h:429
void SetSize20(int size)
Definition: EdbShowerRec.h:435
void SetChi2b(float chi2b, int i)
Definition: EdbShowerRec.h:483
Float_t EnergySigmaCorrectedb
Definition: EdbShowerRec.h:209
Int_t eTrID
ID of the tracks of the first BT (in cp file if simulation!)
Definition: EdbShowerRec.h:49
Int_t sizeb
number of basetracks
Definition: EdbShowerRec.h:182
Float_t txb[10000]
position of segment i
Definition: EdbShowerRec.h:190
Float_t deltayb[10000]
Definition: EdbShowerRec.h:202
Float_t eTYb[10000]
Slope Y position of basetrack.
Definition: EdbShowerRec.h:66
Float_t eTXb[10000]
Slope X position of basetrack.
Definition: EdbShowerRec.h:65
void TransferTreebranchShowerTreeIntoShowerObjectArray(TTree *treebranch)
Definition: EdbShowerRec.cxx:4599
void SetNFilmb(int nfilmb, int i)
Definition: EdbShowerRec.h:495
Float_t zb[10000]
position of segment i
Definition: EdbShowerRec.h:189
void SetWb(int w, int i)
Definition: EdbShowerRec.h:486
Double_t bin6
Definition: EdbShowerRec.h:238
EdbDataProc * dproc
Definition: EdbShowerRec.h:235
TFile * fileout
Definition: EdbShowerRec.h:218
void remove(char *shfname, char *def, int MAXPLATE, int piece2par)
Definition: EdbShowerRec.cxx:1454
void recup(int num, int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, double *chi20, int *W0, double *P0, int *Flag0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop0, int *mcDigitIndexBottom0, int piece2, int piece2par, EdbPVRec *pvr)
Definition: EdbShowerRec.cxx:942
void SetDz(float dz)
Definition: EdbShowerRec.h:442
void SetInBTArray(TObjArray *InBTArray)
Definition: EdbShowerRec.h:636
Bool_t eUseQualityPar
Definition: EdbShowerRec.h:39
Bool_t eUseAliSub
Definition: EdbShowerRec.h:109
Float_t EnergySigmaUnCorrectedb
Definition: EdbShowerRec.h:210
EdbDataProc * a
Definition: EdbShowerRec.h:236
void SetRecoShowerArrayN(Int_t RecoShowerArrayN)
Definition: EdbShowerRec.h:661
void NeuralNet()
Definition: EdbShowerRec.cxx:1920
TH1D * histo_deltaR_mean
Definition: EdbShowerRec.h:585
Int_t GetTagPrimaryb(int i) const
Definition: EdbShowerRec.h:352
void CheckEdbPVRecSetUseAliSub()
Definition: EdbShowerRec.cxx:3902
TH1F * GetHistEnergySigmaCorrectedb()
Definition: EdbShowerRec.h:575
TH1F * GetHistEnergySigmaUnCorrectedb()
Definition: EdbShowerRec.h:578
Int_t GetFlag0() const
Definition: EdbShowerRec.h:278
Float_t E_MC
energy of the first starting basetrack
Definition: EdbShowerRec.h:179
Int_t eAliNpat
Definition: EdbShowerRec.h:103
void SetP0(float p)
Definition: EdbShowerRec.h:407
void ReadAffAndZ(char *fname, Float_t *pZoffs, Float_t *a11, Float_t *a12, Float_t *a21, Float_t *a22, Float_t *b1, Float_t *b2)
Definition: EdbShowerRec.cxx:1860
Int_t eSize15
number of BT in the shower (for 15 films crossed)
Definition: EdbShowerRec.h:79
Double_t bin34
Definition: EdbShowerRec.h:241
Double_t bin19
Definition: EdbShowerRec.h:239
void SetSize30(int size)
Definition: EdbShowerRec.h:438
TObjArray * GetRecoShowerArray() const
Definition: EdbShowerRec.h:704
Float_t GetX0() const
Definition: EdbShowerRec.h:260
Double_t bin48
Definition: EdbShowerRec.h:242
Double_t bin1
Definition: EdbShowerRec.h:238
Float_t GetPb(int i) const
Definition: EdbShowerRec.h:337
Float_t GetTYb(int i) const
Definition: EdbShowerRec.h:328
void recdown(int num, int MAXPLATE, int DATA, int Ncand, double *x0, double *y0, double *z0, double *tx0, double *ty0, double *chi20, int *W0, double *P0, int *Flag0, int *plate0, int *id0, int *TRid, double *Esim, int *mcDigitIndexTop0, int *mcDigitIndexBottom0, int piece2, int piece2par, EdbPVRec *pvr)
Definition: EdbShowerRec.cxx:391
TObjArray * ShowerToEdbSegPArray()
Definition: EdbShowerRec.cxx:3239
void Energy_CreateEnergyResolutionFitFunction()
Definition: EdbShowerRec.cxx:2987
Float_t GetOutput() const
Definition: EdbShowerRec.h:357
TFile * FileReconstructedShowerTree
Definition: EdbShowerRec.h:229
Int_t eShowersN
Number how many showers have been reconstructed.
Definition: EdbShowerRec.h:158
Double_t bin27
Definition: EdbShowerRec.h:240
Float_t eY0
| in the SAME FOR ALL SEGMENTS aligned coordinate system
Definition: EdbShowerRec.h:45
TH1D * histo_deltaT_mean
Definition: EdbShowerRec.h:586
Double_t bin43
Definition: EdbShowerRec.h:242
Int_t GetWb(int i) const
Definition: EdbShowerRec.h:334
void SaveResults()
Definition: EdbShowerRec.cxx:278
Double_t bin56
Definition: EdbShowerRec.h:243
Float_t eOutput15
Neural Network output for e/pi separation (for 15 films crossed)
Definition: EdbShowerRec.h:84
Bool_t FindPrecedingBTs(EdbSegP *s, EdbSegP *InBT, EdbPVRec *gAli, EdbTrackP *shower)
Definition: EdbShowerRec.cxx:4212
Double_t bin31
Definition: EdbShowerRec.h:241
Double_t eAlgoParameterConnectionDT
Connection Criterium: delta T.
Definition: EdbShowerRec.h:33
TH1D * GetHistdeltaR_mean()
Definition: EdbShowerRec.h:597
Float_t EnergyCorrectedb
Definition: EdbShowerRec.h:207
Float_t GetmcDigitIndexBottom(int i) const
Definition: EdbShowerRec.h:385
void SetPb(float p, int i)
Definition: EdbShowerRec.h:489
Int_t GetRecoShowerArrayN() const
Definition: EdbShowerRec.h:711
Double_t bin9
Definition: EdbShowerRec.h:238
TFile * FileShowerParametrisationTree
Definition: EdbShowerRec.h:230
Int_t GetPlateb(int i) const
Definition: EdbShowerRec.h:309
Double_t bin18
Definition: EdbShowerRec.h:239
void Fill_eInBTArray_ByLinkTracks_eFilename_LinkedTracks()
Definition: EdbShowerRec.cxx:3603
void SetOutput30(float output)
Definition: EdbShowerRec.h:458
void SetSize15(int size)
Definition: EdbShowerRec.h:432
Float_t GetChi20() const
Definition: EdbShowerRec.h:269
TTree * ShowerParametrisationTree
Definition: EdbShowerRec.h:231
Int_t eID
shower ID
Definition: EdbShowerRec.h:43
void TransferShowerObjectArrayIntoEntryOfTreebranchShowerTree(TObjArray *segarray)
Definition: EdbShowerRec.cxx:4285
EdbPVRec * eAli
Definition: EdbShowerRec.h:100
Float_t eChi2b[10000]
Chi2 of basetrack.
Definition: EdbShowerRec.h:67
Int_t emcDigitIndexBottom0
Bottom Digit index of the first shower segment.
Definition: EdbShowerRec.h:55
TH1D * GetHistLongProfile()
Definition: EdbShowerRec.h:591
void SetTXb(float txb, int i)
Definition: EdbShowerRec.h:477
TTree * treesaveb
Definition: EdbShowerRec.h:219
Int_t GetInBTArrayN() const
Definition: EdbShowerRec.h:708
Float_t eOutput20
Neural Network output for e/pi separation (for 20 films crossed)
Definition: EdbShowerRec.h:85
void SetDeltarb(float deltarb, int i)
Definition: EdbShowerRec.h:498
TH1D * histo_deltaR_rms
Definition: EdbShowerRec.h:587
Double_t bin15
Definition: EdbShowerRec.h:239
TTree * ANNInterimTreeInputvariables
Definition: EdbShowerRec.h:154
Float_t tyb[10000]
position of segment i
Definition: EdbShowerRec.h:191
Double_t bin8
Definition: EdbShowerRec.h:238
Float_t GetEnergyUnSigma() const
Definition: EdbShowerRec.h:379
void SetTrID(int id)
Definition: EdbShowerRec.h:425
Float_t deltaxb[10000]
Definition: EdbShowerRec.h:201
Int_t eNumberPlate_eAliPID
Definition: EdbShowerRec.h:106
TH1F * eHistEnergyUnCorrectedb
Definition: EdbShowerRec.h:139
void SetmcDigitIndexTop0(int mcDt)
Definition: EdbShowerRec.h:413
void ResetAlgoParameters()
Definition: EdbShowerRec.cxx:4806
TH1F * GetHistEnergyUnCorrectedb()
Definition: EdbShowerRec.h:572
Double_t bin17
Definition: EdbShowerRec.h:239
Float_t eOutput
Neural Network output for e/pi separation.
Definition: EdbShowerRec.h:83
Float_t eDeltarb[10000]
Distance criteria of basetrack.
Definition: EdbShowerRec.h:72
Double_t bin7
Definition: EdbShowerRec.h:238
Float_t eChi20
Chi2 of the first shower segment.
Definition: EdbShowerRec.h:50
Int_t type
Definition: EdbShowerRec.h:244
Int_t plateb[10000]
plate id of segment i
Definition: EdbShowerRec.h:186
Double_t bin10
Definition: EdbShowerRec.h:238
Double_t bin3
Definition: EdbShowerRec.h:238
TTree * treesaveb2
Definition: EdbShowerRec.h:223
Double_t DeltaR_WithoutPropagation(EdbSegP *s, EdbSegP *stest)
Definition: EdbShowerRec.cxx:3528
Double_t DeltaThetaComponentwise(EdbSegP *s1, EdbSegP *s2)
Definition: EdbShowerRec.cxx:3494
Int_t eSize20
number of BT in the shower (for 20 films crossed)
Definition: EdbShowerRec.h:80
TObjArray * eEnergyANN
Container for the ANNs trained on different.
Definition: EdbShowerRec.h:148
Float_t GetEnergySigma() const
Definition: EdbShowerRec.h:376
Double_t bin16
Definition: EdbShowerRec.h:239
Int_t eAliNpatM1
Definition: EdbShowerRec.h:105
Float_t eXb[10000]
X position of basetrack.
Definition: EdbShowerRec.h:62
Float_t eEnergyUnCorrectedb
Neural Network output for UnCorrected Energy.
Definition: EdbShowerRec.h:132
Double_t bin33
Definition: EdbShowerRec.h:241
Definition: EdbPattern.h:113
s
Definition: check_shower.C:55
EdbPVRec * ali
Definition: test_oracle.C:9
EdbSegP * s1
Definition: tlg2couples.C:29
EdbSegP * s2
Definition: tlg2couples.C:30
const char * fname
Definition: mc2raw.cxx:41
UInt_t id
Definition: tlg2couples.C:117
int piece2par
Definition: shower_btr.C:22
const char * def
Definition: shower_tr.C:24
int DOWN
Definition: shower_btr.C:16
int piece2
Definition: shower_btr.C:21
int DATA
Definition: shower_btr.C:24
int MAXPLATE
Definition: shower_btr.C:19
#define NULL
Definition: nidaqmx.h:84
p
Definition: testBGReduction_AllMethods.C:8
Float_t chi2
Definition: testBGReduction_By_ANN.C:14
void w(int rid=2, int nviews=2)
Definition: test.C:27