AliPhysics  88b9378 (88b9378)
Go to the documentation of this file.
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 class TClonesArray;
6 class TString;
7 class AliMCParticle;
8 class AliVCluster;
9 class AliVTrack;
10 class AliVParticle;
11 class AliVCaloCells;
12 class TH1;
13 class TProfile;
14 class AliEMCALGeometry;
15 class AliGenPythiaEventHeader;
16 class AliGenHerwigEventHeader;
17 class AliVCaloTrigger;
18 class AliAnalysisUtils;
19 class AliEventCuts;
20 class AliEMCALTriggerPatchInfo;
21 class AliAODTrack;
22 class AliEmcalPythiaInfo;
23 class AliAODInputHandler;
24 class AliESDInputHandler;
26 #include "Rtypes.h"
27 #include "TArrayI.h"
29 #include "AliParticleContainer.h"
30 #include "AliMCParticleContainer.h"
31 #include "AliTrackContainer.h"
32 #include "AliClusterContainer.h"
33 #include "AliEmcalList.h"
35 #include "AliAnalysisTaskSE.h"
70  public:
76  enum EDataType_t {
80  };
86  enum BeamType {
87  kNA = -1,
88  kpp = 0,
89  kAA = 1,
90  kpA = 2
91  };
97  enum TriggerType {
98  kND = -1,
99  kJ1 = 0,
100  kJ2 = 1,
101  kG1 = 2,
102  kG2 = 3,
103  kL0 = 4
104  };
116  };
125  };
142  AliAnalysisTaskEmcal(const char *name, Bool_t histo=kFALSE);
147  virtual ~AliAnalysisTaskEmcal();
167  AliTrackContainer *AddTrackContainer(const char *n);
206  AliParticleContainer *GetParticleContainer(const char* name) const;
220  AliClusterContainer *GetClusterContainer(const char* name) const;
222  AliMCParticleContainer *GetMCParticleContainer(const char* name) const { return dynamic_cast<AliMCParticleContainer*>(GetParticleContainer(name)); }
224  AliTrackContainer *GetTrackContainer(const char* name) const { return dynamic_cast<AliTrackContainer*>(GetParticleContainer(name)) ; }
225  void RemoveParticleContainer(Int_t i=0) { fParticleCollArray.RemoveAt(i) ; }
226  void RemoveClusterContainer(Int_t i=0) { fClusterCollArray.RemoveAt(i) ; }
227  void SetCaloCellsName(const char *n) { fCaloCellsName = n ; }
229  void SetCaloTriggersName(const char *n) { fCaloTriggersName = n ; }
230  void SetCentRange(Double_t min, Double_t max) { fMinCent = min ; fMaxCent = max ; }
231  void SetCentralityEstimator(const char *c) { fCentEst = c ; }
239  void SetClusPtCut(Double_t cut, Int_t c=0);
248  void SetClusTimeCut(Double_t min, Double_t max, Int_t c=0);
252  void SetHistoBins(Int_t nbins, Double_t min, Double_t max) { fNbins = nbins; fMinBinPt = min; fMaxBinPt = max ; }
254  void SetIsEmbedded(Bool_t i) { fIsEmbedded = i ; }
255  void SetIsPythia(Bool_t i) { fIsPythia = i ; }
256  void SetIsHerwig(Bool_t i) { fIsHerwig = i ; }
285  void SetUserPtHardBinning(const TArrayI &binning) { fPtHardBinning = binning; }
288  void SetMinMCLabel(Int_t s) { fMinMCLabel = s ; }
289  void SetMinNTrack(Int_t min) { fMinNTrack = min ; }
292  virtual void SetNCentBins(Int_t n) { fNcentBins = n ; }
295  void SetOffTrigger(UInt_t t) { fOffTrigger = t ; }
304  void SetTrackEtaLimits(Double_t min, Double_t max, Int_t c=0);
313  void SetTrackPhiLimits(Double_t min, Double_t max, Int_t c=0);
321  void SetTrackPtCut(Double_t cut, Int_t c=0);
323  void SetTrigClass(const char *n) { fTrigClass = n ; }
324  void SetMinBiasTriggerClassName(const char *n) { fMinBiasRefTrigger = n ; }
326  void SetUseAliAnaUtils(Bool_t b, Bool_t bRejPilup = kTRUE) { fUseAliAnaUtils = b ; fRejectPileup = bRejPilup ; }
328  void SetVzRange(Double_t min, Double_t max) { fMinVz = min ; fMaxVz = max ; }
334  void SetPythiaInfoName(const char *n) { fPythiaInfoName = n ; }
335  const TString& GetPythiaInfoName() const { return fPythiaInfoName ; }
336  const AliEmcalPythiaInfo *GetPythiaInfo() const { return fPythiaInfo ; }
338  void SetMCFilter() { fMCRejectFilter = kTRUE ; }
339  void ResetMCFilter() { fMCRejectFilter = kFALSE ; }
347  // Static Utilities
352  static AliAODInputHandler* AddAODHandler();
358  static AliESDInputHandler* AddESDHandler();
360  protected:
365  void LoadPythiaInfo(AliVEvent *event);
367  void SetRejectionReasonLabels(TAxis* axis);
380  Bool_t AcceptCluster(AliVCluster *clus, Int_t c = 0) const;
391  Bool_t AcceptTrack(AliVParticle *track, Int_t c = 0) const;
398  void AddObjectToEvent(TObject *obj, Bool_t attempt = kFALSE);
407  AliVParticle *GetAcceptParticleFromArray(Int_t p, Int_t c=0) const;
416  AliVCluster *GetAcceptClusterFromArray(Int_t cl, Int_t c=0) const;
428  TClonesArray *GetArrayFromEvent(const char *name, const char *clname=0);
437  BeamType GetBeamType() const;
444  TClonesArray *GetParticleArray(Int_t i=0) const;
451  TClonesArray *GetClusterArray(Int_t i=0) const;
458  Int_t GetNParticles(Int_t i=0) const;
466  Int_t GetNClusters(Int_t i=0) const;
479  AliEMCALTriggerPatchInfo *GetMainTriggerPatch(TriggerCategory triggersel = kTriggerLevel1Jet, Bool_t doSimpleOffline = kFALSE);
489  Bool_t HasTriggerType(TriggerType triggersel);
513  Bool_t PythiaInfoFromFile(const char* currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard);
523  Bool_t IsTrackInEmcalAcceptance(AliVParticle* part, Double_t edges=0.9) const;
529  void GeneratePythiaInfoObject(AliMCEvent* mcEvent);
607  void UserExec(Option_t *option);
619  Bool_t UserNotify();
653  virtual void ExecOnce();
669  virtual Bool_t FillGeneralHistograms();
686  virtual Bool_t IsEventSelected();
699  virtual Bool_t IsTriggerSelected();
724  virtual Bool_t RetrieveEventObjects();
733  virtual void RunChanged(Int_t /*newrun*/) {}
742  virtual void UserExecOnce() {}
749  virtual void UserFileChanged() {}
758  virtual Bool_t FillHistograms() { return kTRUE ; }
767  virtual Bool_t Run() { return kTRUE ; }
769  // Static utilities
779  static void GetEtaPhiDiff(const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff);
786  static Byte_t GetTrackType(const AliVTrack *t);
799  static Byte_t GetTrackType(const AliAODTrack *aodTrack, UInt_t filterBit1, UInt_t filterBit2);
801  static Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rMin = -TMath::Pi()/2, Double_t rMax = 3*TMath::Pi()/2);
803  static void GenerateFixedBinArray(Int_t n, Double_t min, Double_t max, Double_t* array);
836  static Double_t GetParallelFraction(AliVParticle* part1, AliVParticle* part2);
844  static Double_t GetParallelFraction(const TVector3& vect1, AliVParticle* part2);
848  // Task configuration
906  // Service fields
908  AliEventCuts *fAliEventCuts;
909  AliAnalysisUtils *fAliAnalysisUtils;
911  AliEMCALGeometry *fGeom;
912  TClonesArray *fTracks;
913  TClonesArray *fCaloClusters;
914  AliVCaloCells *fCaloCells;
915  AliVCaloTrigger *fCaloTriggers;
916  TClonesArray *fTriggerPatchInfo;
927  AliGenPythiaEventHeader *fPythiaHeader;
928  AliGenHerwigEventHeader *fHerwigHeader;
939  // Output
947  TProfile *fHistXsection;
959  private:
960  AliAnalysisTaskEmcal(const AliAnalysisTaskEmcal&); // not implemented
961  AliAnalysisTaskEmcal &operator=(const AliAnalysisTaskEmcal&); // not implemented
964  ClassDef(AliAnalysisTaskEmcal, 18) // EMCAL base analysis task
966 };
977 {
978  Double_t dphi = -999;
979  const Double_t tpi = TMath::TwoPi();
981  if (phia < 0) phia += tpi;
982  else if (phia > tpi) phia -= tpi;
983  if (phib < 0) phib += tpi;
984  else if (phib > tpi) phib -= tpi;
985  dphi = phib - phia;
986  if (dphi < rangeMin) dphi += tpi;
987  else if (dphi > rangeMax) dphi -= tpi;
989  return dphi;
990 }
1002 {
1003  Double_t binWidth = (max-min)/n;
1004  array[0] = min;
1005  for (Int_t i = 1; i <= n; i++) {
1006  array[i] = array[i-1]+binWidth;
1007  }
1008 }
1020 {
1021  Double_t *array = new Double_t[n+1];
1022  GenerateFixedBinArray(n, min, max, array);
1023  return array;
1024 }
1026 #endif
void SetJetPtFactor(Float_t f)
void SetCentRange(Double_t min, Double_t max)
void SetRecycleUnusedEmbeddedEventsMode(Bool_t b)
virtual Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
void SetPythiaInfoName(const char *n)
void SetTrackPtFactor(Float_t f)
Bool_t fGeneratePythiaInfoObject
Generate Pythia info object.
TObjArray fClusterCollArray
cluster collection array
Int_t fNVertSPDCont
!event SPD vertex number of contributors
AliMCParticleContainer * GetMCParticleContainer(const char *name) const
Bool_t fIsPythia
trigger, if it is a PYTHIA production
double Double_t
Definition: External.C:58
void SetUseInternalEventSelection(Bool_t doUse)
TH2 * fHistPtHardBinCorr
!Correlation between global and local (per-event) -hard bin
TH1 * fHistTrials
!trials from pyxsec.root
Bool_t fPtHardInitialized
!flag whether the -hard bin was initialized, purely for internal processing
static Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2)
EMCAL Level1 gamma trigger, low threshold.
AliEmcalPythiaInfo * fPythiaInfo
!event parton info
Bool_t AcceptTrack(AliVParticle *track, Int_t c=0) const
ULong_t GetTriggerList()
Get list of selected triggers of the given event.
Int_t fPtHardBinGlobal
!event -hard bin, detected from filename
EMCAL Level1 jet trigger, low threshold.
Bool_t HasTriggerType(TriggerType triggersel)
Check if event has a given trigger type.
void SetUserPtHardBinning(const TArrayI &binning)
Set a non-standard -hard binning.
Int_t fNTrials
!event trials
void SetMinNTrack(Int_t min)
UInt_t fOffTrigger
offline trigger for event selection
void AdoptParticleContainer(AliParticleContainer *cont)
Double_t fVertexSPD[3]
!event Svertex
Double_t fMinCent
min centrality for event selection
Double_t fTrackPtCut
cut on track pt in event selection
virtual void UserFileChanged()
Virtual method for user code to be executed when a file changed.
Bool_t fRecycleUnusedEmbeddedEventsMode
Allows the recycling of embedded events which fail internal event selection. See the embedding helper...
No special treatment for EMCal triggers.
Recalculated jet trigger patch; does not need to be above trigger threshold.
Base task in the EMCAL framework.
void SetMinVertexContrib(Int_t min)
Bool_t fLocalInitialized
whether or not the task has been already initialized
Bool_t fUsePtHardBinScaling
Use -hard bin scaling in merging.
TH2 * fHistPtHardCorrGlobal
!Correlation between -hard value and global bin
Container with name, TClonesArray and cuts for particles.
void SetUseAliAnaUtils(Bool_t b, Bool_t bRejPilup=kTRUE)
Bool_t fUseXsecFromHeader
! Use cross section from header instead of pyxsec.root (purely transient)
void SetUseSPDTrackletVsClusterBG(Bool_t b)
void SetTrackPtCut(Double_t cut, Int_t c=0)
Apply cut on the transverse momentum of all tracks in the track container with index c...
static void GetEtaPhiDiff(const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
Calculate and difference between a track (t) and a cluster (c).
Double_t fMinBinPt
min pt in histograms
Double_t fEPV0
!event plane V0
void SetUseNewCentralityEstimation(Bool_t b)
void SetCountDownscaleCorrectedEvents(Bool_t d)
Int_t fNPtHardBins
Number of -hard bins in the dataset.
Bool_t fGeneralHistograms
whether or not it should fill some general histograms
Bool_t AcceptCluster(AliVCluster *clus, Int_t c=0) const
Cluster selection.
TCanvas * c
Definition: TestFitELoss.C:172
AliAnalysisTaskEmcal & operator=(const AliAnalysisTaskEmcal &)
virtual void UserExecOnce()
Task initializations handled in user tasks.
void SetGetPtHardBinFromPath(Bool_t docheck)
Switch on/off getting bin from the file path.
Int_t fCentBin
!event centrality bin
virtual Bool_t IsTriggerSelected()
Selection of a hardware trigger.
TH1 * fHistEventsAfterSel
!total number of events per pt hard bin after selection
Int_t fMinVertexContrib
Min. number of vertex contributors.
void SetTriggerTypeSel(TriggerType t)
Float_t fPtHardAndClusterPtFactor
Factor between ptHard and cluster pT to reject/accept event.
Double_t fMinPtTrackInEmcal
min pt track in emcal
void SetVzRange(Double_t min, Double_t max)
TH1 * fHistEventPlane
!event plane distribution
AliTrackContainer * GetTrackContainer(const char *name) const
TH1 * fHistEvents
!total number of events per pt hard bin
void SetClusPtCut(Double_t cut, Int_t c=0)
Apply cut on for all clusters in container with index c.
AliClusterContainer * AddClusterContainer(const char *n)
Create new cluster container and attach it to the task.
Double_t fEPV0C
!event plane V0C
TH1 * fHistCentrality
!event centrality distribution
void SetCaloTriggerPatchInfoName(const char *n)
Container for particles within the EMCAL framework.
Bool_t fIsEmbedded
trigger, embedded signal
void AdoptClusterContainer(AliClusterContainer *cont)
TObjArray fParticleCollArray
particle/track collection array
Switch for the beam type.
void SetTrackEtaLimits(Double_t min, Double_t max, Int_t c=0)
Apply cut on the pseudorapidity of the all tracks in the track container with index c...
AliParticleContainer * GetParticleContainer(Int_t i=0) const
Get particle container attached to this task.
void SetEMCalTriggerMode(EMCalTriggerMode_t m)
TProfile * fHistXsectionAfterSel
!x section from pythia header
Switch for EMCAL trigger types.
Bool_t CheckMCOutliers()
Filter the mc tails in pt-hard distributions.
EMCalTriggerMode_t fEMCalTriggerMode
EMCal trigger selection mode.
virtual Bool_t FillHistograms()
Function filling histograms.
void SetForceBeamType(BeamType f)
Int_t GetNParticles(Int_t i=0) const
Get number of particles in container attached to this task with index i.
TClonesArray * fCaloClusters
Bool_t fUseNewCentralityEstimation
Use new centrality estimation (for 2015 data)
Bool_t IsTrackInEmcalAcceptance(AliVParticle *part, Double_t edges=0.9) const
Determines if a track is inside the EMCal acceptance.
int Int_t
Definition: External.C:63
TH1 * fHistTriggerClasses
!number of events in each trigger class
Bool_t fCountDownscaleCorrectedEvents
Count event number corrected for downscaling.
unsigned int UInt_t
Definition: External.C:33
float Float_t
Definition: External.C:68
Double_t fMaxVz
max vertex for event selection
void GeneratePythiaInfoObject(AliMCEvent *mcEvent)
Copy some information about the Pythia event in a PythaInfo object.
AliEMCALGeometry * fGeom
!emcal geometry
The overlap between low and high threshold trigger is assigned to the lower threshold only...
kRecalculated gamma trigger patch; does not need to be above trigger threshold
TString fCaloTriggerPatchInfoName
trigger patch info array name
TString fCaloTriggersName
name of calo triggers collection
TH1 * fHistTriggerClassesCorr
!corrected number of events in each trigger class
Bool_t fIsHerwig
trigger, if it is a HERWIG production
AliGenPythiaEventHeader * fPythiaHeader
!event Pythia header
void SetTrackPhiLimits(Double_t min, Double_t max, Int_t c=0)
Apply cut on azimuthal angle of the all tracks in the track container with index c...
AliParticleContainer * AddParticleContainer(const char *n)
Create new particle container and attach it to the task.
AliAnalysisUtils * fAliAnalysisUtils
!vertex selection (optional)
BeamType fForceBeamType
forced beam type
Int_t fNcentBins
how many centrality bins
AliClusterContainer * GetClusterContainer(Int_t i=0) const
Get cluster container attached to this task.
TriggerType fTriggerTypeSel
trigger type to select based on trigger patches
virtual Bool_t FillGeneralHistograms()
Filling general histograms.
TString fTrigClass
trigger class name for event selection
Float_t fPtHardAndJetPtFactor
Factor between ptHard and jet pT to reject/accept event.
TClonesArray * GetParticleArray(Int_t i=0) const
Get TClonesArray with particles.
BeamType GetBeamType() const
Get beam type.
void SetUsePtHardBinScaling(Bool_t b)
Double_t fMinVz
min vertex for event selection
BeamType fBeamType
!event beam type
Float_t fPtHardAndTrackPtFactor
Factor between ptHard and track pT to reject/accept event.
Double_t fCent
!event centrality
Double_t fMinEventPlane
minimum event plane value
TString fCaloCellsName
name of calo cell collection
Int_t fMCLabelShift
if MC label > fMCLabelShift, MC label -= fMCLabelShift
Int_t GetNClusters(Int_t i=0) const
Get number of clusters in the cluster container attached to this task with index i.
Int_t fNVertCont
!event vertex number of contributors
Bool_t fMCRejectFilter
enable the filtering of events by tail rejection
Bool_t fGetPtHardBinFromName
Obtain pt-hard bin from file path.
unsigned long ULong_t
Definition: External.C:38
void RemoveClusterContainer(Int_t i=0)
Double_t fZvertexDiff
upper limit for distance between primary and SPD vertex
AliEMCALTriggerPatchInfo * GetMainTriggerPatch(TriggerCategory triggersel=kTriggerLevel1Jet, Bool_t doSimpleOffline=kFALSE)
Get main trigger match.
EMCAL Level0 trigger.
EMCAL Level1 jet trigger, high threshold.
void AdoptMCParticleContainer(AliMCParticleContainer *cont)
Int_t fSelectPtHardBin
select one pt hard bin for analysis
AliMCParticleContainer * AddMCParticleContainer(const char *n)
Create new container for MC particles and attach it to the task.
static Double_t GetParallelFraction(AliVParticle *part1, AliVParticle *part2)
Calculates the fraction of momentum z of part 1 w.r.t. part 2 in the direction of part 2...
virtual Bool_t RetrieveEventObjects()
Retrieve common objects from event.
Bool_t fRejectPileup
Reject pilup using function AliAnalysisUtils::IsPileUpEvent()
Bool_t fUseInternalEventSelection
Use builtin event selection of the AliAnalysisTaskEmcal instead of AliEventCuts.
void RemoveParticleContainer(Int_t i=0)
TProfile * fHistXsection
!x section from pyxsec.root
Bool_t PythiaInfoFromFile(const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard)
Loading PYTHIA information from external cross section file into the task.
void UserExec(Option_t *option)
Event loop, called for each event.
Int_t fMinMCLabel
minimum MC label value for the tracks/clusters being considered MC particles
virtual void SetNCentBins(Int_t n)
AliVCaloCells * fCaloCells
void SetTrigClass(const char *n)
TClonesArray * GetArrayFromEvent(const char *name, const char *clname=0)
Read a TClonesArray from event.
Enhanced TList-derived class that implements correct merging for pt_hard binned production.
Definition: AliEmcalList.h:25
Double_t fEventPlaneVsEmcal
select events which have a certain event plane wrt the emcal
Bool_t IsEventSelectedInternal()
Perform event selection (old method)
virtual Bool_t IsEventSelected()
Performing event selection.
Float_t fPtHard
!event -hard
TH1 * fHistPtHard
! -hard distribution
static Double_t * GenerateFixedBinArray(Int_t n, Double_t min, Double_t max)
AliEmcalList * fOutput
!output list
void SetZvertexDiffValue(Double_t cut)
Double_t fMaxBinPt
max pt in histograms
Int_t fPtHardBin
!event -hard bin
void SetHistoBins(Int_t nbins, Double_t min, Double_t max)
AliMCParticleContainer * GetMCParticleContainer(Int_t i=0) const
virtual void RunChanged(Int_t)
Process tasks relevant when a file with a different run number is processed.
TClonesArray * fTracks
TH1 * fHistTrialsAfterSel
!total number of trials per pt hard bin after selection
AliGenHerwigEventHeader * fHerwigHeader
!event Herwig header
Definition: External.C:220
void LoadPythiaInfo(AliVEvent *event)
Load parton info.
Bool_t fIsEsd
!whether it&#39;s an ESD analysis
static AliAODInputHandler * AddAODHandler()
Add an AOD handler to the analysis manager.
Double_t fVertex[3]
!event vertex
AliTrackContainer * AddTrackContainer(const char *n)
Create new track container and attach it to the task.
AliTrackContainer * GetTrackContainer(Int_t i=0) const
void SetMinBiasTriggerClassName(const char *n)
Handling of the EMCAL trigger thresholds.
Bool_t fCreateHisto
whether or not create histograms
void SetNumberOfPtHardBins(Int_t nbins)
Set the number of -hard bins.
Bool_t UserNotify()
Notifying the user that the input data file has changed and performing steps needed to be done...
Store some informaion about a Pythia eventThis class is used to store some information about a Pythia...
TH1 * fHistEventRejection
!book keep reasons for rejecting event
void SetMakeGeneralHistograms(Bool_t g)
TClonesArray * fTriggerPatchInfo
!trigger patch info array
TClonesArray * GetClusterArray(Int_t i=0) const
Get TClonesArray with EMCAL clusters.
void SetNeedEmcalGeom(Bool_t n)
Bool_t FileChanged()
Steps to be executed when a few file is loaded into the input handler.
Double_t fEPV0A
!event plane V0A
void SetEventPlaneVsEmcal(Double_t ep)
void SetCaloTriggersName(const char *n)
const AliEmcalPythiaInfo * GetPythiaInfo() const
AliEventCuts * fAliEventCuts
!Event cuts (run2 defaults)
virtual void ExecOnce()
Perform steps needed to initialize the analysis.
TString fCentEst
name of V0 centrality estimator
TString fPythiaInfoName
name of pythia info object
const char Option_t
Definition: External.C:48
Int_t fRunNumber
!run number (triggering RunChanged())
EMCAL Level1 gamma trigger, high threshold.
void AddObjectToEvent(TObject *obj, Bool_t attempt=kFALSE)
Add object to event.
AliVCaloTrigger * fCaloTriggers
!calo triggers
void SetRejectionReasonLabels(TAxis *axis)
void UserCreateOutputObjects()
Main initialization function on the worker.
Bool_t fFileChanged
! Signal triggered when the file has changed
TH1 * fHistZVertex
!z vertex position
Int_t fMinNTrack
minimum nr of tracks in event with pT>fTrackPtCut
static Byte_t GetTrackType(const AliVTrack *t)
Get track type encoded from bits 20 and 21.
void SetGeneratePythiaInfoObject(Bool_t b)
const Int_t nbins
Bool_t fUseAliAnaUtils
used for LHC13* data: z-vtx, Ncontributors, z-vtx resolution cuts
void SetClusTimeCut(Double_t min, Double_t max, Int_t c=0)
Apply cut on cluster time for clusters in container with index c.
bool Bool_t
Definition: External.C:53
ULong_t fTriggers
list of fired triggers
static AliESDInputHandler * AddESDHandler()
Add a ESD handler to the analysis manager.
Double_t fMaxEventPlane
maximum event plane value
Float_t fXsection
!x-section from pythia header
Switch for the data type.
void SetCaloCellsName(const char *n)
void SetCentralityEstimator(const char *c)
TH1 * fHistEventCount
!incoming and selected events
Double_t fMaxCent
max centrality for event selection
void SetMinPtTrackInEmcal(Double_t min)
Online trigger categories.
AliVParticle * GetAcceptParticleFromArray(Int_t p, Int_t c=0) const
Get particle p if accepted from container with index c If particle not accepted return 0...
Container structure for EMCAL clusters.
TString fMinBiasRefTrigger
Name of the minmum bias reference trigger, used in the calculation of downscale-corrected event numbe...
Container for MC-true particles within the EMCAL framework.
Bool_t fNeedEmcalGeom
whether or not the task needs the emcal geometry
AliVCluster * GetAcceptClusterFromArray(Int_t cl, Int_t c=0) const
Get cluster cl if accepted from container c If particle not accepted return 0.
void SetClusterPtFactor(Float_t f)
const TString & GetPythiaInfoName() const
void AdoptTrackContainer(AliTrackContainer *cont)
Definition: External.C:196
Int_t fNbins
no. of pt bins
Bool_t fTklVsClusSPDCut
Apply tracklet-vs-cluster SPD cut to reject background events in pp.
Default constructor.
TH2 * fHistPtHardCorr
!Correlation between -hard value and bin
TArrayI fPtHardBinning
-hard binning
virtual ~AliAnalysisTaskEmcal()
static Double_t fgkEMCalDCalPhiDivide
phi value used to distinguish between DCal and EMCal