Skip to content

Commit 206a1fc

Browse files
authored
PWGCF: fixed QA flags (#7962)
* fixed QA flags * fix for formatter 1 * pulling back central updates
1 parent 1a6d4bd commit 206a1fc

4 files changed

Lines changed: 201 additions & 130 deletions

File tree

PWGCF/MultiparticleCorrelations/Core/MuPa-Configurables.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ struct : ConfigurableGroup {
3838
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"};
3939
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"};
4040
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"};
4242
} cf_qa;
4343

4444
// *) Event histograms:

PWGCF/MultiparticleCorrelations/Core/MuPa-DataMembers.h

Lines changed: 35 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -69,35 +69,42 @@ struct EventByEventQuantities {
6969
} ebye; // "ebye" is a common label for objects in this struct
7070

7171
// *) 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)
7374
struct QualityAssurance {
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_t fCheckUnderflowAndOverflow = 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_t fFillQAEventHistograms2D = kTRUE; // if kFALSE, all 2D event histograms are not filled. if kTRUE, the ones for which fBookQAEventHistograms2D[...] is kTRUE, are filled
79-
Bool_t fBookQAEventHistograms2D[eQAEventHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAEventHistograms2D
80-
Double_t fEventHistogramsBins2D[eQAEventHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
81-
TString fEventHistogramsName2D[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_t fCheckUnderflowAndOverflow = 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_t fFillQAEventHistograms2D = kTRUE; // if kFALSE, all 2D event histograms are not filled. if kTRUE, the ones for which fBookQAEventHistograms2D[...] is kTRUE, are filled
80+
Bool_t fBookQAEventHistograms2D[eQAEventHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAEventHistograms2D
81+
Double_t fEventHistogramsBins2D[eQAEventHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
82+
TString fEventHistogramsName2D[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]
8385
Bool_t fFillQAParticleHistograms2D = kTRUE; // if kFALSE, all 2D particle histograms are not filled. if kTRUE, the ones for which fBookQAParticleHistograms2D[...] is kTRUE, are filled
8486
Bool_t fBookQAParticleHistograms2D[eQAParticleHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookQAParticleHistograms2D
8587
Double_t fParticleHistogramsBins2D[eQAParticleHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
8688
TString fParticleHistogramsName2D[eQAParticleHistograms2D_N] = {""}; // name of fQAParticleHistograms2D, determined programatically from other 1D names, to ease bookkeeping
87-
Double_t fCentrality[eCentralityEstimators_N] = {0.}; // used mostly in QA correlation plots
88-
TString fCentralityEstimatorName[eCentralityEstimators_N] = {""}; //
89-
} 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_t fCentrality[eCentralityEstimators_N] = {0.}; // used mostly in QA correlation plots
91+
TString fCentralityEstimatorName[eCentralityEstimators_N] = {""}; //
92+
} qa; // "qa" is a common label for objects in this struct
9093

9194
// *) Event histograms:
9295
struct EventHistograms {
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:
9599
TH1D* fEventHistograms[eEventHistograms_N][2][2] = {{{NULL}}}; //! [ type - see enum eEventHistograms ][reco,sim][before, after event cuts]
96100
Bool_t fFillEventHistograms = kTRUE; // if kFALSE, all event histograms are not filled. if kTRUE, the ones for which fBookEventHistograms[...] is kTRUE, are filled
97101
Bool_t fBookEventHistograms[eEventHistograms_N] = {kTRUE}; // book or not this histogram, see SetBookEventHistograms
98102
Double_t fEventHistogramsBins[eEventHistograms_N][3] = {{0.}}; // [nBins,min,max]
99103
TString fEventHistogramsName[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"
101108

102109
// *) Event cuts:
103110
struct EventCuts {
@@ -120,15 +127,19 @@ struct EventCuts {
120127

121128
// *) Particle histograms:
122129
struct ParticleHistograms {
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_t fFillParticleHistograms = kTRUE; // if kFALSE, all 1D particle histograms are not filled. if kTRUE, the ones for which fBookParticleHistograms[...] is kTRUE, are filled
127-
Bool_t fBookParticleHistograms[eParticleHistograms_N] = {kTRUE}; // book or not the particular particle histogram, see configurable cfBookParticleHistograms
128-
Double_t fParticleHistogramsBins[eParticleHistograms_N][3] = {{0.}}; // [nBins,min,max]
129-
TString fParticleHistogramsName[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_t fFillParticleHistograms = kTRUE; // if kFALSE, all 1D particle histograms are not filled.
135+
// if kTRUE, the ones for which fBookParticleHistograms[...] is kTRUE, are filled
136+
Bool_t fBookParticleHistograms[eParticleHistograms_N] = {kTRUE}; // book or not the particular particle histogram, see configurable cfBookParticleHistograms
137+
Double_t fParticleHistogramsBins[eParticleHistograms_N][3] = {{0.}}; // [nBins,min,max]
138+
TString fParticleHistogramsName[eParticleHistograms_N] = {""}; // name of particle histogram, used both for 1D and 2D histograms
139+
// 2D:
130140
TH2D* fParticleHistograms2D[eParticleHistograms2D_N][2][2] = {{{NULL}}}; //! [ type - see enum eParticleHistograms2D ][reco,sim][before, after particle cuts]
131-
Bool_t fFillParticleHistograms2D = kTRUE; // if kFALSE, all 2D particle histograms are not filled. if kTRUE, the ones for which fBookParticleHistograms2D[...] is kTRUE, are filled
141+
Bool_t fFillParticleHistograms2D = kTRUE; // if kFALSE, all 2D particle histograms are not filled.
142+
// if kTRUE, the ones for which fBookParticleHistograms2D[...] is kTRUE, are filled
132143
Bool_t fBookParticleHistograms2D[eParticleHistograms2D_N] = {kTRUE}; // book or not this 2D histogram, see configurable cfBookParticleHistograms2D
133144
Double_t fParticleHistogramsBins2D[eParticleHistograms2D_N][2][3] = {{{0.}}}; // [type - see enum][x,y][nBins,min,max]
134145
TString fParticleHistogramsName2D[eParticleHistograms2D_N] = {""}; // name of particle histogram 2D, determined programatically from two 1D

PWGCF/MultiparticleCorrelations/Core/MuPa-Enums.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ enum eQAEventHistograms2D {
233233
};
234234

235235
enum eQAParticleHistograms2D {
236-
edcaXY_vs_Pt,
236+
ePt_vs_dcaXY,
237237
eQAParticleHistograms2D_N
238238
};
239239

0 commit comments

Comments
 (0)