Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 6 additions & 12 deletions PWGCF/FemtoDream/TableProducer/femtoDreamProducerTaskReso.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -1301,12 +1301,10 @@ struct FemtoDreamProducerTaskReso {
const auto& bachTrackCasc = casc.template bachelor_as<TrackType>();

if (confIsActivateXi.value) {
// xiCuts.fillQA<0, aod::femtodreamparticle::ParticleType::kCascade, aod::femtodreamparticle::ParticleType::kCascadeV0Child, aod::femtodreamparticle::ParticleType::kCascadeBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);
xiCuts.fillQA<0, aod::femtodreamparticle::ParticleType::kCascade, aod::femtodreamparticle::ParticleType::kCascadeV0Child, aod::femtodreamparticle::ParticleType::kCascadeBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);

if (xiCuts.isSelectedMinimal(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc)) {

// xiCuts.fillQA<1, aod::femtodreamparticle::ParticleType::kCascade, aod::femtodreamparticle::ParticleType::kCascadeV0Child, aod::femtodreamparticle::ParticleType::kCascadeBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);
// auto cutContainerCasc = xiCuts.getCutContainer<aod::femtodreamparticle::cutContainerType>(col, casc, v0daugh, posTrackCasc, negTrackCasc, bachTrackCasc);
xiCuts.fillQA<1, aod::femtodreamparticle::ParticleType::kCascade, aod::femtodreamparticle::ParticleType::kCascadeV0Child, aod::femtodreamparticle::ParticleType::kCascadeBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);
auto cutContainerCasc = xiCuts.getCutContainer<aod::femtodreamparticle::cutContainerType>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);

// Fill positive child
Expand Down Expand Up @@ -1401,14 +1399,12 @@ struct FemtoDreamProducerTaskReso {
// continue;
} // if xiCuts.isSelectedMinimal
} // if confIsActivateXi
/*
if (confIsActivateOmega.value){
if (confIsActivateOmega.value) {
omegaCuts.fillQA<0, aod::femtodreamparticle::ParticleType::kOmega, aod::femtodreamparticle::ParticleType::kOmegaV0Child, aod::femtodreamparticle::ParticleType::kOmegaBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);

if (omegaCuts.isSelectedMinimal(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc)) {

omegaCuts.fillQA<1, aod::femtodreamparticle::ParticleType::kOmega, aod::femtodreamparticle::ParticleType::kOmegaV0Child, aod::femtodreamparticle::ParticleType::kOmegaBachelor>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);
// auto cutContainerCasc = xiCuts.getCutContainer<aod::femtodreamparticle::cutContainerType>(col, casc, v0daugh, posTrackCasc, negTrackCasc, bachTrackCasc);
auto cutContainerCasc = omegaCuts.getCutContainer<aod::femtodreamparticle::cutContainerType>(col, casc, posTrackCasc, negTrackCasc, bachTrackCasc);

// Fill positive child
Expand Down Expand Up @@ -1500,11 +1496,9 @@ struct FemtoDreamProducerTaskReso {
fillDebugCascade(casc, col); // QA for Cascade
}


//continue;
} //if omegaCuts.isSelectedMinimal
} //if confIsActivateOmega
*/
// continue;
} // if omegaCuts.isSelectedMinimal
} // if confIsActivateOmega
} // loop over cascades
} // at least one cascade active

Expand Down
35 changes: 19 additions & 16 deletions PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2025 CERN and copyright holders of ALICE O2.

Check failure on line 1 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/workflow-file]

Name of a workflow file must match the name of the main struct in it (without the PWG prefix). (Class implementation files should be in "Core" directories.)
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand All @@ -11,23 +11,26 @@
/// \file femtoDreamPairTaskTrackTrack.cxx
/// \brief Tasks that reads the track tables used for the pairing and builds pairs of two tracks
/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de
#include <sys/stat.h>
#include <cstdint>
#include <vector>
#include <string>
#include "Framework/AnalysisTask.h"
#include "Framework/runDataProcessing.h"
#include "Framework/HistogramRegistry.h"
#include "Framework/ASoAHelpers.h"
#include "Framework/RunningWorkflowInfo.h"
#include "Framework/Expressions.h"
#include "PWGCF/DataModel/FemtoDerived.h"
#include "PWGCF/FemtoDream/Core/femtoDreamParticleHisto.h"
#include "PWGCF/FemtoDream/Core/femtoDreamEventHisto.h"
#include "PWGCF/FemtoDream/Core/femtoDreamPairCleaner.h"
#include "PWGCF/FemtoDream/Core/femtoDreamContainer.h"
#include "PWGCF/FemtoDream/Core/femtoDreamDetaDphiStar.h"
#include "PWGCF/FemtoDream/Core/femtoDreamEventHisto.h"
#include "PWGCF/FemtoDream/Core/femtoDreamPairCleaner.h"
#include "PWGCF/FemtoDream/Core/femtoDreamParticleHisto.h"
#include "PWGCF/FemtoDream/Core/femtoDreamUtils.h"

#include "Framework/ASoAHelpers.h"
#include "Framework/AnalysisTask.h"
#include "Framework/Expressions.h"
#include "Framework/HistogramRegistry.h"
#include "Framework/RunningWorkflowInfo.h"
#include "Framework/runDataProcessing.h"

#include <sys/stat.h>

#include <cstdint>
#include <string>
#include <vector>
using namespace o2;
using namespace o2::aod;
using namespace o2::soa;
Expand All @@ -40,11 +43,11 @@
/// General options
struct : ConfigurableGroup {
std::string prefix = std::string("Option");
Configurable<bool> IsMC{"IsMC", false, "Enable additional Histogramms in the case of a MonteCarlo Run"};

Check failure on line 46 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<bool> Use4D{"Use4D", false, "Enable four dimensional histogramms (to be used only for analysis with high statistics): k* vs multiplicity vs multiplicity percentil vs mT"};

Check failure on line 47 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<bool> ExtendedPlots{"ExtendedPlots", false, "Enable additional three dimensional histogramms. High memory consumption. Use for debugging"};

Check failure on line 48 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> HighkstarCut{"HighkstarCut", -1., "Set a cut for high k*, above which the pairs are rejected. Set it to -1 to deactivate it"};

Check failure on line 49 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<bool> CPROn{"CPROn", true, "Close Pair Rejection"};

Check failure on line 50 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<bool> CPROld{"CPROld", false, "Set to FALSE to use fixed version of CPR (for testing now, will be default soon)"};
Configurable<bool> CPRPlotPerRadii{"CPRPlotPerRadii", false, "Plot CPR per radii"};
Configurable<float> CPRdeltaPhiMax{"CPRdeltaPhiMax", 0.01, "Max. Delta Phi for Close Pair Rejection"};
Expand Down Expand Up @@ -91,12 +94,12 @@
/// Partition for particle 1
Partition<FDParticles> PartitionTrk1 = (aod::femtodreamparticle::partType == uint8_t(aod::femtodreamparticle::ParticleType::kTrack)) &&
(ncheckbit(aod::femtodreamparticle::cut, Track1.CutBit)) &&
ifnode(aod::femtodreamparticle::pt * (nexp(aod::femtodreamparticle::eta) + nexp(-1.f * aod::femtodreamparticle::eta)) / 2.f <= Track1.PIDThres, ncheckbit(aod::femtodreamparticle::pidcut, Track1.TPCBit) && ((aod::femtodreamparticle::pidcut & Track1.TPCBit_Reject) == 0u), ncheckbit(aod::femtodreamparticle::pidcut, Track1.TPCTOFBit)) &&

Check failure on line 97 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[magic-number]

Avoid magic numbers in expressions. Assign the value to a clearly named variable or constant.
(aod::femtodreamparticle::pt > Track1.PtMin) &&
(aod::femtodreamparticle::pt < Track1.PtMax) &&
(aod::femtodreamparticle::eta > Track1.EtaMin) &&
(aod::femtodreamparticle::eta < Track1.EtaMax) &&
ifnode(Option.DCACutPtDep, (nabs(aod::femtodreamparticle::tempFitVar) <= 0.0105f + (0.035f / npow(aod::femtodreamparticle::pt, 1.1f))),

Check failure on line 102 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[magic-number]

Avoid magic numbers in expressions. Assign the value to a clearly named variable or constant.
((aod::femtodreamparticle::tempFitVar >= Track1.TempFitVarMin) &&
(aod::femtodreamparticle::tempFitVar <= Track1.TempFitVarMax)));
/// Histogramming for particle 1
Expand Down Expand Up @@ -229,7 +232,7 @@
for (auto const& part : SliceTrk1) {
trackHistoPartOne.fillQA<isMC, false>(part, aod::femtodreamparticle::kPt, col.multNtr(), col.multV0M());
}
for (auto& casc : SliceCascade2) {

Check failure on line 235 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
const auto& posChild = parts.iteratorAt(casc.index() - 3);
const auto& negChild = parts.iteratorAt(casc.index() - 2);
const auto& bachChild = parts.iteratorAt(casc.index() - 1);
Expand Down Expand Up @@ -326,10 +329,10 @@
}
auto SliceTrk1 = part1->sliceByCached(aod::femtodreamparticle::fdCollisionId, collision1.globalIndex(), cache);
auto SliceCasc2 = part2->sliceByCached(aod::femtodreamparticle::fdCollisionId, collision2.globalIndex(), cache);
for (auto& [p1, p2] : combinations(CombinationsFullIndexPolicy(SliceTrk1, SliceCasc2))) {

Check failure on line 332 in PWGCF/FemtoDream/Tasks/femtoDreamPairTaskTrackCascade.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[const-ref-in-for-loop]

Use constant references for non-modified iterators in range-based for loops.
const auto& posChild = parts.iteratorAt(p2.index() - 3);
const auto& negChild = parts.iteratorAt(p2.index() - 2);
const auto& bachChild = parts.iteratorAt(p2.index() - 1);
const auto& posChild = parts.iteratorAt(p2.globalIndex() - 3);
const auto& negChild = parts.iteratorAt(p2.globalIndex() - 2);
const auto& bachChild = parts.iteratorAt(p2.globalIndex() - 1);
// check cuts on Cascade children
if (Cascade2.UseChildCuts) {
if (!(((posChild.cut() & Cascade2.ChildPos_CutBit) == Cascade2.ChildPos_CutBit) &&
Expand Down
Loading