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
71 changes: 36 additions & 35 deletions PWGJE/DataModel/GammaJetAnalysisTree.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.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
Expand All @@ -12,48 +12,50 @@
///
/// \brief Table definitions for gamma-jet analyses
///
/// \author Florian Jonas <florian.jonas@cern.ch>

#ifndef PWGJE_DATAMODEL_GAMMAJETANALYSISTREE_H_
#define PWGJE_DATAMODEL_GAMMAJETANALYSISTREE_H_

#include "Framework/AnalysisDataModel.h"
#include "PWGJE/DataModel/EMCALClusters.h"
#include "PWGJE/Core/JetDerivedDataUtilities.h"
#include "PWGJE/DataModel/EMCALClusters.h"
#include "PWGJE/DataModel/Jet.h"

namespace o2::aod::gjanalysis{
enum class ClusterOrigin{
kUnknown = 0,
kPhoton, // dominant amount of energy from the cluster is from a photon
kPromptPhoton,
kDirectPromptPhoton,
kFragmentationPhoton,
kDecayPhoton, // the particle that produced the cluster is a decay product
kDecayPhotonPi0, // the cluster was produced by a pi0 decay
kDecayPhotonEta, // the cluster was produced by a eta decay
kMergedPi0, // the cluster was produced by a merged pi0, i.e. two photons contribute to the cluster that both come from pi0 decay
kMergedEta, // the cluster was produced by a merged eta, i.e. two photons contribute to the cluster that both come from eta decay
kConvertedPhoton, // the cluster was produced by a converted photon, i.e. a photon that converted to an electron-positron pair and one of the electrons was detected in the cluster
};
enum class ParticleOrigin{
kUnknown = 0,
kPromptPhoton,
kDirectPromptPhoton,
kFragmentationPhoton,
kDecayPhoton,
kDecayPhotonPi0,
kDecayPhotonEta,
kDecayPhotonOther,
kPi0
};
}
#include "Framework/AnalysisDataModel.h"

namespace o2::aod::gjanalysis
{
enum class ClusterOrigin {
kUnknown = 0,
kPhoton, // dominant amount of energy from the cluster is from a photon
kPromptPhoton,
kDirectPromptPhoton,
kFragmentationPhoton,
kDecayPhoton, // the particle that produced the cluster is a decay product
kDecayPhotonPi0, // the cluster was produced by a pi0 decay
kDecayPhotonEta, // the cluster was produced by a eta decay
kMergedPi0, // the cluster was produced by a merged pi0, i.e. two photons contribute to the cluster that both come from pi0 decay
kMergedEta, // the cluster was produced by a merged eta, i.e. two photons contribute to the cluster that both come from eta decay
kConvertedPhoton, // the cluster was produced by a converted photon, i.e. a photon that converted to an electron-positron pair and one of the electrons was detected in the cluster
};
enum class ParticleOrigin {
kUnknown = 0,
kPromptPhoton,
kDirectPromptPhoton,
kFragmentationPhoton,
kDecayPhoton,
kDecayPhotonPi0,
kDecayPhotonEta,
kDecayPhotonOther,
kPi0
};
} // namespace o2::aod::gjanalysis
namespace o2::aod
{

// Collision level information
namespace gjevent
{ //! event index
{ //! event index
DECLARE_SOA_COLUMN(Multiplicity, multiplicity, float);
DECLARE_SOA_COLUMN(Centrality, centrality, float);
DECLARE_SOA_COLUMN(Rho, rho, float);
Expand All @@ -68,16 +70,16 @@
// Information about the MC collision that was matched to the reconstructed collision
namespace gjmcevent
{
DECLARE_SOA_INDEX_COLUMN(GjEvent, gjevent);
DECLARE_SOA_COLUMN(Weight, weight, double);
DECLARE_SOA_COLUMN(Rho, rho, float); // gen level rho
DECLARE_SOA_COLUMN(Rho, rho, float); // gen level rho
DECLARE_SOA_COLUMN(IsMultipleAssigned, isMultipleAssigned, bool); // if the corresponding MC collision matched to this rec collision was also matched to other rec collisions (allows to skip those on analysis level )
} // namespace gjmcevent
DECLARE_SOA_TABLE(GjMCEvents, "AOD", "GJMCEVENT", gjmcevent::GjEventId, gjmcevent::Weight, gjmcevent::Rho, gjmcevent::IsMultipleAssigned)
// Information about EMCal clusters
namespace gjgamma
{
DECLARE_SOA_INDEX_COLUMN(GjEvent, gjevent); //! event index
DECLARE_SOA_COLUMN(Energy, energy, float); //! cluster energy (GeV)
DECLARE_SOA_COLUMN(Definition, definition, int); //! cluster definition, see EMCALClusterDefinition.h
DECLARE_SOA_COLUMN(Eta, eta, float); //! cluster pseudorapidity (calculated using vertex)
Expand All @@ -88,12 +90,12 @@
DECLARE_SOA_COLUMN(Time, time, float); //! cluster time (ns)
DECLARE_SOA_COLUMN(IsExotic, isExotic, bool); //! flag to mark cluster as exotic
DECLARE_SOA_COLUMN(DistanceToBadChannel, distanceToBadChannel, float); //! distance to bad channel
DECLARE_SOA_COLUMN(NLM, nlm, ushort); //! number of local maxima
DECLARE_SOA_COLUMN(IsoRaw, isoraw, float); //! isolation in cone not corrected for Rho
DECLARE_SOA_COLUMN(PerpConeRho, perpconerho, float); //! rho in perpendicular cone
DECLARE_SOA_COLUMN(TMdeltaPhi, tmdeltaphi, float); //! delta phi between cluster and closest match
DECLARE_SOA_COLUMN(TMdeltaEta, tmdeltaeta, float); //! delta eta between cluster and closest match
DECLARE_SOA_COLUMN(TMtrackP, tmtrackp, float); //! track momentum of closest match, -1 if no match found
} // namespace gjgamma
DECLARE_SOA_TABLE(GjGammas, "AOD", "GJGAMMA",
gjgamma::GjEventId, gjgamma::Energy, gjgamma::Definition, gjgamma::Eta, gjgamma::Phi, gjgamma::M02, gjgamma::M20, gjgamma::NCells, gjgamma::Time, gjgamma::IsExotic, gjgamma::DistanceToBadChannel, gjgamma::NLM, gjgamma::IsoRaw, gjgamma::PerpConeRho, gjgamma::TMdeltaPhi, gjgamma::TMdeltaEta, gjgamma::TMtrackP)
Expand All @@ -106,7 +108,6 @@
} // namespace gjgammamcinfo
DECLARE_SOA_TABLE(GjGammaMCInfos, "AOD", "GJGAMMAMCINFO", gjgamma::GjEventId, gjgammamcinfo::Origin, gjgammamcinfo::LeadingEnergyFraction)


// Generator level particle information from the MC collision that was matched to the reconstructed collision
namespace gjmcparticle
{
Expand All @@ -115,10 +116,10 @@
DECLARE_SOA_COLUMN(Eta, eta, float);
DECLARE_SOA_COLUMN(Phi, phi, float);
DECLARE_SOA_COLUMN(Pt, pt, float);
DECLARE_SOA_COLUMN(PdgCode, pdgCode, ushort); // TODO also add smoe origin of particle? maybe only save original pi0 and eta and photon (not decay photons)
DECLARE_SOA_COLUMN(PdgCode, pdgCode, ushort); // TODO also add smoe origin of particle? maybe only save original pi0 and eta and photon (not decay photons)
DECLARE_SOA_COLUMN(MCIsolation, mcIsolation, float); // isolation in cone on mc gen level
DECLARE_SOA_COLUMN(Origin, origin, uint16_t); // origin of particle
}
DECLARE_SOA_COLUMN(Origin, origin, uint16_t); // origin of particle
} // namespace gjmcparticle
DECLARE_SOA_TABLE(GjMCParticles, "AOD", "GJMCPARTICLE", gjmcparticle::GjEventId, gjmcparticle::Energy, gjmcparticle::Eta, gjmcparticle::Phi, gjmcparticle::Pt, gjmcparticle::PdgCode, gjmcparticle::MCIsolation, gjmcparticle::Origin)

// Reconstructed charged jet information
Expand Down Expand Up @@ -161,4 +162,4 @@

} // namespace o2::aod

#endif // PWGJE_DATAMODEL_GAMMAJETANALYSISTREE_H_
#endif // PWGJE_DATAMODEL_GAMMAJETANALYSISTREE_H_
Loading