You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: PWGCF/MultiparticleCorrelations/Core/MuPa-Configurables.h
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ struct : ConfigurableGroup {
38
38
Configurable<bool> cfFillQAEventHistograms2D{"cfFillQAEventHistograms2D", false, "if false, all QA 2D event histograms are not filled. if true, only the ones for which fBookQAEventHistograms2D[...] is true, are filled"};
39
39
Configurable<vector<string>> cfBookQAEventHistograms2D{"cfBookQAEventHistograms2D", {"MultTPC_vs_NContributors-1", "Vertex_z_vs_MultTPC-1", "Vertex_z_vs_NContributors-1", "CentFT0M_vs_CentNTPV-1", "CentRun2V0M_vs_CentRun2SPDTracklets-1", "CentRun2V0M_vs_NContributors-1"}, "book (1) or do not book (0) this QA 2D event histogram"};
40
40
Configurable<bool> cfFillQAParticleHistograms2D{"cfFillQAParticleHistograms2D", false, "if false, all QA 2D particle histograms are not filled. if true, only the ones for which fBookQAParticleHistograms2D[...] is true, are filled"};
41
-
Configurable<vector<string>> cfBookQAParticleHistograms2D{"cfBookQAParticleHistograms2D", {"dcaXY_vs_Pt-1"}, "book (1) or do not book (0) this QA 2D particle histogram"};
41
+
Configurable<vector<string>> cfBookQAParticleHistograms2D{"cfBookQAParticleHistograms2D", {"Pt_vs_dcaXY-1"}, "book (1) or do not book (0) this QA 2D particle histogram"};
} ebye; // "ebye" is a common label for objects in this struct
70
70
71
71
// *) QA:
72
-
// Remark: I keep new histograms in this group, until I need them permanently in the analysis. Then, they are moved to EventHistograms or ParticleHistograms (yes, even if they are 2D).
72
+
// Remark 1: I keep new histograms in this group, until I need them permanently in the analysis. Then, they are moved to EventHistograms or ParticleHistograms (yes, even if they are 2D).
73
+
// Remark 2: All 2D histograms book as TH2F, due to "stmem error" in terminate (see .cxx for further details)
73
74
structQualityAssurance {
74
-
TList*fQAList= NULL; //!<! base list to hold all QA output object
75
-
TProfile*fQAHistogramsPro= NULL; //!<! keeps flags relevant for the QA histograms
76
-
Bool_tfCheckUnderflowAndOverflow=kFALSE; // check and bail out if in event and particle histograms there are entries which went to underflow or overflow bins
77
-
TH2D*fQAEventHistograms2D[eQAEventHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eQAEventHistograms2D ][reco,sim][before, after particle cuts]
78
-
Bool_tfFillQAEventHistograms2D=kTRUE; // if kFALSE, all 2D event histograms are not filled. if kTRUE, the ones for which fBookQAEventHistograms2D[...] is kTRUE, are filled
79
-
Bool_tfBookQAEventHistograms2D[eQAEventHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAEventHistograms2D
80
-
Double_tfEventHistogramsBins2D[eQAEventHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
81
-
TStringfEventHistogramsName2D[eQAEventHistograms2D_N] = {""}; // name of fQAEventHistograms2D, determined programatically from other 1D names, to ease bookkeeping
82
-
TH2D*fQAParticleHistograms2D[eQAParticleHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eQAParticleHistograms2D ][reco,sim][before, after particle cuts]
75
+
TList*fQAList= NULL; //!<! base list to hold all QA output object
76
+
TProfile*fQAHistogramsPro= NULL; //!<! keeps flags relevant for the QA histograms
77
+
Bool_tfCheckUnderflowAndOverflow=kFALSE; // check and bail out if in event and particle histograms there are entries which went to underflow or overflow bins
78
+
TH2F*fQAEventHistograms2D[eQAEventHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eQAEventHistograms2D ][reco,sim][before, after particle cuts]
79
+
Bool_tfFillQAEventHistograms2D=kTRUE; // if kFALSE, all 2D event histograms are not filled. if kTRUE, the ones for which fBookQAEventHistograms2D[...] is kTRUE, are filled
80
+
Bool_tfBookQAEventHistograms2D[eQAEventHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAEventHistograms2D
81
+
Double_tfEventHistogramsBins2D[eQAEventHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
82
+
TStringfEventHistogramsName2D[eQAEventHistograms2D_N] = {""}; // name of fQAEventHistograms2D, determined programatically from other 1D names, to ease bookkeeping
83
+
// Int_t fQAEventHistograms2DRebin[eQAEventHistograms2D_N][2] = {{1}}; // to reduce memory consumption, use this number to merge bins together (i.e. "rebinning") [type - see enum][x,y]
84
+
TH2F*fQAParticleHistograms2D[eQAParticleHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eQAParticleHistograms2D ][reco,sim][before, after particle cuts]
83
85
Bool_tfFillQAParticleHistograms2D=kTRUE; // if kFALSE, all 2D particle histograms are not filled. if kTRUE, the ones for which fBookQAParticleHistograms2D[...] is kTRUE, are filled
84
86
Bool_tfBookQAParticleHistograms2D[eQAParticleHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAParticleHistograms2D
85
87
Double_tfParticleHistogramsBins2D[eQAParticleHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
86
88
TStringfParticleHistogramsName2D[eQAParticleHistograms2D_N] = {""}; // name of fQAParticleHistograms2D, determined programatically from other 1D names, to ease bookkeeping
87
-
Double_tfCentrality[eCentralityEstimators_N] = {0.}; // used mostly in QA correlation plots
} qa; // "qa" is a common label for objects in this struct
89
+
// Int_t fQAParticleHistograms2DRebin[eQAParticleHistograms2D_N][2] = {{1}}; // to reduce memory consumption, use this number to merge bins together (i.e. "rebinning") [type - see enum][x,y]
90
+
Double_tfCentrality[eCentralityEstimators_N] = {0.}; // used mostly in QA correlation plots
} qa; // "qa" is a common label for objects in this struct
90
93
91
94
// *) Event histograms:
92
95
structEventHistograms {
93
-
TList*fEventHistogramsList= NULL; //!<! list to hold all control event histograms
94
-
TProfile*fEventHistogramsPro= NULL; //!<! keeps flags relevant for the control event histograms
96
+
TList*fEventHistogramsList= NULL; //!<! list to hold all control event histograms
97
+
TProfile*fEventHistogramsPro= NULL; //!<! keeps flags relevant for the control event histograms
98
+
// 1D:
95
99
TH1D*fEventHistograms[eEventHistograms_N][2][2] = {{{NULL}}}; //! [ type - see enum eEventHistograms ][reco,sim][before, after event cuts]
96
100
Bool_tfFillEventHistograms=kTRUE; // if kFALSE, all event histograms are not filled. if kTRUE, the ones for which fBookEventHistograms[...] is kTRUE, are filled
97
101
Bool_tfBookEventHistograms[eEventHistograms_N] = {kTRUE}; // book or not this histogram, see SetBookEventHistograms
TStringfEventHistogramsName[eEventHistograms_N] = {""}; // name of event histogram, used both for 1D and 2D histograms
100
-
} eh; // "eh" labels an instance of group of histograms "EventHistograms"
104
+
// 2D:
105
+
// ...
106
+
// Remark: All 2D event histograms are still in the QA group. Move here only the ones I will use regularly in the analysis
107
+
} eh; // "eh" labels an instance of group of histograms "EventHistograms"
101
108
102
109
// *) Event cuts:
103
110
structEventCuts {
@@ -120,15 +127,19 @@ struct EventCuts {
120
127
121
128
// *) Particle histograms:
122
129
structParticleHistograms {
123
-
TList*fParticleHistogramsList= NULL; //!<! list to hold all control particle histograms
124
-
TProfile*fParticleHistogramsPro= NULL; //!<! keeps flags relevant for the control particle histograms
125
-
TH1D*fParticleHistograms[eParticleHistograms_N][2][2] = {{{NULL}}}; //! [ type - see enum eParticleHistograms ][reco,sim][before, after particle cuts]
126
-
Bool_tfFillParticleHistograms=kTRUE; // if kFALSE, all 1D particle histograms are not filled. if kTRUE, the ones for which fBookParticleHistograms[...] is kTRUE, are filled
127
-
Bool_tfBookParticleHistograms[eParticleHistograms_N] = {kTRUE}; // book or not the particular particle histogram, see configurable cfBookParticleHistograms
TStringfParticleHistogramsName[eParticleHistograms_N] = {""}; // name of particle histogram, used both for 1D and 2D histograms
130
+
TList*fParticleHistogramsList= NULL; //!<! list to hold all control particle histograms
131
+
TProfile*fParticleHistogramsPro= NULL; //!<! keeps flags relevant for the control particle histograms
132
+
// 1D:
133
+
TH1D*fParticleHistograms[eParticleHistograms_N][2][2] = {{{NULL}}}; //! [ type - see enum eParticleHistograms ][reco,sim][before, after particle cuts]
134
+
Bool_tfFillParticleHistograms=kTRUE; // if kFALSE, all 1D particle histograms are not filled.
135
+
// if kTRUE, the ones for which fBookParticleHistograms[...] is kTRUE, are filled
136
+
Bool_tfBookParticleHistograms[eParticleHistograms_N] = {kTRUE}; // book or not the particular particle histogram, see configurable cfBookParticleHistograms
TStringfParticleHistogramsName[eParticleHistograms_N] = {""}; // name of particle histogram, used both for 1D and 2D histograms
139
+
// 2D:
130
140
TH2D*fParticleHistograms2D[eParticleHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eParticleHistograms2D ][reco,sim][before, after particle cuts]
131
-
Bool_tfFillParticleHistograms2D=kTRUE; // if kFALSE, all 2D particle histograms are not filled. if kTRUE, the ones for which fBookParticleHistograms2D[...] is kTRUE, are filled
141
+
Bool_tfFillParticleHistograms2D=kTRUE; // if kFALSE, all 2D particle histograms are not filled.
142
+
// if kTRUE, the ones for which fBookParticleHistograms2D[...] is kTRUE, are filled
132
143
Bool_tfBookParticleHistograms2D[eParticleHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookParticleHistograms2D
133
144
Double_tfParticleHistogramsBins2D[eParticleHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
134
145
TStringfParticleHistogramsName2D[eParticleHistograms2D_N] = {""}; // name of particle histogram 2D, determined programatically from two 1D
0 commit comments