1 #ifndef ROOT_EdbShowerP
2 #define ROOT_EdbShowerP
11 #include "TBenchmark.h"
41 Float_t eParaValue[10];
42 TString eParaString[10];
44 Bool_t eParametrisationIsDone[10];
45 Bool_t eExtraInfoIsDone[2];
46 Bool_t eMCInfoIsDone[2];
75 Int_t eNBTMCPlate[57];
76 Int_t eNBTMCFlagPlate[57][99];
116 Int_t GetLastFilledBin(TH1*
hist);
125 EdbShowerP(
int number1,
int number2,
int number3,
int nseg=0);
151 Int_t longprofile[57];
164 Int_t transprofile[8];
165 Int_t longprofile[57];
196 Int_t longprofile[57];
219 Int_t ProfileLongitudinalBincontent[57];
220 Int_t ProfileTransversalBincontent[8];
241 Double_t edRLong[50];
242 Double_t edRTrans[50];
243 Double_t edeltarb[50];
244 Double_t edeltathetab[50];
375 void Set0Parametrizations();
400 inline Int_t
N0()
const {
407 if (eS) eNpl = 1+TMath::Abs(GetSegment(0)->
PID() - GetSegment(N()-1)->
PID());
409 inline Int_t
Npl()
const {
412 inline Int_t
N()
const {
413 return (eS) ? eS->GetEntries() : 0;
421 inline Int_t
N00()
const {
430 return (eS) ? (
EdbSegP*)(eS->First()) : 0;
433 return (eS) ? (
EdbSegP*)(eS->Last()) : 0;
436 return (eS) ? (
EdbSegP*)(eS->At(i)) : 0;
440 return (eS) ? ((
EdbSegP*)eS->First())->
Z() : 9999999;
443 return (eS) ? ((
EdbSegP*)eS->Last())->
Z() : 9999999;
477 return eShowerAxisCenterGravityBT;
480 return eShowerAxisAngle;
485 void AddSegmentAndUpdate(
EdbSegP *
s);
488 void RemoveSegment(
EdbSegP *
s, Bool_t UpdateAll=kFALSE);
506 if (eProfileLongitudinal) eProfileLongitudinal->Reset();
509 if (eProfileTransversal) eProfileTransversal->Reset();
520 return eNBTMCFlag[PdgArray];
523 return eNBTPlate[PIDdiff];
526 return eNBTMCPlate[PIDdiff];
529 return eNBTMCFlagPlate[PIDdiff][PdgArray];
539 return eProfileLongitudinal;
542 return eProfileTransversal;
544 TH1F* GetProfileLongitudinalPlate();
547 return eParametrisationIsDone[nr];
549 Float_t GetParaVariable(Int_t ParaVariable, Int_t ParaNr);
579 return ePara_ExtraInfo;
582 void SetParaVariable(Float_t fParVar, Int_t ParaVariable, Int_t ParaNr);
585 return eMCInfoIsDone[nr];
588 return eExtraInfoIsDone[nr];
594 return eMCInfo_Event;
598 eMCInfoIsDone[nr]=IsDone;
602 eExtraInfoIsDone[nr]=IsDone;
606 eMCInfo_PGun=fMCInfo_PGun;
609 eMCInfo_Event=fMCInfo_Event;
620 if (ParaValueNr>=10)
return;
621 eParaValue[ParaValueNr]=ParaValue;
624 if (ParaStringNr>=10)
return;
625 eParaString[ParaStringNr]=ParaString;
632 void BuildProfiles();
633 void BuildPlateProfile();
635 void BuildParametrisation(Int_t ParaNr);
636 void BuildParametrisation_FJ();
637 void BuildParametrisation_LT();
638 void BuildParametrisation_YC();
639 void BuildParametrisation_JC();
640 void BuildParametrisation_XX();
641 void BuildParametrisation_YY();
642 void BuildParametrisation_PP();
643 void BuildParametrisation_AS();
644 void BuildParametrisation_SE();
645 void BuildParametrisation_ExtraInfo();
648 void CalcSphericity();
649 void CalcShowerAngularDeviationDistribution();
652 Float_t CalcOpenAngle(Int_t
type);
653 Float_t CalcOpenAngleSimple();
668 void MergeFromShower(
EdbShowerP* show,Int_t MergingType=1);
669 void MergeFromShowerByAddress(
EdbShowerP* show);
670 void MergeFromShowerByPosition(
EdbShowerP* show);
680 void PrintMetaData();
681 void PrintSegments();
682 void PrintParametrisation(Int_t ParaNr=0);
683 void PrintParametrisation_FJ();
684 void PrintParametrisation_LT();
685 void PrintParametrisation_YC();
686 void PrintParametrisation_JC();
687 void PrintParametrisation_XX();
688 void PrintParametrisation_YY();
689 void PrintParametrisation_PP();
690 void PrintParametrisation_AS();
691 void PrintParametrisation_SE();
692 void PrintParametrisation_ExtraInfo();
693 void PrintMCInfo_PGun();
Double_t CalcIP(EdbSegP *s, EdbVertex *v)
Definition: ShowRec.cpp:8872
EdbSegP * BuildShowerAxis(TObjArray *ShowerSegArray)
Definition: ShowRec.cpp:8629
Double_t GetdT(EdbSegP *s1, EdbSegP *s2)
Definition: ShowRec.h:164
Double_t GetdR(EdbSegP *s1, EdbSegP *s2)
Definition: ShowRec.h:167
Definition: EdbShowerP.h:28
void SetExtraInfoIsDone(Int_t nr, Bool_t IsDone)
Definition: EdbShowerP.h:601
Float_t ePurity
Definition: EdbShowerP.h:79
Para_YC ePara_YC
Definition: EdbShowerP.h:351
Float_t M() const
Definition: EdbShowerP.h:465
Float_t eShowerAngularDeviationTYDistribution_sigma
Definition: EdbShowerP.h:102
Bool_t GetExtraInfoIsDone(Int_t nr) const
Definition: EdbShowerP.h:587
Float_t GetFirstZ() const
Definition: EdbShowerP.h:445
EdbVTA * eVTAS
track to which the shower start is attached to
Definition: EdbShowerP.h:65
EdbSegP * GetSegmentLast() const
Definition: EdbShowerP.h:432
Int_t eNBT
Definition: EdbShowerP.h:71
Float_t eEnergyUncorrected
Definition: EdbShowerP.h:109
Float_t eShowerAngularDeviationTYDistribution_mean
Definition: EdbShowerP.h:101
EdbSegP * eShowerAxisCenterGravityBT
Definition: EdbShowerP.h:95
Int_t eAlgValue
Definition: EdbShowerP.h:40
void ClearProfileLongitudinalHisto()
Definition: EdbShowerP.h:505
Short_t eFirstPlateZ
Definition: EdbShowerP.h:52
EdbTrackP * eTrackAS
Definition: EdbShowerP.h:64
TObjArray * eReco_ID_Array
Definition: EdbShowerP.h:368
EdbSegP * GetSegmentGravity() const
Definition: EdbShowerP.h:476
Int_t PDG() const
Definition: EdbShowerP.h:456
Float_t eShowerAxisAngle
Definition: EdbShowerP.h:93
Short_t eLastPlatePID
Definition: EdbShowerP.h:51
Int_t eN0
Definition: EdbShowerP.h:63
Int_t ePara_N
Definition: EdbShowerP.h:359
MCInfo_Event GetMCInfo_Event() const
Definition: EdbShowerP.h:593
Int_t N() const
Definition: EdbShowerP.h:412
Para_JC GetPara_JC() const
Definition: EdbShowerP.h:560
Float_t eShowerAngularDeviationTXDistribution_mean
Definition: EdbShowerP.h:99
TObjArray * GetSegmentArray()
Definition: EdbShowerP.h:425
void SetMCInfo_PGun(MCInfo_PGun fMCInfo_PGun)
Definition: EdbShowerP.h:605
Para_SE ePara_SE
Definition: EdbShowerP.h:357
TH1F * GetProfileLongitudinal() const
Definition: EdbShowerP.h:538
TString eTransversalProfileName
Definition: EdbShowerP.h:36
Int_t eMC
Definition: EdbShowerP.h:81
Para_FJ ePara_FJ
Definition: EdbShowerP.h:349
Bool_t GetMCInfoIsDone(Int_t nr) const
Definition: EdbShowerP.h:584
Float_t eShowerAngularDeviationTXDistribution_sigma
Definition: EdbShowerP.h:100
void SetAlgParaString(Int_t ParaStringNr, TString ParaString)
Definition: EdbShowerP.h:623
Int_t N0() const
Definition: EdbShowerP.h:400
void SetAlgValue(Int_t AlgValue)
Definition: EdbShowerP.h:615
Short_t eFirstPlate
Definition: EdbShowerP.h:48
Float_t GetSegmentFirstZ() const
Definition: EdbShowerP.h:439
Float_t eM
vertex to which the shower start is attached to
Definition: EdbShowerP.h:67
Float_t eLastZ
Definition: EdbShowerP.h:55
Int_t GetNBTMCPlate(Int_t PIDdiff) const
Definition: EdbShowerP.h:525
Bool_t GetParametrisationIsDone(Int_t nr) const
Definition: EdbShowerP.h:546
EdbVTA * VTAS() const
Definition: EdbShowerP.h:380
Para_XX ePara_XX
Definition: EdbShowerP.h:353
Para_YY GetPara_YY() const
Definition: EdbShowerP.h:566
Int_t GetNBTMCFlag(Int_t PdgArray) const
Definition: EdbShowerP.h:519
Para_XX GetPara_XX() const
Definition: EdbShowerP.h:563
void SetM(float m)
Definition: EdbShowerP.h:462
Reco_Vtx eReco_Vtx
Definition: EdbShowerP.h:366
Float_t GetSegmentLastZ() const
Definition: EdbShowerP.h:442
Para_PP GetPara_PP() const
Definition: EdbShowerP.h:569
Float_t eEnergyMC
Definition: EdbShowerP.h:80
void SetN00()
Definition: EdbShowerP.h:418
Float_t eEnergyCorrected
Definition: EdbShowerP.h:110
void SetPDG(int pdg)
Definition: EdbShowerP.h:453
Float_t eEnergy
Definition: EdbShowerP.h:108
Int_t GetNBT() const
Definition: EdbShowerP.h:513
void SetAlgName(TString AlgName)
Definition: EdbShowerP.h:612
MCInfo_PGun eMCInfo_PGun
Definition: EdbShowerP.h:362
Short_t eLastPlate
Definition: EdbShowerP.h:49
Float_t GetLastZ() const
Definition: EdbShowerP.h:448
TObjArray * eReco_Vtx_Array
Definition: EdbShowerP.h:370
EdbSegP * GetSegment(int i) const
Definition: EdbShowerP.h:435
Para_AS ePara_AS
Definition: EdbShowerP.h:356
Reco_E eReco_E
Definition: EdbShowerP.h:365
Float_t eFirstZ
Definition: EdbShowerP.h:54
EdbTrackP * TrackAS() const
Definition: EdbShowerP.h:377
void SetN00(int n00)
Definition: EdbShowerP.h:415
Int_t eN00
Definition: EdbShowerP.h:77
Short_t eFirstPlatePID
Definition: EdbShowerP.h:50
Para_ExtraInfo GetPara_ExtraInfo() const
Definition: EdbShowerP.h:578
TH1F * eProfileLongitudinal
Definition: EdbShowerP.h:86
Short_t eLastPlateZ
Definition: EdbShowerP.h:53
void SetCounters()
Definition: EdbShowerP.h:388
MCInfo_Event eMCInfo_Event
Definition: EdbShowerP.h:363
TObjArray * eS
Definition: EdbShowerP.h:61
Para_PP ePara_PP
Definition: EdbShowerP.h:355
Int_t GetNBTPlate(Int_t PIDdiff) const
Definition: EdbShowerP.h:522
Int_t N00() const
Definition: EdbShowerP.h:421
Int_t GetPDG() const
Definition: EdbShowerP.h:459
Para_AS GetPara_AS() const
Definition: EdbShowerP.h:572
Para_YC GetPara_YC() const
Definition: EdbShowerP.h:557
Int_t eNpl
Definition: EdbShowerP.h:62
void ClearProfileTransversalHisto()
Definition: EdbShowerP.h:508
Int_t eNBTMC
Definition: EdbShowerP.h:72
TH1F * GetProfileTransversal() const
Definition: EdbShowerP.h:541
Para_JC ePara_JC
Definition: EdbShowerP.h:352
EdbSegP * GetSegmentFirst() const
Definition: EdbShowerP.h:429
void SetN0()
Definition: EdbShowerP.h:397
Int_t GetNBTMC() const
Definition: EdbShowerP.h:516
Float_t GetSphericity() const
Definition: EdbShowerP.h:535
Short_t eId
Definition: EdbShowerP.h:106
TH1F * eProfileTransversal
Definition: EdbShowerP.h:87
void SetNpl()
Definition: EdbShowerP.h:406
Int_t Npl() const
Definition: EdbShowerP.h:409
void SetN0(int n0)
Definition: EdbShowerP.h:394
void SetMCInfo_Event(MCInfo_Event fMCInfo_Event)
Definition: EdbShowerP.h:608
void SetNpl(int npl)
Definition: EdbShowerP.h:403
Para_ExtraInfo ePara_ExtraInfo
Definition: EdbShowerP.h:361
void Clear()
Definition: EdbShowerP.h:502
Para_LT ePara_LT
Definition: EdbShowerP.h:350
Int_t ePDG
Definition: EdbShowerP.h:68
void SetSegmentArray(TObjArray *segArray)
Definition: EdbShowerP.h:491
void SetAlgParaValue(Int_t ParaValueNr, Float_t ParaValue)
Definition: EdbShowerP.h:619
Float_t eSphericity
Definition: EdbShowerP.h:82
Para_FJ GetPara_FJ() const
Definition: EdbShowerP.h:551
Para_YY ePara_YY
Definition: EdbShowerP.h:354
MCInfo_PGun GetMCInfo_PGun() const
Definition: EdbShowerP.h:590
Float_t GetSegmentAngle() const
Definition: EdbShowerP.h:479
Float_t GetPurity() const
Definition: EdbShowerP.h:532
Short_t ePDGId
Definition: EdbShowerP.h:107
Int_t GetNBTMCFlagPlate(Int_t PIDdiff, Int_t PdgArray) const
Definition: EdbShowerP.h:528
TString eAlgName
Definition: EdbShowerP.h:39
TString eLongitudinalProfileName
Definition: EdbShowerP.h:35
Para_LT GetPara_LT() const
Definition: EdbShowerP.h:554
TObjArray * eReco_E_Array
Definition: EdbShowerP.h:369
Int_t GetM() const
Definition: EdbShowerP.h:468
Para_SE GetPara_SE() const
Definition: EdbShowerP.h:575
void AddShower(EdbShowerP *show)
void SetMCInfoIsDone(Int_t nr, Bool_t IsDone)
Definition: EdbShowerP.h:597
Definition: EdbPattern.h:118
Definition: EdbVertex.h:25
Definition: EdbVertex.h:68
void hist()
Definition: init.C:23
void Finalize()
Definition: ShowRec.cpp:513
void Help()
Definition: mc2raw.cxx:20
Definition: EdbShowerP.h:295
Int_t eDUMMYVARIABLE
Definition: EdbShowerP.h:299
Definition: EdbShowerP.h:269
Float_t vtxposy
Definition: EdbShowerP.h:283
Float_t Y
Definition: EdbShowerP.h:287
Int_t MCEvt
Definition: EdbShowerP.h:275
Float_t vtxposz
Definition: EdbShowerP.h:284
Float_t Z
Definition: EdbShowerP.h:289
Int_t PDGId
Definition: EdbShowerP.h:276
Float_t X
Definition: EdbShowerP.h:288
Float_t vtxposx
Definition: EdbShowerP.h:282
Float_t TX
Definition: EdbShowerP.h:285
Float_t tantheta
Definition: EdbShowerP.h:278
Float_t diry
Definition: EdbShowerP.h:280
Float_t dirz
Definition: EdbShowerP.h:281
Float_t TY
Definition: EdbShowerP.h:286
Float_t energy
Definition: EdbShowerP.h:277
Float_t dirx
Definition: EdbShowerP.h:279
Definition: EdbShowerP.h:235
Int_t nseg
Definition: EdbShowerP.h:238
Definition: EdbShowerP.h:143
Float_t BT_deltaT_rms
Definition: EdbShowerP.h:150
Int_t nseg
Definition: EdbShowerP.h:146
Float_t BT_deltaR_rms
Definition: EdbShowerP.h:148
Float_t BT_deltaR_mean
Definition: EdbShowerP.h:147
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:145
Float_t BT_deltaT_mean
Definition: EdbShowerP.h:149
Definition: EdbShowerP.h:180
Int_t nseg
Definition: EdbShowerP.h:184
Float_t nmax
Definition: EdbShowerP.h:188
Float_t alpha
Definition: EdbShowerP.h:187
Float_t C1
Definition: EdbShowerP.h:185
Float_t BT_deltaT_mean
Definition: EdbShowerP.h:194
Float_t BT_deltaT_rms
Definition: EdbShowerP.h:195
Float_t BT_deltaR_rms
Definition: EdbShowerP.h:193
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:183
Float_t BT_deltaR_mean
Definition: EdbShowerP.h:192
Float_t a1
Definition: EdbShowerP.h:186
Definition: EdbShowerP.h:155
Float_t BT_deltaR_rms
Definition: EdbShowerP.h:161
Float_t BT_deltaR_mean
Definition: EdbShowerP.h:160
Int_t nseg
Definition: EdbShowerP.h:159
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:158
Float_t BT_deltaT_rms
Definition: EdbShowerP.h:163
Float_t BT_deltaT_mean
Definition: EdbShowerP.h:162
Definition: EdbShowerP.h:224
Float_t ePairOpeningAngle
Definition: EdbShowerP.h:228
Int_t nseg
Definition: EdbShowerP.h:227
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:226
Float_t ePairChi2
Definition: EdbShowerP.h:231
Float_t ePairOpeningDist_dMin
Definition: EdbShowerP.h:229
Float_t ePairOpeningDist_dR
Definition: EdbShowerP.h:230
Definition: EdbShowerP.h:248
Int_t nseg
Definition: EdbShowerP.h:251
Float_t efficiencyAtShowerAxisAngle
Definition: EdbShowerP.h:253
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:250
Int_t npl
Definition: EdbShowerP.h:252
Definition: EdbShowerP.h:200
Float_t Max_ProfileLongitudinal
Definition: EdbShowerP.h:206
Float_t Last_ProfileTransversal
Definition: EdbShowerP.h:211
Int_t nseg
Definition: EdbShowerP.h:203
Float_t Last_ProfileLongitudinal
Definition: EdbShowerP.h:210
Float_t Max_ProfileTransversal
Definition: EdbShowerP.h:209
Float_t RMS_ProfileLongitudinal
Definition: EdbShowerP.h:205
Float_t Mean_ProfileLongitudinal
Definition: EdbShowerP.h:204
Float_t RMS_ProfileTransversal
Definition: EdbShowerP.h:208
Float_t Mean_ProfileTransversal
Definition: EdbShowerP.h:207
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:202
Definition: EdbShowerP.h:169
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:171
Float_t C1
Definition: EdbShowerP.h:173
Float_t alpha
Definition: EdbShowerP.h:175
Int_t nseg
Definition: EdbShowerP.h:172
Float_t a1
Definition: EdbShowerP.h:174
Float_t nmax
Definition: EdbShowerP.h:176
Definition: EdbShowerP.h:215
Float_t ShowerAxisAngle
Definition: EdbShowerP.h:217
Int_t nseg
Definition: EdbShowerP.h:218
Definition: EdbShowerP.h:327
Float_t eEnergyUncorrected
Definition: EdbShowerP.h:331
Short_t eId
Definition: EdbShowerP.h:328
Short_t ePDGId
Definition: EdbShowerP.h:329
Float_t eEnergyCorrected
Definition: EdbShowerP.h:332
Float_t eEnergy
Definition: EdbShowerP.h:330
Int_t eParaNr
Definition: EdbShowerP.h:333
Definition: EdbShowerP.h:309
Float_t eProb5
Definition: EdbShowerP.h:311
TString eReco_ID_Name
Definition: EdbShowerP.h:313
Float_t eReco_ID_Nr
Definition: EdbShowerP.h:314
Int_t eParaNr
Definition: EdbShowerP.h:316
Float_t eProb90
Definition: EdbShowerP.h:310
Definition: EdbShowerP.h:340
Int_t eDUMMYVARIABLE
Definition: EdbShowerP.h:341
Definition: Flexmotn.h:102
Int_t type
Definition: testBGReduction_By_ANN.C:15
EdbSegP * s
Definition: tlg2pattern.C:32