Skip to content

Commit 26812eb

Browse files
prottayCMTProttay Das
andauthored
[PWGLF] added configurable axis and configurables to switch between different type of histograms (#8314)
Co-authored-by: Prottay Das <prottay@alipap1.cern.ch>
1 parent 85d0309 commit 26812eb

File tree

1 file changed

+71
-31
lines changed

1 file changed

+71
-31
lines changed

PWGLF/Tasks/Strangeness/lambdapolsp.cxx

Lines changed: 71 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ struct lambdapolsp {
7878
Configurable<bool> mycut{"mycut", false, "select tracks based on my cuts"};
7979
Configurable<bool> tofhit{"tofhit", true, "select tracks based on tof hit"};
8080
Configurable<bool> globalpt{"globalpt", true, "select tracks based on pt global vs tpc"};
81+
Configurable<int> useprofile{"useprofile", 3, "flag to select profile vs Sparse"};
8182
Configurable<int> QxyNbins{"QxyNbins", 100, "Number of bins in QxQy histograms"};
8283
Configurable<float> lbinQxy{"lbinQxy", -5.0, "lower bin value in QxQy histograms"};
8384
Configurable<float> hbinQxy{"hbinQxy", 5.0, "higher bin value in QxQy histograms"};
@@ -133,6 +134,16 @@ struct lambdapolsp {
133134
Configurable<int> ptNbins{"ptNbins", 50, "Number of bins in pt"};
134135
Configurable<float> lbinpt{"lbinpt", 0.0, "lower bin value in pt histograms"};
135136
Configurable<float> hbinpt{"hbinpt", 10.0, "higher bin value in pt histograms"};
137+
Configurable<int> etaNbins{"etaNbins", 20, "Number of bins in eta"};
138+
Configurable<float> lbineta{"lbineta", -1.0, "lower bin value in eta histograms"};
139+
Configurable<float> hbineta{"hbineta", 1.0, "higher bin value in eta histograms"};
140+
Configurable<int> spNbins{"spNbins", 2000, "Number of bins in sp"};
141+
Configurable<float> lbinsp{"lbinsp", -1.0, "lower bin value in sp histograms"};
142+
Configurable<float> hbinsp{"hbinsp", 1.0, "higher bin value in sp histograms"};
143+
144+
ConfigurableAxis configcentAxis{"configcentAxis", {VARIABLE_WIDTH, 0.0, 10.0, 40.0, 80.0}, "Cent V0M"};
145+
ConfigurableAxis configthnAxispT{"configthnAxisPt", {VARIABLE_WIDTH, 0.2, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 4.0, 5.0, 6.5, 8.0, 10.0, 100.0}, "#it{p}_{T} (GeV/#it{c})"};
146+
ConfigurableAxis configetaAxis{"configetaAxis", {VARIABLE_WIDTH, -0.8, -0.4, 0, 0.4, 0.8}, "Eta"};
136147

137148
SliceCache cache;
138149
HistogramRegistry histos{"histos", {}, OutputObjHandlingPolicy::AnalysisObject};
@@ -144,24 +155,55 @@ struct lambdapolsp {
144155
AxisSpec thnAxisPol{PolNbins, lbinPol, hbinPol, "Sin(#phi - #psi)"};
145156
AxisSpec thnAxisCosThetaStar{SANbins, lbinSA, hbinSA, "SA"};
146157
AxisSpec centAxis = {CentNbins, lbinCent, hbinCent, "V0M (%)"};
147-
AxisSpec etaAxis = {20, -1.0, 1.0, "Eta"};
148-
AxisSpec ptAxis = {200, 0.0, 20.0, "Pt"};
158+
AxisSpec etaAxis = {etaNbins, lbineta, hbineta, "Eta"};
159+
// AxisSpec ptAxis = {200, 0.0, 20.0, "Pt"};
160+
AxisSpec spAxis = {spNbins, lbinsp, hbinsp, "Sp"};
149161
AxisSpec qxZDCAxis = {QxyNbins, lbinQxy, hbinQxy, "Qx"};
150162

151163
if (checkwithpub) {
152-
histos.add("hpuxQxpvscentpteta", "hpuxQxpvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
153-
histos.add("hpuyQypvscentpteta", "hpuyQypvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
154-
histos.add("hpuxQxtvscentpteta", "hpuxQxtvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
155-
histos.add("hpuyQytvscentpteta", "hpuyQytvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
156-
histos.add("hpuxyQxytvscentpteta", "hpuxyQxytvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
157-
histos.add("hpuxyQxypvscentpteta", "hpuxyQxypvscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
158-
histos.add("hpoddv1vscentpteta", "hpoddv1vscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
159-
histos.add("hpevenv1vscentpteta", "hpevenv1vscentpteta", kTProfile3D, {centAxis, ptAxis, etaAxis}, true);
160-
histos.add("hpQxtQxpvscent", "hpQxtQxpvscent", kTProfile, {centAxis}, true);
161-
histos.add("hpQytQypvscent", "hpQytQypvscent", kTProfile, {centAxis}, true);
162-
histos.add("hpQxytpvscent", "hpQxytpvscent", kTProfile, {centAxis}, true);
163-
histos.add("hpQxtQypvscent", "hpQxtQypvscent", kTProfile, {centAxis}, true);
164-
histos.add("hpQxpQytvscent", "hpQxpQytvscent", kTProfile, {centAxis}, true);
164+
if (useprofile == 1) {
165+
histos.add("hpuxQxpvscentpteta", "hpuxQxpvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
166+
histos.add("hpuyQypvscentpteta", "hpuyQypvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
167+
histos.add("hpuxQxtvscentpteta", "hpuxQxtvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
168+
histos.add("hpuyQytvscentpteta", "hpuyQytvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
169+
histos.add("hpuxyQxytvscentpteta", "hpuxyQxytvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
170+
histos.add("hpuxyQxypvscentpteta", "hpuxyQxypvscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
171+
histos.add("hpoddv1vscentpteta", "hpoddv1vscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
172+
histos.add("hpevenv1vscentpteta", "hpevenv1vscentpteta", kTProfile3D, {centAxis, thnAxispT, etaAxis}, true);
173+
histos.add("hpQxtQxpvscent", "hpQxtQxpvscent", kTProfile, {centAxis}, true);
174+
histos.add("hpQytQypvscent", "hpQytQypvscent", kTProfile, {centAxis}, true);
175+
histos.add("hpQxytpvscent", "hpQxytpvscent", kTProfile, {centAxis}, true);
176+
histos.add("hpQxtQypvscent", "hpQxtQypvscent", kTProfile, {centAxis}, true);
177+
histos.add("hpQxpQytvscent", "hpQxpQytvscent", kTProfile, {centAxis}, true);
178+
} else if (useprofile == 2) {
179+
histos.add("hpuxQxpvscentpteta", "hpuxQxpvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
180+
histos.add("hpuyQypvscentpteta", "hpuyQypvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
181+
histos.add("hpuxQxtvscentpteta", "hpuxQxtvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
182+
histos.add("hpuyQytvscentpteta", "hpuyQytvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
183+
histos.add("hpuxyQxytvscentpteta", "hpuxyQxytvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
184+
histos.add("hpuxyQxypvscentpteta", "hpuxyQxypvscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
185+
histos.add("hpoddv1vscentpteta", "hpoddv1vscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
186+
histos.add("hpevenv1vscentpteta", "hpevenv1vscentpteta", HistType::kTHnSparseF, {centAxis, thnAxispT, etaAxis, spAxis}, true);
187+
histos.add("hpQxtQxpvscent", "hpQxtQxpvscent", HistType::kTHnSparseF, {centAxis, spAxis}, true);
188+
histos.add("hpQytQypvscent", "hpQytQypvscent", HistType::kTHnSparseF, {centAxis, spAxis}, true);
189+
histos.add("hpQxytpvscent", "hpQxytpvscent", HistType::kTHnSparseF, {centAxis, spAxis}, true);
190+
histos.add("hpQxtQypvscent", "hpQxtQypvscent", HistType::kTHnSparseF, {centAxis, spAxis}, true);
191+
histos.add("hpQxpQytvscent", "hpQxpQytvscent", HistType::kTHnSparseF, {centAxis, spAxis}, true);
192+
} else {
193+
histos.add("hpuxQxpvscentpteta", "hpuxQxpvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
194+
histos.add("hpuyQypvscentpteta", "hpuyQypvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
195+
histos.add("hpuxQxtvscentpteta", "hpuxQxtvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
196+
histos.add("hpuyQytvscentpteta", "hpuyQytvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
197+
histos.add("hpuxyQxytvscentpteta", "hpuxyQxytvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
198+
histos.add("hpuxyQxypvscentpteta", "hpuxyQxypvscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
199+
histos.add("hpoddv1vscentpteta", "hpoddv1vscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
200+
histos.add("hpevenv1vscentpteta", "hpevenv1vscentpteta", HistType::kTHnSparseF, {configcentAxis, configthnAxispT, configetaAxis, spAxis}, true);
201+
histos.add("hpQxtQxpvscent", "hpQxtQxpvscent", HistType::kTHnSparseF, {configcentAxis, spAxis}, true);
202+
histos.add("hpQytQypvscent", "hpQytQypvscent", HistType::kTHnSparseF, {configcentAxis, spAxis}, true);
203+
histos.add("hpQxytpvscent", "hpQxytpvscent", HistType::kTHnSparseF, {configcentAxis, spAxis}, true);
204+
histos.add("hpQxtQypvscent", "hpQxtQypvscent", HistType::kTHnSparseF, {configcentAxis, spAxis}, true);
205+
histos.add("hpQxpQytvscent", "hpQxpQytvscent", HistType::kTHnSparseF, {configcentAxis, spAxis}, true);
206+
}
165207
}
166208

167209
if (checkwithpubv2) {
@@ -178,23 +220,23 @@ struct lambdapolsp {
178220
histos.add("hCentrality1", "Centrality distribution1", kTH1F, {{centAxis}});
179221
histos.add("hCentrality2", "Centrality distribution2", kTH1F, {{centAxis}});
180222
histos.add("hCentrality3", "Centrality distribution3", kTH1F, {{centAxis}});
181-
histos.add("hVtxZ", "Vertex distribution in Z;Z (cm)", kTH1F, {{20, -10.0, 10.0}});
223+
182224
// histos.add("hDiff", "Diff distribution", kTH2F, {{100,0.0,10.0}, {100000, -5.0, 5.0}});
183225
// histos.add("hPhi", "Phi distribution", kTH1F, {{120, -6.28, 6.28}});
184-
histos.add("hpRes", "hpRes", kTProfile, {centAxis});
226+
185227
if (!checkwithpub) {
228+
histos.add("hVtxZ", "Vertex distribution in Z;Z (cm)", kTH1F, {{20, -10.0, 10.0}});
229+
histos.add("hpRes", "hpRes", kTProfile, {centAxis});
186230
histos.add("hpResSin", "hpResSin", kTProfile, {centAxis});
187231
histos.add("hpCosPsiA", "hpCosPsiA", kTProfile, {centAxis});
188232
histos.add("hpCosPsiC", "hpCosPsiC", kTProfile, {centAxis});
189233
histos.add("hpSinPsiA", "hpSinPsiA", kTProfile, {centAxis});
190234
histos.add("hpSinPsiC", "hpSinPsiC", kTProfile, {centAxis});
191-
}
192-
histos.add("hcentQxZDCA", "hcentQxZDCA", kTH2F, {{centAxis}, {qxZDCAxis}});
193-
histos.add("hcentQyZDCA", "hcentQyZDCA", kTH2F, {{centAxis}, {qxZDCAxis}});
194-
histos.add("hcentQxZDCC", "hcentQxZDCC", kTH2F, {{centAxis}, {qxZDCAxis}});
195-
histos.add("hcentQyZDCC", "hcentQyZDCC", kTH2F, {{centAxis}, {qxZDCAxis}});
235+
histos.add("hcentQxZDCA", "hcentQxZDCA", kTH2F, {{centAxis}, {qxZDCAxis}});
236+
histos.add("hcentQyZDCA", "hcentQyZDCA", kTH2F, {{centAxis}, {qxZDCAxis}});
237+
histos.add("hcentQxZDCC", "hcentQxZDCC", kTH2F, {{centAxis}, {qxZDCAxis}});
238+
histos.add("hcentQyZDCC", "hcentQyZDCC", kTH2F, {{centAxis}, {qxZDCAxis}});
196239

197-
if (!checkwithpub) {
198240
histos.add("hSparseLambdaPolA", "hSparseLambdaPolA", HistType::kTHnSparseF, {thnAxisInvMass, thnAxispT, thnAxisPol, centAxis}, true);
199241
histos.add("hSparseLambdaPolC", "hSparseLambdaPolC", HistType::kTHnSparseF, {thnAxisInvMass, thnAxispT, thnAxisPol, centAxis}, true);
200242
histos.add("hSparseAntiLambdaPolA", "hSparseAntiLambdaPolA", HistType::kTHnSparseF, {thnAxisInvMass, thnAxispT, thnAxisPol, centAxis}, true);
@@ -384,22 +426,20 @@ struct lambdapolsp {
384426
auto psiZDCC = collision.psiZDCC();
385427
auto psiZDCA = collision.psiZDCA();
386428

387-
// LOG(info) << "qx values in tasks" << centrality<<" "<<qxZDCA<<" "<<qxZDCC<<" "<<qyZDCA<<" "<<qyZDCC;
388-
389429
histos.fill(HIST("hCentrality"), centrality);
390-
histos.fill(HIST("hVtxZ"), collision.posZ());
391-
histos.fill(HIST("hpRes"), centrality, (TMath::Cos(GetPhiInRange(psiZDCA - psiZDCC))));
392430
if (!checkwithpub) {
431+
histos.fill(HIST("hVtxZ"), collision.posZ());
432+
histos.fill(HIST("hpRes"), centrality, (TMath::Cos(GetPhiInRange(psiZDCA - psiZDCC))));
393433
histos.fill(HIST("hpResSin"), centrality, (TMath::Sin(GetPhiInRange(psiZDCA - psiZDCC))));
394434
histos.fill(HIST("hpCosPsiA"), centrality, (TMath::Cos(GetPhiInRange(psiZDCA))));
395435
histos.fill(HIST("hpCosPsiC"), centrality, (TMath::Cos(GetPhiInRange(psiZDCC))));
396436
histos.fill(HIST("hpSinPsiA"), centrality, (TMath::Sin(GetPhiInRange(psiZDCA))));
397437
histos.fill(HIST("hpSinPsiC"), centrality, (TMath::Sin(GetPhiInRange(psiZDCC))));
438+
histos.fill(HIST("hcentQxZDCA"), centrality, qxZDCA);
439+
histos.fill(HIST("hcentQyZDCA"), centrality, qyZDCA);
440+
histos.fill(HIST("hcentQxZDCC"), centrality, qxZDCC);
441+
histos.fill(HIST("hcentQyZDCC"), centrality, qyZDCC);
398442
}
399-
histos.fill(HIST("hcentQxZDCA"), centrality, qxZDCA);
400-
histos.fill(HIST("hcentQyZDCA"), centrality, qyZDCA);
401-
histos.fill(HIST("hcentQxZDCC"), centrality, qxZDCC);
402-
histos.fill(HIST("hcentQyZDCC"), centrality, qyZDCC);
403443

404444
/*
405445
if (checkwithpubv2)

0 commit comments

Comments
 (0)