![]() |
AliPhysics
2eb5586 (2eb5586)
|
Container for MC-true particles within the EMCAL framework. More...
#include <AliMCParticleContainer.h>
Public Member Functions | |
AliMCParticleContainer () | |
AliMCParticleContainer (const char *name) | |
virtual | ~AliMCParticleContainer () |
virtual Bool_t | ApplyMCParticleCuts (const AliAODMCParticle *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptObject (Int_t i, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptObject (const TObject *obj, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptParticle (Int_t i, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptParticle (const AliVParticle *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptMCParticle (const AliAODMCParticle *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptMCParticle (Int_t i, UInt_t &rejectionReason) const |
virtual AliAODMCParticle * | GetMCParticleWithLabel (Int_t lab) const |
virtual AliAODMCParticle * | GetAcceptMCParticleWithLabel (Int_t lab) |
virtual AliAODMCParticle * | GetLeadingMCParticle (const char *opt="") |
virtual AliAODMCParticle * | GetMCParticle (Int_t i=-1) const |
virtual AliAODMCParticle * | GetAcceptMCParticle (Int_t i=-1) const |
virtual AliAODMCParticle * | GetNextAcceptMCParticle () |
virtual AliAODMCParticle * | GetNextMCParticle () |
virtual AliVParticle * | GetParticle (Int_t i=-1) const |
virtual AliVParticle * | GetAcceptParticle (Int_t i=-1) const |
virtual AliVParticle * | GetNextAcceptParticle () |
virtual AliVParticle * | GetNextParticle () |
void | SetMCFlag (UInt_t m) |
void | SelectPhysicalPrimaries (Bool_t s) |
const char * | GetTitle () const |
const AliMCParticleIterableContainer | all () const |
const AliMCParticleIterableContainer | accepted () const |
const AliMCParticleIterableMomentumContainer | all_momentum () const |
const AliMCParticleIterableMomentumContainer | accepted_momentum () const |
![]() | |
AliParticleContainer () | |
AliParticleContainer (const char *name) | |
virtual | ~AliParticleContainer () |
virtual TObject * | operator[] (int index) const |
virtual Bool_t | ApplyParticleCuts (const AliVParticle *vp, UInt_t &rejectionReason) const |
virtual Bool_t | ApplyKinematicCuts (const AliTLorentzVector &mom, UInt_t &rejectionReason) const |
Double_t | GetParticlePtCut () const |
Double_t | GetParticleEtaMin () const |
Double_t | GetParticleEtaMax () const |
Double_t | GetParticlePhiMin () const |
Double_t | GetParticlePhiMax () const |
void | SetParticlePtCut (Double_t cut) |
void | SetParticleEtaLimits (Double_t min, Double_t max) |
void | SetParticlePhiLimits (Double_t min, Double_t max) |
virtual AliVParticle * | GetLeadingParticle (const char *opt="") |
virtual Bool_t | GetMomentumFromParticle (TLorentzVector &mom, const AliVParticle *part, Double_t mass) const |
virtual Bool_t | GetMomentumFromParticle (TLorentzVector &mom, const AliVParticle *part) const |
virtual Bool_t | GetMomentum (TLorentzVector &mom, Int_t i) const |
virtual Bool_t | GetAcceptMomentum (TLorentzVector &mom, Int_t i) const |
virtual Bool_t | GetNextMomentum (TLorentzVector &mom) |
virtual Bool_t | GetNextAcceptMomentum (TLorentzVector &mom) |
Int_t | GetNParticles () const |
Int_t | GetNAcceptedParticles () const |
void | SetMinDistanceTPCSectorEdge (Double_t min) |
void | SetCharge (EChargeCut_t c) |
void | SelectHIJING (Bool_t s) |
void | SetGeneratorIndex (Short_t i) |
void | SetArray (const AliVEvent *event) |
const char * | GetTitle () const |
const AliParticleIterableContainer | all () const |
const AliParticleIterableContainer | accepted () const |
const AliParticleIterableMomentumContainer | all_momentum () const |
const AliParticleIterableMomentumContainer | accepted_momentum () const |
Protected Member Functions | |
virtual TString | GetDefaultArrayName (const AliVEvent *const ev) const |
Protected Attributes | |
UInt_t | fMCFlag |
select MC particles with flags More... | |
![]() | |
Double_t | fMinDistanceTPCSectorEdge |
require minimum distance to edge of TPC sector edge More... | |
EChargeCut_t | fChargeCut |
select particles according to their charge More... | |
Short_t | fGeneratorIndex |
select MC particles with generator index (default = -1 = switch off selection) More... | |
Private Member Functions | |
AliMCParticleContainer (const AliMCParticleContainer &obj) | |
AliMCParticleContainer & | operator= (const AliMCParticleContainer &other) |
Additional Inherited Members | |
![]() | |
enum | EChargeCut_t { kNoChargeCut, kCharged, kNeutral, kPositiveCharge, kNegativeCharge } |
![]() | |
static const AliEmcalContainerIndexMap< TClonesArray, AliVParticle > & | GetEmcalContainerIndexMap () |
Get the EMCal container utils associated with particle containers. More... | |
![]() | |
static AliEmcalContainerIndexMap< TClonesArray, AliVParticle > | fgEmcalContainerIndexMap |
! Mapping from containers to indices More... | |
Container for MC-true particles within the EMCAL framework.
Definition at line 24 of file AliMCParticleContainer.h.
AliMCParticleContainer::AliMCParticleContainer | ( | ) |
Default constructor.
Definition at line 23 of file AliMCParticleContainer.cxx.
AliMCParticleContainer::AliMCParticleContainer | ( | const char * | name | ) |
Standard constructor.
[in] | name | Name of the container (= name of the array operated on) |
Definition at line 35 of file AliMCParticleContainer.cxx.
|
inlinevirtual |
Definition at line 29 of file AliMCParticleContainer.h.
|
private |
const AliMCParticleIterableContainer AliMCParticleContainer::accepted | ( | ) | const |
Create an iterable container interface over accepted objects in the EMCAL container.
Definition at line 224 of file AliMCParticleContainer.cxx.
Referenced by AliAnalysisTaskIDFragmentationFunction::FillHistograms(), AliHFAODMCParticleContainer::IsSpecialPDGFound(), and SelectPhysicalPrimaries().
const AliMCParticleIterableMomentumContainer AliMCParticleContainer::accepted_momentum | ( | ) | const |
Create an iterable container interface over accepted objects in the EMCAL container.
Definition at line 242 of file AliMCParticleContainer.cxx.
Referenced by AliAnalysisTaskEmcalJetPerformance::DoTriggerSimulation(), AliEmcalTrackingQATask::FillHistograms(), AliAnalysisTaskPWGJEQA::FillTrackHistograms(), and SelectPhysicalPrimaries().
|
virtual |
Perform full MC particle selection for the particle vp, consisting of kinematical particle selection and MC-specific cuts
[in] | vp | Particle to be checked |
[in] | rejectionReason | Bitmap encoding the reason why the particle was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Reimplemented in AliHFAODMCParticleContainer.
Definition at line 155 of file AliMCParticleContainer.cxx.
Referenced by AliHFAODMCParticleContainer::AcceptMCParticle(), AcceptObject(), AcceptParticle(), GetAcceptMCParticle(), and AliAnalysisTaskEmcalJetPerformance::GetContributorType().
Perform full MC particle selection for the particle vp, consisting of kinematical particle selection and MC-specific cuts
[in] | i | Index of the particle to check |
[in] | rejectionReason | Bitmap encoding the reason why the particle was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Reimplemented in AliHFAODMCParticleContainer.
Definition at line 176 of file AliMCParticleContainer.cxx.
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 32 of file AliMCParticleContainer.h.
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 33 of file AliMCParticleContainer.h.
|
inlinevirtual |
Perform full particle selection consisting of kinematical and particle property selection on the \( i^{th} \) particle in the array. In case the particle is rejected, the reason for the rejection is encoded in the bitmap rejectionReason.
[in] | i | Index of the particle to select. |
[out] | rejectionReason | Bitmap with the reason why the particle was accepted. Note: The value is not set to 0 in the function in order to combine the information with other selection steps. |
Reimplemented from AliParticleContainer.
Definition at line 34 of file AliMCParticleContainer.h.
|
inlinevirtual |
Perform full particle selection consisting of kinematical and particle property selection on the particle provided. In case the particle is rejected, the reason for the rejection is encoded in the bitmap rejectionReason.
vp | Particle for which to perform the selection |
rejectionReason | Bitmap with the reason why the particle was accepted. Note: The value is not set to 0 in the function in order to combine the information with other selection steps. |
Reimplemented from AliParticleContainer.
Definition at line 35 of file AliMCParticleContainer.h.
const AliMCParticleIterableContainer AliMCParticleContainer::all | ( | ) | const |
Create an iterable container interface over all objects in the EMCAL container.
Definition at line 215 of file AliMCParticleContainer.cxx.
Referenced by AliAnalysisTaskEmcalLight::CheckMCOutliers(), AliAnalysisTaskEmcal::CheckMCOutliers(), and SelectPhysicalPrimaries().
const AliMCParticleIterableMomentumContainer AliMCParticleContainer::all_momentum | ( | ) | const |
Create an iterable container interface over all objects in the EMCAL container.
Definition at line 233 of file AliMCParticleContainer.cxx.
Referenced by AliAnalysisTaskDmesonJets::FillPartonLevelHistograms(), and SelectPhysicalPrimaries().
|
virtual |
Apply MC particle cuts, e.g. primary particle selection.
[in] | vp | Particle to be checked |
[in] | rejectionReason | Bitmap encoding the reason why the particle was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 197 of file AliMCParticleContainer.cxx.
Referenced by AcceptMCParticle(), and ~AliMCParticleContainer().
|
virtual |
Get track at index in the container
[in] | i | Index of the particle in the container |
Definition at line 93 of file AliMCParticleContainer.cxx.
Referenced by GetAcceptMCParticleWithLabel(), GetAcceptParticle(), GetLeadingMCParticle(), and GetNextAcceptMCParticle().
|
virtual |
Get MC particle using the MC label
[in] | lab | Label of the particle |
Definition at line 64 of file AliMCParticleContainer.cxx.
Referenced by AcceptParticle(), AliEmcalTrackingQATask::FillHistograms(), and AliAnalysisTaskPWGJEQA::FillTrackHistograms().
|
inlinevirtual |
Get \( i^{th} \) particle in the container if it is accepted. In case it is not accepted a nullpointer is returned.
[in] | i | Index of the particle |
Reimplemented from AliParticleContainer.
Definition at line 46 of file AliMCParticleContainer.h.
|
inlineprotectedvirtual |
Definition at line 64 of file AliMCParticleContainer.h.
|
inlinevirtual |
Definition at line 40 of file AliMCParticleContainer.h.
|
virtual |
Get track at index in the container
[in] | i | Index of the particle in the container |
Definition at line 80 of file AliMCParticleContainer.cxx.
Referenced by AcceptMCParticle(), AliHFAODMCParticleContainer::AcceptMCParticle(), AliAnalysisTaskDmesonJets::FillPartonLevelHistograms(), GetAcceptMCParticle(), GetLeadingMCParticle(), GetMCParticleWithLabel(), GetNextMCParticle(), GetParticle(), and AliAnalysisTaskDmesonJets::AnalysisEngine::RunParticleLevelAnalysis().
|
virtual |
Get MC particle using the MC label
[in] | lab | Label of the particle |
Definition at line 48 of file AliMCParticleContainer.cxx.
Referenced by AcceptParticle(), AliAnalysisTaskIDFragmentationFunction::AnalyseJetTrack(), AliAnalysisTaskIDFragmentationFunction::FillDCA(), AliAnalysisTaskIDFragmentationFunction::FillHistograms(), AliAnalysisTaskEmcalJetPerformance::FillParticleCompositionClusterHistograms(), AliAnalysisTaskEmcalJetPerformance::GetContributorType(), AliAnalysisTaskIDFragmentationFunction::GetMCStrangenessFactorCMS(), and AliAnalysisTaskIDFragmentationFunction::IsSecondaryWithStrangeMotherMC().
|
virtual |
Get next accepted particle in the container selected using the track cuts provided.
Definition at line 113 of file AliMCParticleContainer.cxx.
Referenced by GetLeadingMCParticle(), and GetNextAcceptParticle().
|
inlinevirtual |
Iterator over accepted particles in the container. Get the next accepted particle in the array. If the end is reached, NULL is returned.
Reimplemented from AliParticleContainer.
Definition at line 47 of file AliMCParticleContainer.h.
|
virtual |
Get next particle in the container
Definition at line 131 of file AliMCParticleContainer.cxx.
Referenced by GetLeadingMCParticle(), and GetNextParticle().
|
inlinevirtual |
Iterator over all particles in the container. Get the next particle in the array. If the end is reached, NULL is returned.
Reimplemented from AliParticleContainer.
Definition at line 48 of file AliMCParticleContainer.h.
|
inlinevirtual |
Get \( i^{th} \) particle in the container.
[in] | i | Index of the particle to access |
Reimplemented from AliParticleContainer.
Definition at line 45 of file AliMCParticleContainer.h.
const char * AliMCParticleContainer::GetTitle | ( | ) | const |
Build title of the container consisting of the container name and a string encoding the minimum \( p_{t} \) cut applied in the kinematic particle selection.
Definition at line 252 of file AliMCParticleContainer.cxx.
Referenced by SelectPhysicalPrimaries().
|
private |
|
inline |
Definition at line 51 of file AliMCParticleContainer.h.
Referenced by AliAnalysisTaskEmcalJetPerformance::AddTaskEmcalJetPerformance(), and AliAnalysisTaskPWGJEQA::AddTaskPWGJEQA().
|
inline |
Definition at line 50 of file AliMCParticleContainer.h.
|
protected |
select MC particles with flags
Definition at line 66 of file AliMCParticleContainer.h.
Referenced by ApplyMCParticleCuts(), SelectPhysicalPrimaries(), and SetMCFlag().