Skip to content

Commit a5dbf23

Browse files
committed
Add independent Lambda event switches and cap mixed-event combinations
1 parent d67e1e0 commit a5dbf23

1 file changed

Lines changed: 15 additions & 24 deletions

File tree

‎PWGCF/TwoParticleCorrelations/Tasks/lambdaOrAntiLambdaProducerWithSpin.cxx‎

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1520,6 +1520,7 @@ struct LambdaAntiLambdaPairAnalysis {
15201520

15211521
// Mixed-Event Compatablity variables
15221522
Configurable<float> mixedEventMaxDeltaMultiplicity{"mixedEventMaxDeltaMultiplicity", 10.f, "Maximum multiplicity difference between mixed events"};
1523+
Configurable<int> maxMixedEvents{"maxMixedEvents", 200, "Maximum accepted mixed collision combinations per dataframe"};
15231524

15241525
// Short-range pairs
15251526
Configurable<float> sameEventShortRangePairMaxDeltaRapidity{"sameEventShortRangePairMaxDeltaRapidity", 0.5f, "ShortRangePai Maximum absolute rapidity difference for same-event pairs"};
@@ -2258,7 +2259,7 @@ struct LambdaAntiLambdaPairAnalysis {
22582259
Preslice<FilteredLambdas> lambdasPerCollision = aod::lambdahyperon::collisionId;
22592260
Preslice<FilteredAntiLambdas> antiLambdasPerCollision = aod::lambdahyperon::collisionId;
22602261

2261-
void processData(CollisionsWithMultiplicity const& collisions, FilteredLambdas const& lambdas, FilteredAntiLambdas const& antiLambdas)
2262+
void processSameEventData(CollisionsWithMultiplicity const& collisions, FilteredLambdas const& lambdas, FilteredAntiLambdas const& antiLambdas)
22622263
{
22632264
static constexpr int MinimumSameSpeciesCandidates = 2;
22642265

@@ -2282,15 +2283,20 @@ struct LambdaAntiLambdaPairAnalysis {
22822283
fillAntiLambdaAntiLambdaSameEvent(antiLambdasThisCollision);
22832284
}
22842285
}
2286+
}
22852287

2286-
// ============================================================
2287-
// Mixed events
2288-
// ============================================================
2288+
void processMixedEventData(CollisionsWithMultiplicity const& collisions, FilteredLambdas const& lambdas, FilteredAntiLambdas const& antiLambdas)
2289+
{
2290+
int mixedEventCounter = 0;
22892291

22902292
for (auto const& [collision1, collision2] : combinations(CombinationsStrictlyUpperIndexPolicy(collisions, collisions))) {
22912293

22922294
const float deltaMultiplicity = std::abs(static_cast<float>(collision1.multNTracksPV()) - static_cast<float>(collision2.multNTracksPV()));
22932295

2296+
if (mixedEventCounter >= maxMixedEvents) {
2297+
break;
2298+
}
2299+
22942300
if (deltaMultiplicity > mixedEventMaxDeltaMultiplicity) {
22952301
continue;
22962302
}
@@ -2316,33 +2322,18 @@ struct LambdaAntiLambdaPairAnalysis {
23162322
if (antiLambdas1.size() > 0 && antiLambdas2.size() > 0) {
23172323
fillAntiLambdaAntiLambdaMixedEvent(antiLambdas1, antiLambdas2);
23182324
}
2325+
2326+
++mixedEventCounter;
23192327
}
23202328
}
2329+
23212330
void processDummy(aod::Collisions const&) {}
23222331

2323-
PROCESS_SWITCH(LambdaAntiLambdaPairAnalysis, processData, "Run candidate production", true);
2332+
PROCESS_SWITCH(LambdaAntiLambdaPairAnalysis, processSameEventData, "Run same-event pair analysis", true);
2333+
PROCESS_SWITCH(LambdaAntiLambdaPairAnalysis, processMixedEventData, "Run mixed-event pair analysis", false);
23242334
PROCESS_SWITCH(LambdaAntiLambdaPairAnalysis, processDummy, "Skip candidate production", false);
23252335
};
23262336

2327-
/*WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
2328-
{
2329-
const bool isMC = cfgc.options().get<bool>("isMC");
2330-
2331-
WorkflowSpec workflow;
2332-
2333-
if (isMC) {
2334-
workflow.push_back(adaptAnalysisTask<LambdaAntiLambdaMcRecoTableProducer>(cfgc));
2335-
workflow.push_back(adaptAnalysisTask<LambdaAntiLambdaEfficiencyPlots>(cfgc));
2336-
workflow.push_back(adaptAnalysisTask<LambdaAntiLambdaSelectionCutFlow>(cfgc));
2337-
} else {
2338-
workflow.push_back(adaptAnalysisTask<LambdaOrAntiLambdaProducerWithSpin>(cfgc));
2339-
workflow.push_back(adaptAnalysisTask<LambdaAntiLambdaSelector>(cfgc));
2340-
workflow.push_back(adaptAnalysisTask<LambdaAntiLambdaPairAnalysis>(cfgc));
2341-
}
2342-
2343-
return workflow;
2344-
}*/
2345-
23462337
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
23472338
{
23482339
return WorkflowSpec{

0 commit comments

Comments
 (0)