Skip to content

Commit 7a3ec1e

Browse files
Merge branch 'AliceO2Group:master' into master
2 parents 5c037c1 + b330ad1 commit 7a3ec1e

File tree

172 files changed

+12473
-4968
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

172 files changed

+12473
-4968
lines changed

ALICE3/TableProducer/alice3-multicharmTable.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -723,7 +723,7 @@ struct alice3multicharmTable {
723723
histos.fill(HIST("hDCAxyXiCC"), std::fabs(xiccdcaXY * 1e+4));
724724
histos.fill(HIST("hDCAzXiCC"), std::fabs(xiccdcaZ * 1e+4));
725725

726-
if (std::fabs(thisXiCcandidate.eta) > xiccMaxEta)
726+
if (std::fabs(thisXiCCcandidate.eta) > xiccMaxEta)
727727
continue; // not in central barrel
728728

729729
histos.fill(HIST("hCharmBuilding"), 3.0f);

Common/CCDB/ctpRateFetcher.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ void ctpRateFetcher::setupRun(int runNumber, o2::ccdb::BasicCCDBManager* ccdb, u
109109
delete mScalers;
110110
delete mLHCIFdata;
111111
}
112-
std::map<string, string> metadata;
112+
std::map<std::string, std::string> metadata;
113113
mLHCIFdata = ccdb->getSpecific<parameters::GRPLHCIFData>("GLO/Config/GRPLHCIF", timeStamp, metadata);
114114
if (mLHCIFdata == nullptr) {
115115
LOG(fatal) << "GRPLHCIFData not in database, timestamp:" << timeStamp;

Common/TableProducer/eventSelection.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1286,7 +1286,7 @@ struct LumiTask {
12861286
LOGP(warn, "Cross section for z={} + z={} @ {} GeV is not defined", beamZ1, beamZ2, sqrts);
12871287
}
12881288
// getting CTP config to extract lumi class indices (used for rate fetching and pileup correction)
1289-
std::map<string, string> metadata;
1289+
std::map<std::string, std::string> metadata;
12901290
metadata["runNumber"] = std::to_string(run);
12911291
auto config = ccdb->getSpecific<o2::ctp::CTPConfiguration>("CTP/Config/Config", ts, metadata);
12921292
auto classes = config->getCTPClasses();

Common/TableProducer/multiplicityExtraTable.cxx

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ struct MultiplicityExtraTable {
3636
Produces<aod::Mults2BC> mult2bc;
3737
Produces<aod::BC2Mults> bc2mult;
3838

39+
// auxiliary for MC
40+
Produces<aod::MultHepMCHIs> multHepMCHIs;
41+
3942
// Allow for downscaling of BC table for less space use in derived data
4043
Configurable<float> bcDownscaleFactor{"bcDownscaleFactor", 2, "Downscale factor for BC table (0: save nothing, 1: save all)"};
4144
Configurable<float> minFT0CforBCTable{"minFT0CforBCTable", 25.0f, "Minimum FT0C amplitude to fill BC table to reduce data"};
@@ -277,9 +280,22 @@ struct MultiplicityExtraTable {
277280
}
278281
}
279282

283+
void processHepMCHeavyIons(aod::HepMCHeavyIons const& hepmchis)
284+
{
285+
for (auto const& hepmchi : hepmchis) {
286+
multHepMCHIs(hepmchi.mcCollisionId(),
287+
hepmchi.ncollHard(),
288+
hepmchi.npartProj(),
289+
hepmchi.npartTarg(),
290+
hepmchi.ncoll(),
291+
hepmchi.impactParameter());
292+
}
293+
}
294+
280295
// Process switches
281296
PROCESS_SWITCH(MultiplicityExtraTable, processBCs, "Produce BC tables", true);
282297
PROCESS_SWITCH(MultiplicityExtraTable, processCollisionNeighbors, "Produce neighbor timing tables", true);
298+
PROCESS_SWITCH(MultiplicityExtraTable, processHepMCHeavyIons, "Produce MultHepMCHIs tables", false);
283299
};
284300

285301
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)

Common/TableProducer/qVectorsTable.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ struct qVectorsTable {
154154
Produces<aod::QvectorBTotVecs> qVectorBTotVec;
155155
/////////////////////////////////////////////////////////////////
156156

157-
std::unordered_map<string, bool> useDetector = {
157+
std::unordered_map<std::string, bool> useDetector = {
158158
{"QvectorBTots", cfgUseBTot},
159159
{"QvectorBNegs", cfgUseBNeg},
160160
{"QvectorBPoss", cfgUseBPos},

Common/Tasks/qVectorsCorrection.cxx

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,15 @@ struct qVectorsCorrection {
6868
Configurable<std::string> cfgRefBName{"cfgRefBName", "TPCneg", "The name of detector for reference B"};
6969
Configurable<bool> cfgAddEvtSel{"cfgAddEvtSel", true, "event selection"};
7070

71+
Configurable<int> cfgEvtSel{"cfgEvtSel", 0, "Event selection flags\n0: Sel8\n1: Sel8+kIsGoodZvtxFT0vsPV+kNoSameBunchPileup\n2: Sel8+kIsGoodZvtxFT0vsPV+kNoSameBunchPileup+kNoCollInTimeRangeStandard\n3: Sel8+kNoSameBunchPileup"};
72+
7173
Configurable<int> cfgnTotalSystem{"cfgnTotalSystem", 7, "total qvector number"};
7274
Configurable<int> cfgNbinsEP{"cfgNbinsEP", 360, "nbins for EP histograms"};
7375

7476
Configurable<bool> cfgQAAll{"cfgQAAll", false, "draw all q-vector steps"};
7577
Configurable<bool> cfgQAFinal{"cfgQAFinal", false, "draw final q-vector steps"};
7678
Configurable<bool> cfgQAFlowStudy{"cfgQAFlowStudy", false, "configurable for flow study"};
7779
Configurable<bool> cfgQAOccupancyStudy{"cfgQAOccupancyStudy", false, "configurable for occupancy study"};
78-
Configurable<bool> cfgAddEvtSelPileup{"cfgAddEvtSelPileup", false, "configurable for pileup selection"};
7980

8081
Configurable<float> cfgMinPt{"cfgMinPt", 0.15, "Minimum transverse momentum for charged track"};
8182
Configurable<float> cfgMaxEta{"cfgMaxEta", 0.8, "Maximum pseudorapidiy for charged track"};
@@ -541,16 +542,31 @@ struct qVectorsCorrection {
541542
void process(MyCollisions::iterator const& qVec, MyTracks const& tracks)
542543
{
543544
histosQA.fill(HIST("histCentFull"), qVec.cent());
544-
if (cfgAddEvtSel && (!qVec.sel8() ||
545-
!qVec.selection_bit(aod::evsel::kIsGoodZvtxFT0vsPV) ||
546-
!qVec.selection_bit(aod::evsel::kNoSameBunchPileup))) {
547-
return;
548-
}
549-
if (cfgAddEvtSel && (qVec.trackOccupancyInTimeRange() > cfgMaxOccupancy || qVec.trackOccupancyInTimeRange() < cfgMinOccupancy)) {
550-
return;
551-
}
552-
if (cfgAddEvtSelPileup && !qVec.selection_bit(o2::aod::evsel::kNoCollInTimeRangeStandard)) {
553-
return;
545+
if (cfgAddEvtSel) {
546+
switch (cfgEvtSel) {
547+
case 0: // Sel8
548+
if (!qVec.sel8())
549+
return;
550+
break;
551+
case 1: // PbPb standard
552+
if (!qVec.sel8() || !qVec.selection_bit(aod::evsel::kIsGoodZvtxFT0vsPV) || !qVec.selection_bit(aod::evsel::kNoSameBunchPileup))
553+
return;
554+
break;
555+
case 2: // PbPb with pileup
556+
if (!qVec.sel8() || !qVec.selection_bit(o2::aod::evsel::kNoCollInTimeRangeStandard) ||
557+
!qVec.selection_bit(aod::evsel::kIsGoodZvtxFT0vsPV) || !qVec.selection_bit(aod::evsel::kNoSameBunchPileup))
558+
return;
559+
break;
560+
case 3: // Small systems (OO, NeNe, pp)
561+
if (!qVec.sel8() || !qVec.selection_bit(aod::evsel::kNoSameBunchPileup))
562+
return;
563+
break;
564+
default:
565+
LOGF(warning, "Event selection flag was not found, continuing without basic event selections!\n");
566+
}
567+
// Check occupancy
568+
if (qVec.trackOccupancyInTimeRange() > cfgMaxOccupancy || qVec.trackOccupancyInTimeRange() < cfgMinOccupancy)
569+
return;
554570
}
555571

556572
for (uint i = 0; i < cfgnMods->size(); i++) {

0 commit comments

Comments
 (0)