Skip to content

Commit ce35324

Browse files
EloviyoShirajum Monira
andauthored
[PWGCF] FemtoUniverse V0Cascade task -- combined v0-cascade dataset & v0-cascade correlation task (#11772)
Co-authored-by: Shirajum Monira <shirajum.monira@cernch>
1 parent e4dd716 commit ce35324

File tree

6 files changed

+385
-12
lines changed

6 files changed

+385
-12
lines changed

PWGCF/FemtoUniverse/Core/FemtoUniverseContainer.h

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,21 @@
2020
#ifndef PWGCF_FEMTOUNIVERSE_CORE_FEMTOUNIVERSECONTAINER_H_
2121
#define PWGCF_FEMTOUNIVERSE_CORE_FEMTOUNIVERSECONTAINER_H_
2222

23-
#include <fairlogger/Logger.h>
24-
#include <vector>
25-
#include <string>
23+
#include "PWGCF/FemtoUniverse/Core/FemtoUniverseMath.h"
24+
#include "PWGCF/FemtoUniverse/DataModel/FemtoDerived.h"
2625

27-
#include "Framework/HistogramRegistry.h"
2826
#include "Common/Core/RecoDecay.h"
29-
#include "PWGCF/FemtoUniverse/Core/FemtoUniverseMath.h"
27+
28+
#include "Framework/HistogramRegistry.h"
3029

3130
#include "Math/Vector4D.h"
32-
#include "TMath.h"
3331
#include "TDatabasePDG.h"
32+
#include "TMath.h"
33+
34+
#include <fairlogger/Logger.h>
35+
36+
#include <string>
37+
#include <vector>
3438

3539
using namespace o2::framework;
3640

PWGCF/FemtoUniverse/Core/FemtoUniversePairCleaner.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,23 @@ class FemtoUniversePairCleaner
131131
return false;
132132
}
133133
return part1.globalIndex() != part2.globalIndex();
134+
} else if constexpr (kPartOneType == o2::aod::femtouniverseparticle::ParticleType::kV0 && kPartTwoType == o2::aod::femtouniverseparticle::ParticleType::kCascade) {
135+
/// V0-Cascade combination where part1 is a V0 and part2 is a cascade
136+
if (part1.partType() != o2::aod::femtouniverseparticle::ParticleType::kV0 || part2.partType() != o2::aod::femtouniverseparticle::ParticleType::kCascade) {
137+
LOG(fatal) << "FemtoUniversePairCleaner: passed arguments don't agree with FemtoUniversePairCleaner instantiation! Please provide first argument kV0 candidate and second argument kCascade candidate.";
138+
return false;
139+
}
140+
// part1 v0 children
141+
const auto& posChild1 = particles.iteratorAt(part1.index() - 2);
142+
const auto& negChild1 = particles.iteratorAt(part1.index() - 1);
143+
// part2 cascade children
144+
const auto& posChild2 = particles.iteratorAt(part2.index() - 3);
145+
const auto& negChild2 = particles.iteratorAt(part2.index() - 2);
146+
const auto& bachelor2 = particles.iteratorAt(part2.index() - 1);
147+
if (posChild1.globalIndex() == posChild2.globalIndex() || negChild1.globalIndex() == negChild2.globalIndex() || posChild1.globalIndex() == bachelor2.globalIndex() || negChild1.globalIndex() == bachelor2.globalIndex()) {
148+
return false;
149+
}
150+
return part1.globalIndex() != part2.globalIndex();
134151
} else if constexpr (kPartOneType == o2::aod::femtouniverseparticle::ParticleType::kTrack && kPartTwoType == o2::aod::femtouniverseparticle::ParticleType::kD0) {
135152
/// Track-D0 combination part1 is hadron and part2 is D0
136153
if (part2.partType() != o2::aod::femtouniverseparticle::ParticleType::kD0) {

PWGCF/FemtoUniverse/TableProducer/femtoUniverseProducerTask.cxx

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1907,9 +1907,6 @@ struct FemtoUniverseProducerTask {
19071907
fillPhi<isMC>(col, tracks);
19081908
}
19091909
}
1910-
// if (confIsActivateCascade) {
1911-
// fillCascade<false>(col, fullCascades, tracks);
1912-
// }
19131910
}
19141911

19151912
void processFullData(aod::FemtoFullCollision const& col,
@@ -1952,6 +1949,26 @@ struct FemtoUniverseProducerTask {
19521949
}
19531950
PROCESS_SWITCH(FemtoUniverseProducerTask, processTrackCascadeData, "Provide experimental data for track cascades", false);
19541951

1952+
void processTrackV0Cascade(aod::FemtoFullCollision const& col,
1953+
aod::BCsWithTimestamps const&,
1954+
soa::Filtered<aod::FemtoFullTracks> const& tracks,
1955+
o2::aod::V0Datas const& fullV0s,
1956+
o2::aod::CascDatas const& fullCascades)
1957+
{
1958+
getMagneticFieldTesla(col.bc_as<aod::BCsWithTimestamps>());
1959+
const auto colcheck = fillCollisions<false>(col, tracks);
1960+
if (colcheck) {
1961+
fillTracks<false>(tracks);
1962+
if (confIsActivateV0) {
1963+
fillV0<false>(col, fullV0s, tracks);
1964+
}
1965+
if (confIsActivateCascade) {
1966+
fillCascade<false>(col, fullCascades, tracks);
1967+
}
1968+
}
1969+
}
1970+
PROCESS_SWITCH(FemtoUniverseProducerTask, processTrackV0Cascade, "Provide experimental data for track, v0 and cascades", false);
1971+
19551972
/*void processTrackV0CentRun3(aod::FemtoFullCollisionCentRun3 const& col,
19561973
aod::BCsWithTimestamps const&,
19571974
soa::Filtered<aod::FemtoFullTracks> const& tracks,

PWGCF/FemtoUniverse/Tasks/CMakeLists.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,11 @@ o2physics_add_dpl_workflow(femtouniverse-pair-track-cascade-extended
5959
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore
6060
COMPONENT_NAME Analysis)
6161

62+
o2physics_add_dpl_workflow(femtouniverse-pair-v0-cascade-extended
63+
SOURCES femtoUniversePairTaskV0CascadeExtended.cxx
64+
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore
65+
COMPONENT_NAME Analysis)
66+
6267
o2physics_add_dpl_workflow(femtouniverse-pair-track-d0
6368
SOURCES femtoUniversePairTaskTrackD0.cxx
6469
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore
@@ -97,4 +102,4 @@ o2physics_add_dpl_workflow(femtouniverse-efficiency-base
97102
o2physics_add_executable(femtouniverse-cutculator
98103
SOURCES femtoUniverseCutCulator.cxx
99104
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore
100-
COMPONENT_NAME Analysis)
105+
COMPONENT_NAME Analysis)

PWGCF/FemtoUniverse/Tasks/femtoUniversePairTaskTrackCascadeExtended.cxx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ struct femtoUniversePairTaskTrackCascadeExtended {
6464
// configurations for correlation part
6565
Configurable<int> confTrackChoicePartOne{"confTrackChoicePartOne", 0, "0:Proton, 1:Pion, 2:Kaon"};
6666
Configurable<int> confTrkPDGCodePartOne{"confTrkPDGCodePartOne", 2212, "Particle 1 (Track) - PDG code"};
67-
Configurable<int> confCascType1{"confCascType1", 0, "select one of the V0s (Omega = 0, Xi = 1, anti-Omega = 2, anti-Xi = 3) for track-cascade combination"};
68-
Configurable<int> confCascType2{"confCascType2", 0, "select one of the V0s (Omega = 0, Xi = 1, anti-Omega = 2, anti-Xi = 3) for cascade-cascade combination"};
67+
Configurable<int> confCascType1{"confCascType1", 0, "select one of the Cascades (Omega = 0, Xi = 1, anti-Omega = 2, anti-Xi = 3) for track-cascade combination"};
68+
Configurable<int> confCascType2{"confCascType2", 0, "select one of the Cascades (Omega = 0, Xi = 1, anti-Omega = 2, anti-Xi = 3) for cascade-cascade combination"};
6969
Configurable<bool> confIsCPR{"confIsCPR", false, "Close Pair Rejection"};
7070
Configurable<float> confCPRdeltaPhiCutMax{"confCPRdeltaPhiCutMax", 0.0, "Delta Phi max cut for Close Pair Rejection"};
7171
Configurable<float> confCPRdeltaPhiCutMin{"confCPRdeltaPhiCutMin", 0.0, "Delta Phi min cut for Close Pair Rejection"};
@@ -285,6 +285,7 @@ struct femtoUniversePairTaskTrackCascadeExtended {
285285
sameEventCont.init(&resultRegistry, confkstarBins, confMultBins, confkTBins, confmTBins, confMultBins3D, confmTBins3D, confEtaBins, confPhiBins, confIsMC, confUse3D);
286286
mixedEventCont.init(&resultRegistry, confkstarBins, confMultBins, confkTBins, confmTBins, confMultBins3D, confmTBins3D, confEtaBins, confPhiBins, confIsMC, confUse3D);
287287
pairCleaner.init(&qaRegistry);
288+
pairCleanerCasc.init(&qaRegistry);
288289
if (confIsCPR.value) {
289290
pairCloseRejection.init(&resultRegistry, &qaRegistry, confCPRdeltaPhiCutMin.value, confCPRdeltaPhiCutMax.value, confCPRdeltaEtaCutMin.value, confCPRdeltaEtaCutMax.value, confCPRChosenRadii.value, confCPRPlotPerRadii.value, 0, 0, confIsSameSignCPR.value);
290291
}

0 commit comments

Comments
 (0)