![]() |
AliPhysics
a1733f5 (a1733f5)
|
Container with name, TClonesArray and cuts for particles. More...
#include <AliTrackContainer.h>
Public Types | |
enum | ETrackType_t { kRejected = -1, kUndefined = 0, kHybridGlobal = 0, kHybridConstrained = 1, kHybridConstrainedNoITSrefit = 2 } |
Status of a track after track selection. More... | |
typedef AliEmcalTrackSelection::ETrackFilterType_t | ETrackFilterType_t |
![]() | |
enum | EChargeCut_t { kNoChargeCut, kCharged, kNeutral, kPositiveCharge, kNegativeCharge } |
Public Member Functions | |
AliTrackContainer () | |
AliTrackContainer (const char *name, const char *period="") | |
virtual | ~AliTrackContainer () |
virtual Bool_t | ApplyTrackCuts (const AliVTrack *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 AliVParticle * | GetParticle (Int_t i=-1) const |
virtual AliVParticle * | GetAcceptParticle (Int_t i=-1) const |
virtual AliVParticle * | GetNextAcceptParticle () |
virtual AliVParticle * | GetNextParticle () |
virtual Bool_t | AcceptTrack (const AliVTrack *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptTrack (Int_t i, UInt_t &rejectionReason) const |
virtual AliVTrack * | GetLeadingTrack (const char *opt="") |
virtual AliVTrack * | GetTrack (Int_t i=-1) const |
virtual AliVTrack * | GetAcceptTrack (Int_t i=-1) const |
virtual AliVTrack * | GetNextAcceptTrack () |
virtual AliVTrack * | GetNextTrack () |
Char_t | GetTrackType (const AliVTrack *track) const |
virtual Bool_t | GetMomentumFromTrack (TLorentzVector &mom, const AliVTrack *track, Double_t mass) const |
virtual Bool_t | GetMomentumFromTrack (TLorentzVector &mom, const AliVTrack *track) 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 | GetNTracks () const |
Int_t | GetNAcceptedTracks () |
ETrackFilterType_t | GetTrackFilterType () const |
Char_t | GetTrackType (Int_t i) const |
void | SetArray (const AliVEvent *event) |
void | SetTrackFilterType (ETrackFilterType_t f) |
void | SetFilterHybridTracks (Bool_t f) |
void | SetITSHybridTrackDistinction (Bool_t doUse) |
void | SetTrackCutsPeriod (const char *period) |
void | AddTrackCuts (AliVCuts *cuts) |
Int_t | GetNumberOfCutObjects () const |
AliVCuts * | GetTrackCuts (Int_t icut) |
void | SetAODFilterBits (UInt_t bits) |
void | AddAODFilterBit (UInt_t bit) |
UInt_t | GetAODFilterBits () const |
Bool_t | IsHybridTrackSelection () const |
void | SetSelectionModeAny () |
void | SetSelectionModeAll () |
void | NextEvent (const AliVEvent *event) |
const char * | GetTitle () const |
const AliTrackIterableContainer | all () const |
const AliTrackIterableContainer | accepted () const |
const AliTrackIterableMomentumContainer | all_momentum () const |
const AliTrackIterableMomentumContainer | 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 |
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 |
Static Public Member Functions | |
static void | SetDefTrackCutsPeriod (const char *period) |
static TString | GetDefTrackCutsPeriod () |
![]() | |
static const AliEmcalContainerIndexMap < TClonesArray, AliVParticle > & | GetEmcalContainerIndexMap () |
Get the EMCal container utils associated with particle containers. More... | |
Protected Member Functions | |
virtual TString | GetDefaultArrayName (const AliVEvent *const ev) const |
Protected Attributes | |
ETrackFilterType_t | fTrackFilterType |
track filter type More... | |
TObjArray * | fListOfCuts |
list of track cut objects More... | |
Bool_t | fSelectionModeAny |
accept track if any of the cuts is fulfilled More... | |
Bool_t | fITSHybridTrackDistinction |
Distinct hybrid tracks via SPD information. More... | |
UInt_t | fAODFilterBits |
track filter bits More... | |
TString | fTrackCutsPeriod |
period string used to generate track cuts More... | |
AliEmcalTrackSelection * | fEmcalTrackSelection |
! track selection object More... | |
TObjArray * | fFilteredTracks |
! tracks filtered using fEmcalTrackSelection More... | |
TArrayC | fTrackTypes |
! track types 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... | |
Static Protected Attributes | |
static TString | fgDefTrackCutsPeriod = "" |
! default period string used to generate track cuts More... | |
![]() | |
static AliEmcalContainerIndexMap < TClonesArray, AliVParticle > | fgEmcalContainerIndexMap |
! Mapping from containers to indices More... | |
Private Member Functions | |
AliTrackContainer (const AliTrackContainer &obj) | |
AliTrackContainer & | operator= (const AliTrackContainer &other) |
Container with name, TClonesArray and cuts for particles.
Definition at line 29 of file AliTrackContainer.h.
Definition at line 32 of file AliTrackContainer.h.
Status of a track after track selection.
Definition at line 38 of file AliTrackContainer.h.
AliTrackContainer::AliTrackContainer | ( | ) |
Default constructor.
Definition at line 40 of file AliTrackContainer.cxx.
AliTrackContainer::AliTrackContainer | ( | const char * | name, |
const char * | period = "" |
||
) |
Standard constructor.
[in] | name | Name of the container (= name of the array operated on) |
[in] | period | Name of the period, needed for track cut selection |
Definition at line 62 of file AliTrackContainer.cxx.
|
inlinevirtual |
Definition at line 48 of file AliTrackContainer.h.
|
private |
const AliTrackIterableContainer AliTrackContainer::accepted | ( | ) | const |
Create an iterable container interface over accepted objects in the EMCAL container.
Definition at line 620 of file AliTrackContainer.cxx.
Referenced by AliAnalysisTaskEmcalJetHCorrelations::CloneAndReduceTrackList(), and AliAnalysisTaskIDFragmentationFunction::FillHistograms().
const AliTrackIterableMomentumContainer AliTrackContainer::accepted_momentum | ( | ) | const |
Create an iterable container interface over accepted objects in the EMCAL container.
Definition at line 638 of file AliTrackContainer.cxx.
Referenced by AliAnalysisTaskEmcalDijetImbalance::ComputeBackground(), AliAnalysisTaskEmcalJetPerformance::ComputeBackground(), AliAnalysisTaskEmcalDijetImbalance::DoMomentumBalance(), AliAnalysisTaskEmcalVsPhos::FillEventHistograms(), AliEmcalTrackingQATask::FillHistograms(), AliAnalysisTaskPWGJEQA::FillTrackHistograms(), and AliAnalysisTaskEmcalJetHCorrelations::Run().
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 51 of file AliTrackContainer.h.
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 52 of file AliTrackContainer.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 53 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskJetV3::PassesCuts().
|
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 54 of file AliTrackContainer.h.
|
virtual |
Perform full track selection for the particle vp, consisting of kinematical track selection and track quality cut provided by the cuts assigned to this container
[in] | vp | Track to be checked |
[in] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 514 of file AliTrackContainer.cxx.
Referenced by AcceptObject(), AcceptParticle(), and GetAcceptTrack().
Perform full track selection for the particle in the container stored at position i, consisting of kinematical track selection and track quality cut provided by the cuts assigned to this container
[in] | i | Index of the track to check |
[in] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 536 of file AliTrackContainer.cxx.
|
inline |
Definition at line 89 of file AliTrackContainer.h.
void AliTrackContainer::AddTrackCuts | ( | AliVCuts * | cuts | ) |
Add new track cuts to the container.
[in] | cuts | Cuts to be added |
Definition at line 565 of file AliTrackContainer.cxx.
const AliTrackIterableContainer AliTrackContainer::all | ( | ) | const |
Create an iterable container interface over all objects in the EMCAL container.
Definition at line 611 of file AliTrackContainer.cxx.
const AliTrackIterableMomentumContainer AliTrackContainer::all_momentum | ( | ) | const |
Create an iterable container interface over all objects in the EMCAL container.
Definition at line 629 of file AliTrackContainer.cxx.
|
virtual |
Perform track quality selection of the track vp using the track cuts assigned to this container.
[in] | vp | Track to be checked |
[out] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Reimplemented in AliTrackContainerV0, and AliHFTrackContainer.
Definition at line 556 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), AliHFTrackContainer::ApplyTrackCuts(), and AliTrackContainerV0::ApplyTrackCuts().
Fills a TLorentzVector with the monentum infomation of the \( i^{th} \) accepted particle in the container, using a global mass hypothesis. In case the provided index is out of range, or the particle under the index is not accepted, false is returned as return value.
[out] | mom | Momentum vector of the accepted particle |
[in] | i | Index to check |
Reimplemented from AliParticleContainer.
Reimplemented in AliTrackContainerToyModel.
Definition at line 441 of file AliTrackContainer.cxx.
Referenced by AliTrackContainerToyModel::GetAcceptMomentum().
|
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 56 of file AliTrackContainer.h.
|
virtual |
Get track at index in the container if accepted by the track selection provided
[in] | i | Index of the particle in the container |
Definition at line 246 of file AliTrackContainer.cxx.
Referenced by AliAnalysisTaskEmcalQGTagging::Coronna(), AliAnalysisTaskEmcalHfeTagging::Coronna(), GetAcceptMomentum(), GetAcceptParticle(), GetNextAcceptTrack(), AliAnalysisTaskEmcalQGTagging::SelectTrigger(), AliAnalysisTaskEmcalHfeTagging::SelectTrigger(), AliAnalysisTaskSubJetFraction::SelectTriggerHadron(), and AliAnalysisTaskRecoilJetYield::SelectTriggerHadron().
|
inline |
Definition at line 90 of file AliTrackContainer.h.
|
protectedvirtual |
Create default array name for the track container. The default array name will be
[in] | ev | Input event, used for data type selection |
Definition at line 655 of file AliTrackContainer.cxx.
|
inlinestatic |
Definition at line 99 of file AliTrackContainer.h.
Referenced by EMCalTriggerPtAnalysis::AliEmcalAnalysisFactory::TrackCutsFactory().
|
inlinevirtual |
Definition at line 61 of file AliTrackContainer.h.
Fills a TLorentzVector with the momentum information of the \( i^{th} \) particle in the container, using a global mass hypothesis. In case the provided index is out of range, false is returned as return value.
[out] | mom | Momentum vector of the \( i^{th} \) particle in the array |
[in] | i | Index of the particle to check |
Reimplemented from AliParticleContainer.
Reimplemented in AliTrackContainerToyModel.
Definition at line 371 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), and AliTrackContainerToyModel::GetMomentum().
|
virtual |
Retrieve momentum information of a track and fill a TLorentzVector with it. In case the optional parameter mass is provided, it is used as mass hypothesis, otherwise the mass hypothesis from the particle itself is used.
[out] | mom | Momentum vector to be filled |
[in] | track | Track from which the momentum information is obtained. |
[in] | mass | (Optional) Mass hypothesis |
Reimplemented in AliTrackContainerToyModel.
Definition at line 321 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), AliTrackContainerToyModel::GetMomentumFromTrack(), and GetMomentumFromTrack().
|
virtual |
Fills a TLorentzVector with the momentum information of the track provided under a global mass hypothesis.
[out] | mom | Momentum vector of the particle provided |
[in] | track | Track from which to obtain the momentum information |
Definition at line 357 of file AliTrackContainer.cxx.
|
inline |
Definition at line 74 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskEmcalJetPerformance::FillClusterHistograms().
|
virtual |
Fills a TLorentzVector with the monentum infomation of the next accepted particle in the container, using a global mass hypothesis. In case the iteration reached the end of the array, false is returned as return value.
[out] | mom | Momentum vector of the next particle in the array |
Reimplemented from AliParticleContainer.
Reimplemented in AliTrackContainerToyModel.
Definition at line 478 of file AliTrackContainer.cxx.
Referenced by AliTrackContainerToyModel::GetNextAcceptMomentum().
|
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 57 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskChargedJetsHadronCF::AddEventToTree(), AliAnalysisTaskJetV3::CalculateRandomCone(), AliAnalysisTaskJetV3::CorrectRho(), AliAnalysisTaskV0sInJetsEmcal::FillHistograms(), AliAnalysisTaskChargedJetsHadronCF::Run(), and AliAnalysisTaskEmcalJetHadEPpid::Run().
|
virtual |
Get next accepted particle in the container selected using the track cuts provided.
Definition at line 264 of file AliTrackContainer.cxx.
Referenced by GetNextAcceptMomentum(), and GetNextAcceptParticle().
|
virtual |
Fills a TLorentzVector with the momentum information of the next particle in the container, using a global mass hypothesis. In case the iterator reached the end of the array, false is returned as return value.
[out] | mom | Momentum vector of the next particle |
Reimplemented from AliParticleContainer.
Reimplemented in AliTrackContainerToyModel.
Definition at line 406 of file AliTrackContainer.cxx.
Referenced by AliTrackContainerToyModel::GetNextMomentum().
|
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 58 of file AliTrackContainer.h.
|
virtual |
Get next particle in the container
Definition at line 282 of file AliTrackContainer.cxx.
Referenced by GetNextMomentum(), and GetNextParticle().
|
inline |
Definition at line 73 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskEmcalJetHCorrelations::Run().
Int_t AliTrackContainer::GetNumberOfCutObjects | ( | ) | const |
Get number of track cut objects assigned to this container.
Definition at line 578 of file AliTrackContainer.cxx.
|
inlinevirtual |
Get \( i^{th} \) particle in the container.
[in] | i | Index of the particle to access |
Reimplemented from AliParticleContainer.
Definition at line 55 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskJetV3::CalculateEventPlaneTPC().
const char * AliTrackContainer::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 track selection.
Definition at line 648 of file AliTrackContainer.cxx.
|
virtual |
Get track at index in the container
[in] | i | Index of the particle in the container |
Definition at line 232 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), GetAcceptTrack(), GetMomentum(), GetNextTrack(), and GetParticle().
AliVCuts * AliTrackContainer::GetTrackCuts | ( | Int_t | icut | ) |
Get the cut object at index (icut) assigned to this container.
[in] | icut | Index of the cut in the container |
Definition at line 589 of file AliTrackContainer.cxx.
|
inline |
Definition at line 75 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskEmcalJetQA::DoTrackLoop().
Char_t AliTrackContainer::GetTrackType | ( | const AliVTrack * | track | ) | const |
Retrieve the track type using the IndexOf method of the TClonesArray to retrieve the index of the provided track.
track | Track for which the type is requested. |
Definition at line 301 of file AliTrackContainer.cxx.
Referenced by AliAnalysisTaskEmcalJetQA::DoTrackLoop(), AliEmcalTrackingQATask::FillHistograms(), AliAnalysisTaskPWGJEQA::FillTrackHistograms(), and GetMomentumFromTrack().
Definition at line 76 of file AliTrackContainer.h.
bool AliTrackContainer::IsHybridTrackSelection | ( | ) | const |
Definition at line 598 of file AliTrackContainer.cxx.
Referenced by GetAcceptMomentum(), GetMomentum(), GetMomentumFromTrack(), GetNextAcceptMomentum(), GetNextMomentum(), and NextEvent().
void AliTrackContainer::NextEvent | ( | const AliVEvent * | event | ) |
Preparation for the next event: Run the track selection of all bit and store the pointers to selected tracks in a separate array.
Definition at line 156 of file AliTrackContainer.cxx.
Referenced by AliTrackContainerV0::NextEvent().
|
private |
|
inline |
Definition at line 88 of file AliTrackContainer.h.
Referenced by AddTaskEMCALAlig(), and AliEmcalCorrectionTask::SetupContainer().
void AliTrackContainer::SetArray | ( | const AliVEvent * | event | ) |
Get array from event. Also creating the virtual track selection for the period provided in the constructor.
[in] | event | Event from which the data is read |
Definition at line 90 of file AliTrackContainer.cxx.
Referenced by AliTrackContainerV0::SetArray().
|
inlinestatic |
Definition at line 98 of file AliTrackContainer.h.
|
inline |
Definition at line 81 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskV0sInJetsEmcal::ExecOnce().
|
inline |
Definition at line 82 of file AliTrackContainer.h.
|
inline |
Definition at line 94 of file AliTrackContainer.h.
|
inline |
Definition at line 93 of file AliTrackContainer.h.
|
inline |
Definition at line 84 of file AliTrackContainer.h.
Referenced by AliAnalysisTaskEmcalJetHCorrelations::ConfigureForEmbeddingAnalysis(), and AliEmcalCorrectionTask::SetupContainer().
|
inline |
Definition at line 80 of file AliTrackContainer.h.
Referenced by AddTaskEMCALAlig(), and AliEmcalCorrectionTask::SetupContainer().
|
protected |
track filter bits
Definition at line 128 of file AliTrackContainer.h.
Referenced by AddAODFilterBit(), GetAODFilterBits(), SetAODFilterBits(), and SetArray().
|
protected |
! track selection object
Definition at line 130 of file AliTrackContainer.h.
Referenced by NextEvent(), and SetArray().
|
protected |
! tracks filtered using fEmcalTrackSelection
Definition at line 131 of file AliTrackContainer.h.
Referenced by GetTrack(), GetTrackType(), and NextEvent().
|
staticprotected |
! default period string used to generate track cuts
Definition at line 122 of file AliTrackContainer.h.
Referenced by AliTrackContainer(), GetDefTrackCutsPeriod(), and SetDefTrackCutsPeriod().
|
protected |
Distinct hybrid tracks via SPD information.
Definition at line 127 of file AliTrackContainer.h.
Referenced by NextEvent(), and SetITSHybridTrackDistinction().
|
protected |
list of track cut objects
Definition at line 125 of file AliTrackContainer.h.
Referenced by AddTrackCuts(), GetNumberOfCutObjects(), GetTrackCuts(), and SetArray().
|
protected |
accept track if any of the cuts is fulfilled
Definition at line 126 of file AliTrackContainer.h.
Referenced by SetArray(), SetSelectionModeAll(), and SetSelectionModeAny().
|
protected |
period string used to generate track cuts
Definition at line 129 of file AliTrackContainer.h.
Referenced by AliTrackContainer(), SetArray(), and SetTrackCutsPeriod().
|
protected |
track filter type
Definition at line 124 of file AliTrackContainer.h.
Referenced by GetTrackFilterType(), IsHybridTrackSelection(), SetArray(), SetFilterHybridTracks(), and SetTrackFilterType().
|
protected |
! track types
Definition at line 132 of file AliTrackContainer.h.
Referenced by GetAcceptMomentum(), GetMomentum(), GetNextAcceptMomentum(), GetNextMomentum(), GetTrackType(), and NextEvent().