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
6 changes: 3 additions & 3 deletions EventFiltering/PWGCF/CFFilterQA.cxx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// Copyright 2019-2022 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down Expand Up @@ -151,8 +151,8 @@ using FemtoFullTracks =

struct CFFilterQA {

Produces<aod::FemtoDreamCollisions> outputCollision;
Produces<aod::FemtoDreamParticles> outputParts;
Produces<aod::FDCollisions> outputCollision;
Produces<aod::FDParticles> outputParts;

Service<o2::ccdb::BasicCCDBManager> ccdb;
o2::ccdb::CcdbApi ccdbApi;
Expand Down
34 changes: 16 additions & 18 deletions PWGCF/DataModel/FemtoDerived.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// Copyright 2019-2022 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down Expand Up @@ -34,14 +34,14 @@ DECLARE_SOA_COLUMN(MagField, magField, float); //! Magnetic field of the eve

} // namespace femtodreamcollision

DECLARE_SOA_TABLE(FemtoDreamCollisions, "AOD", "FEMTODREAMCOLS",
DECLARE_SOA_TABLE(FDCollisions, "AOD", "FDCOLLISION",
o2::soa::Index<>,
o2::aod::collision::PosZ,
femtodreamcollision::MultV0M,
femtodreamcollision::MultNtr,
femtodreamcollision::Sphericity,
femtodreamcollision::MagField);
using FemtoDreamCollision = FemtoDreamCollisions::iterator;
using FDCollision = FDCollisions::iterator;

/// FemtoDreamTrack
namespace femtodreamparticle
Expand Down Expand Up @@ -70,7 +70,7 @@ enum TrackType {

static constexpr std::string_view TrackTypeName[kNTrackTypes] = {"Trk", "Pos", "Neg"}; //! Naming of the different particle types

DECLARE_SOA_INDEX_COLUMN(FemtoDreamCollision, femtoDreamCollision);
DECLARE_SOA_INDEX_COLUMN(FDCollision, fdCollision);
DECLARE_SOA_COLUMN(Pt, pt, float); //! p_T (GeV/c)
DECLARE_SOA_COLUMN(Eta, eta, float); //! Eta
DECLARE_SOA_COLUMN(Phi, phi, float); //! Phi
Expand Down Expand Up @@ -120,9 +120,9 @@ DECLARE_SOA_COLUMN(DecayVtxZ, decayVtxZ, float); //! Z position of the decay
DECLARE_SOA_COLUMN(MKaon, mKaon, float); //! The invariant mass of V0 candidate, assuming kaon

} // namespace femtodreamparticle
DECLARE_SOA_TABLE(FemtoDreamParticles, "AOD", "FEMTODREAMPARTS",
DECLARE_SOA_TABLE(FDParticles, "AOD", "FDPARTICLE",
o2::soa::Index<>,
femtodreamparticle::FemtoDreamCollisionId,
femtodreamparticle::FDCollisionId,
femtodreamparticle::Pt,
femtodreamparticle::Eta,
femtodreamparticle::Phi,
Expand All @@ -138,9 +138,9 @@ DECLARE_SOA_TABLE(FemtoDreamParticles, "AOD", "FEMTODREAMPARTS",
femtodreamparticle::Py<femtodreamparticle::Pt, femtodreamparticle::Phi>,
femtodreamparticle::Pz<femtodreamparticle::Pt, femtodreamparticle::Eta>,
femtodreamparticle::P<femtodreamparticle::Pt, femtodreamparticle::Eta>);
using FemtoDreamParticle = FemtoDreamParticles::iterator;
using FDParticle = FDParticles::iterator;

DECLARE_SOA_TABLE(FemtoDreamDebugParticles, "AOD", "FEMTODEBUGPARTS",
DECLARE_SOA_TABLE(FDExtParticles, "AOD", "FDEXTPARTICLE",
femtodreamparticle::Sign,
femtodreamparticle::TPCNClsFound,
track::TPCNClsFindable,
Expand Down Expand Up @@ -179,7 +179,7 @@ DECLARE_SOA_TABLE(FemtoDreamDebugParticles, "AOD", "FEMTODEBUGPARTS",
pidtof_tiny::TOFNSigmaKa<pidtof_tiny::TOFNSigmaStoreKa>,
pidtof_tiny::TOFNSigmaPr<pidtof_tiny::TOFNSigmaStorePr>,
pidtof_tiny::TOFNSigmaDe<pidtof_tiny::TOFNSigmaStoreDe>);
using FemtoDreamDebugParticle = FemtoDreamDebugParticles::iterator;
using FDFullParticle = FDExtParticles::iterator;

/// FemtoDreamTrackMC
namespace femtodreamMCparticle
Expand Down Expand Up @@ -215,34 +215,32 @@ enum MCType {

static constexpr std::string_view MCTypeName[kNMCTypes] = {"", "_MC"};

DECLARE_SOA_INDEX_COLUMN(FemtoDreamCollision, femtoDreamCollision);
DECLARE_SOA_COLUMN(PartOriginMCTruth, partOriginMCTruth, uint8_t); //! Origin of the particle, according to femtodreamparticle::ParticleOriginMCTruth
DECLARE_SOA_COLUMN(PDGMCTruth, pdgMCTruth, int); //! Particle PDG

// debug variables
DECLARE_SOA_COLUMN(MotherPDG, motherPDG, int); //! Checks mother PDG, where mother is the primary particle for that decay chain
} // namespace femtodreamMCparticle

DECLARE_SOA_TABLE(FemtoDreamMCParticles, "AOD", "FEMTODREAMMCPS",
DECLARE_SOA_TABLE(FDMCParticles, "AOD", "FDMCPARTICLE",
o2::soa::Index<>,
femtodreamMCparticle::PartOriginMCTruth,
femtodreamMCparticle::PDGMCTruth,
femtodreamparticle::Pt,
femtodreamparticle::Eta,
femtodreamparticle::Phi);
using FemtoDreamMCParticle = FemtoDreamMCParticles::iterator;
using FDMCParticle = FDMCParticles::iterator;

DECLARE_SOA_TABLE(FemtoDreamDebugMCParticles, "AOD", "FEMTODEBUGMCP",
DECLARE_SOA_TABLE(FDExtMCParticles, "AOD", "FDEXTMCPARTICLE",
femtodreamMCparticle::MotherPDG);
using FemtoDreamDebugMCParticle = FemtoDreamDebugMCParticles::iterator;
using FDExtMCParticle = FDExtMCParticles::iterator;

namespace mcfdlabel
{
DECLARE_SOA_INDEX_COLUMN(FemtoDreamMCParticle, femtoDreamMCParticle); //! MC particle for femtodreamparticle
DECLARE_SOA_INDEX_COLUMN(FDMCParticle, fdMCParticle); //! MC particle for femtodreamparticle
} // namespace mcfdlabel
DECLARE_SOA_TABLE(FemtoDreamMCLabels, "AOD", "FEMTOMCLABELS", //! Table joinable to FemtoDreamParticle containing the MC labels
mcfdlabel::FemtoDreamMCParticleId);
using FemtoDreamMCLabel = FemtoDreamMCLabels::iterator;
DECLARE_SOA_TABLE(FDMCLabels, "AOD", "FDMCLabel", //! Table joinable to FemtoDreamParticle containing the MC labels
mcfdlabel::FDMCParticleId);

/// Hash
namespace hash
Expand Down
2 changes: 1 addition & 1 deletion PWGCF/FemtoDream/FemtoDreamCollisionSelection.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// Copyright 2019-2022 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down
12 changes: 6 additions & 6 deletions PWGCF/FemtoDream/FemtoDreamContainer.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// Copyright 2019-2022 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand Down Expand Up @@ -217,15 +217,15 @@ class FemtoDreamContainer
setPair_base<o2::aod::femtodreamMCparticle::MCType::kRecon>(femtoObs, mT, part1, part2, mult, use3dplots);

if constexpr (isMC) {
if (part1.has_femtoDreamMCParticle() && part2.has_femtoDreamMCParticle()) {
if (part1.has_fdMCParticle() && part2.has_fdMCParticle()) {
// calculate the femto observable and the mT with MC truth information
if constexpr (mFemtoObs == femtoDreamContainer::Observable::kstar) {
femtoObsMC = FemtoDreamMath::getkstar(part1.femtoDreamMCParticle(), mMassOne, part2.femtoDreamMCParticle(), mMassTwo);
femtoObsMC = FemtoDreamMath::getkstar(part1.fdMCParticle(), mMassOne, part2.fdMCParticle(), mMassTwo);
}
const float mTMC = FemtoDreamMath::getmT(part1.femtoDreamMCParticle(), mMassOne, part2.femtoDreamMCParticle(), mMassTwo);
const float mTMC = FemtoDreamMath::getmT(part1.fdMCParticle(), mMassOne, part2.fdMCParticle(), mMassTwo);

if (abs(part1.femtoDreamMCParticle().pdgMCTruth()) == mPDGOne && abs(part2.femtoDreamMCParticle().pdgMCTruth()) == mPDGTwo) { // Note: all pair-histogramms are filled with MC truth information ONLY in case of non-fake candidates
setPair_base<o2::aod::femtodreamMCparticle::MCType::kTruth>(femtoObsMC, mTMC, part1.femtoDreamMCParticle(), part2.femtoDreamMCParticle(), mult, use3dplots);
if (abs(part1.fdMCParticle().pdgMCTruth()) == mPDGOne && abs(part2.fdMCParticle().pdgMCTruth()) == mPDGTwo) { // Note: all pair-histogramms are filled with MC truth information ONLY in case of non-fake candidates
setPair_base<o2::aod::femtodreamMCparticle::MCType::kTruth>(femtoObsMC, mTMC, part1.fdMCParticle(), part2.fdMCParticle(), mult, use3dplots);
setPair_MC(femtoObsMC, femtoObs, mT, mult);
} else {
mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST(o2::aod::femtodreamMCparticle::MCTypeName[o2::aod::femtodreamMCparticle::MCType::kTruth]) + HIST("/hFakePairsCounter"), 0);
Expand Down
Loading