ROOT logo
AliRoot » PWGGA » CALOTRACKCORRELATIONS » AliAnaPhoton

class AliAnaPhoton: public AliAnaCaloTrackCorrBaseClass


 Class for the photon identification.
 Clusters from calorimeters are identified as photons
 and kept in the AOD. Few histograms produced.
 Produces input for other analysis classes like AliAnaPi0,
 AliAnaParticleHadronCorrelation ...

 -- Author: Gustavo Conesa (LNF-INFN)

Function Members (Methods)

public:
AliAnaPhoton()
virtual~AliAnaPhoton()
voidTObject::AbstractMethod(const char* method) const
virtual voidAliAnaCaloTrackCorrBaseClass::AddAODParticle(AliAODPWG4Particle part)
virtual voidAliAnaCaloTrackCorrBaseClass::AddToHistogramsName(TString add)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual Int_tAliAnaCaloTrackCorrBaseClass::CheckMixedEventVertex(Int_t caloLabel, Int_t trackLabel)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
Bool_tClusterSelected(AliVCluster* cl, Int_t nlm)
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidAliAnaCaloTrackCorrBaseClass::ConnectInputOutputAODBranches()
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual Bool_tAliAnaCaloTrackCorrBaseClass::DoOwnMix() const
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
voidFillAcceptanceHistograms()
virtual voidAliAnaCaloTrackCorrBaseClass::FillEventMixPool()
voidFillNOriginHistograms(Int_t n)
voidFillNPrimaryHistograms(Int_t n)
voidFillPileUpHistograms(AliVCluster* cluster, AliVCaloCells* cells, Int_t absIdMax)
voidFillShowerShapeHistograms(AliVCluster* cluster, Int_t mcTag, Float_t maxCellEFraction)
voidFillTrackMatchingResidualHistograms(AliVCluster* calo, Int_t cut)
virtual AliVCluster*AliAnaCaloTrackCorrBaseClass::FindCluster(TObjArray* clusters, const Int_t id, Int_t& iclus, const Int_t first = 0)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetAddedHistogramsStringToName() const
virtual TObjString*GetAnalysisCuts()
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetAODBranch(const TString& aodBranchName) const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetAODCaloClusters() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetAODObjArrayName() const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetAODTracks() const
virtual AliAODJetEventBackground*AliAnaCaloTrackCorrBaseClass::GetBackgroundJets() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetBaseParametersList()
virtual AliCaloPID*AliAnaCaloTrackCorrBaseClass::GetCaloPID()
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetCalorimeter() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetCalorimeterString() const
virtual AliCalorimeterUtils*AliAnaCaloTrackCorrBaseClass::GetCaloUtils() const
virtual AliCentrality*AliAnaCaloTrackCorrBaseClass::GetCentrality() const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetCreateOutputAODBranch()
virtual TList*GetCreateOutputObjects()
virtual TObjArray*AliAnaCaloTrackCorrBaseClass::GetCTSTracks() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetDebug() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual AliVCaloCells*AliAnaCaloTrackCorrBaseClass::GetEMCALCells() const
virtual TObjArray*AliAnaCaloTrackCorrBaseClass::GetEMCALClusters() const
virtual AliEMCALGeometry*AliAnaCaloTrackCorrBaseClass::GetEMCALGeometry() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventCentrality() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventCentralityBin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventMixBin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventMixBin(Int_t iCen, Int_t iVz, Int_t iRP) const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventNumber() const
virtual AliEventplane*AliAnaCaloTrackCorrBaseClass::GetEventPlane() const
virtual Double_tAliAnaCaloTrackCorrBaseClass::GetEventPlaneAngle() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetEventPlaneMethod() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventRPBin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetEventVzBin() const
virtual AliFiducialCut*AliAnaCaloTrackCorrBaseClass::GetFiducialCut()
Int_tAliAnaCaloTrackCorrBaseClass::GetFirstSMCoveredByTRD() const
virtual AliHistogramRanges*AliAnaCaloTrackCorrBaseClass::GetHistogramRanges()
virtual const char*TObject::GetIconName() const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetInputAODBranch() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetInputAODName() const
virtual AliIsolationCut*AliAnaCaloTrackCorrBaseClass::GetIsolationCut()
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetMaxEnergy() const
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetMaxPt() const
virtual AliMCAnalysisUtils*AliAnaCaloTrackCorrBaseClass::GetMCAnalysisUtils()
virtual AliGenEventHeader*AliAnaCaloTrackCorrBaseClass::GetMCGenEventHeader() const
virtual AliHeader*AliAnaCaloTrackCorrBaseClass::GetMCHeader() const
virtual AliStack*AliAnaCaloTrackCorrBaseClass::GetMCStack() const
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetMinEnergy() const
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetMinPt() const
virtual AliMixedEvent*AliAnaCaloTrackCorrBaseClass::GetMixedEvent() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetModuleNumber(AliAODPWG4Particle* part) const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetModuleNumber(AliVCluster* cluster) const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetModuleNumberCellIndexes(Int_t absId, Int_t calo, Int_t& icol, Int_t& irow, Int_t& iRCU) const
virtual const char*TObject::GetName() const
Double_tGetNCellCut() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNCentrBin() const
virtual AliNeutralMesonSelection*AliAnaCaloTrackCorrBaseClass::GetNeutralMesonSelection()
Int_tGetNLMCutMax() const
Int_tGetNLMCutMin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNMaxEvMix() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNMixedEvent() const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetNonStandardJets() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNRPBin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNTrackMultBin() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetNZvertBin() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual TClonesArray*AliAnaCaloTrackCorrBaseClass::GetOutputAODBranch() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetOutputAODClassName() const
virtual TStringAliAnaCaloTrackCorrBaseClass::GetOutputAODName() const
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetPairTimeCut() const
virtual AliVCaloCells*AliAnaCaloTrackCorrBaseClass::GetPHOSCells() const
virtual TObjArray*AliAnaCaloTrackCorrBaseClass::GetPHOSClusters() const
virtual AliPHOSGeoUtils*AliAnaCaloTrackCorrBaseClass::GetPHOSGeometry() const
virtual AliCaloTrackReader*AliAnaCaloTrackCorrBaseClass::GetReader() const
Double_tGetTimeCutMax() const
Double_tGetTimeCutMin() const
virtual const char*TObject::GetTitle() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetTrackMultiplicity() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetTrackMultiplicityBin() const
virtual UInt_tTObject::GetUniqueID() const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetV0Multiplicity(Int_t i) const
virtual Int_tAliAnaCaloTrackCorrBaseClass::GetV0Signal(Int_t i) const
virtual voidAliAnaCaloTrackCorrBaseClass::GetVertex(Double_t* vertex) const
virtual Double_t*AliAnaCaloTrackCorrBaseClass::GetVertex(Int_t evtIndex) const
virtual voidAliAnaCaloTrackCorrBaseClass::GetVertex(Double_t* vertex, Int_t evtIndex) const
virtual Float_tAliAnaCaloTrackCorrBaseClass::GetZvertexCut() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidInit()
virtual voidAliAnaCaloTrackCorrBaseClass::InitDebug()
virtual voidInitParameters()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsCaloPIDOn() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsDataMC() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsFiducialCutOn() const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsHighMultiplicityAnalysisOn() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsPileUpAnalysisOn() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsRealCaloAcceptanceOn() const
virtual Bool_tTObject::IsSortable() const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::IsTrackMatched(AliVCluster* cluster, AliVEvent* event)
Bool_tIsTrackMatchRejectionOn() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidMakeAnalysisFillAOD()
virtual voidMakeAnalysisFillHistograms()
virtual Bool_tAliAnaCaloTrackCorrBaseClass::MakePlotsOn() const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tAliAnaCaloTrackCorrBaseClass::NewOutputAOD() const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* opt) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidAliAnaCaloTrackCorrBaseClass::SetAODObjArrayName(TString name)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidAliAnaCaloTrackCorrBaseClass::SetCaloPID(AliCaloPID* pid)
virtual voidAliAnaCaloTrackCorrBaseClass::SetCalorimeter(TString& calo)
virtual voidAliAnaCaloTrackCorrBaseClass::SetCalorimeter(Int_t calo)
virtual voidAliAnaCaloTrackCorrBaseClass::SetCaloUtils(AliCalorimeterUtils* caloutils)
virtual voidAliAnaCaloTrackCorrBaseClass::SetDebug(Int_t d)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliAnaCaloTrackCorrBaseClass::SetEnergyCutRange(Double_t mi, Double_t ma)
virtual voidAliAnaCaloTrackCorrBaseClass::SetFiducialCut(AliFiducialCut* fc)
voidAliAnaCaloTrackCorrBaseClass::SetFirstSMCoveredByTRD(Int_t n)
virtual voidAliAnaCaloTrackCorrBaseClass::SetHistogramRanges(AliHistogramRanges* hr)
virtual voidAliAnaCaloTrackCorrBaseClass::SetInputAODName(TString name)
virtual voidAliAnaCaloTrackCorrBaseClass::SetIsolationCut(AliIsolationCut* ic)
virtual voidAliAnaCaloTrackCorrBaseClass::SetMaxEnergy(Float_t e)
virtual voidAliAnaCaloTrackCorrBaseClass::SetMaxPt(Float_t pt)
virtual voidAliAnaCaloTrackCorrBaseClass::SetMCAnalysisUtils(AliMCAnalysisUtils* mcutils)
voidSetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3)
virtual voidAliAnaCaloTrackCorrBaseClass::SetMinEnergy(Float_t e)
virtual voidAliAnaCaloTrackCorrBaseClass::SetMinPt(Float_t pt)
voidSetNCellCut(Int_t n)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNCentrBin(Int_t n = 1)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNeutralMesonSelection(AliNeutralMesonSelection *const nms)
voidSetNLMCut(Int_t min, Int_t max)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNMaxEvMix(Int_t n = 20)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNRPBin(Int_t n = 1)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNTrackMultBin(Int_t n = 1)
virtual voidAliAnaCaloTrackCorrBaseClass::SetNZvertBin(Int_t n = 1)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidAliAnaCaloTrackCorrBaseClass::SetOutputAODClassName(TString name)
virtual voidAliAnaCaloTrackCorrBaseClass::SetOutputAODName(TString name)
virtual voidAliAnaCaloTrackCorrBaseClass::SetPairTimeCut(Float_t t)
virtual voidAliAnaCaloTrackCorrBaseClass::SetPtCutRange(Double_t mi, Double_t ma)
virtual voidAliAnaCaloTrackCorrBaseClass::SetReader(AliCaloTrackReader* reader)
voidSetTimeCut(Double_t min, Double_t max)
virtual voidAliAnaCaloTrackCorrBaseClass::SetTrackMultiplicityBin(Int_t bin, Int_t mult)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffCaloPID()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffDataMC()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffFiducialCut()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffFillHighMultiplicityHistograms()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffFillPileUpHistograms()
voidSwitchOffFillShowerShapeHistograms()
voidSwitchOffOnlySimpleHistoFill()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffOwnMix()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffPlotsMaking()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffRealCaloAcceptance()
voidSwitchOffTMHistoFill()
voidSwitchOffTrackMatchRejection()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOffTrackMultBins()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnCaloPID()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnDataMC()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnFiducialCut()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnFillHighMultiplicityHistograms()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnFillPileUpHistograms()
voidSwitchOnFillShowerShapeHistograms()
voidSwitchOnOnlySimpleSSHistoFill()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnOwnMix()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnPlotsMaking()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnRealCaloAcceptance()
voidSwitchOnTMHistoFill()
voidSwitchOnTrackMatchRejection()
virtual voidAliAnaCaloTrackCorrBaseClass::SwitchOnTrackMultBins()
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidAliAnaCaloTrackCorrBaseClass::Terminate(TList*)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual Bool_tAliAnaCaloTrackCorrBaseClass::UseTrackMultBins() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum mcTypes { kmcPhoton
kmcPi0Decay
kmcEtaDecay
kmcOtherDecay
kmcPi0
kmcEta
kmcElectron
kmcConversion
kmcOther
kmcAntiNeutron
kmcAntiProton
kmcPrompt
kmcFragmentation
kmcISR
kmcString
};
enum mcPTypes { kmcPPhoton
kmcPPi0Decay
kmcPEtaDecay
kmcPOtherDecay
kmcPPrompt
kmcPFragmentation
kmcPISR
};
enum mcssTypes { kmcssPhoton
kmcssOther
kmcssPi0
kmcssEta
kmcssConversion
kmcssElectron
};
enum AliAnaCaloTrackCorrBaseClass::detector { kEMCAL
kPHOS
kCTS
kDCAL
kDCALPHOS
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
static const Int_tfgkNmcPrimTypes
static const Int_tfgkNmcTypes
static const Int_tfgkNssTypes
private:
Bool_tfFillOnlySimpleSSHistoFill selected cluster histograms, selected SS histograms
Bool_tfFillSSHistogramsFill shower shape histograms
Bool_tfFillTMHistoFill track matching plots
Float_tfMinDistMinimal distance to bad channel to accept cluster
Float_tfMinDist2Cuts on Minimal distance to study acceptance evaluation
Float_tfMinDist3One more cut on distance used for acceptance-efficiency study
TLorentzVectorfMomentum! Cluster momentum
Int_tfNCellsCutAccept for the analysis clusters with more than fNCellsCut cells
Int_tfNLMCutMaxRemove clusters/cells with number of local maxima larger than this value
Int_tfNLMCutMinRemove clusters/cells with number of local maxima smaller than this value
Int_tfNOriginHistogramsFill only NOriginHistograms of the 14 defined types
Int_tfNPrimaryHistogramsFill only NPrimaryHistograms of the 7 defined types
TLorentzVectorfPrimaryMom! Primary MC momentum
Bool_tfRejectTrackMatchIf PID on, reject clusters which have an associated TPC track
Double_tfTimeCutMaxRemove clusters/cells with time larger than this value, in ns
Double_tfTimeCutMinRemove clusters/cells with time smaller than this value, in ns
TH2F*fhCellsE! energy of cells in cluster vs E of cluster
TH1F*fhClusterCutsE[10]! control histogram on the different photon selection cuts, E
TH1F*fhClusterCutsPt[10]! control histogram on the different photon selection cuts, pT
TH2F*fhClusterTimeDiffPhotonPileUp[7]! E vs Time difference inside cluster for selected photons
TH2F*fhDispE! cluster dispersion vs E
TH2F*fhDispETM! cluster dispersion vs E, cut on Track Matching residual
TH2F*fhDispETMTRD! cluster dispersion vs E, SM covered by TRD, cut on Track Matching residual
TH2F*fhDispETRD! cluster dispersion vs E, SM covered by TRD
TH2F*fhDispEtaDispPhi[7]! shower dispersion in eta direction vs phi direction for 5 E bins [0-2],[2-4],[4-6],[6-10],[> 10]
TH2F*fhDispEtaE! shower dispersion in eta direction
TH2F*fhDispEtaPhiDiffE! shower dispersion eta - phi
TH2F*fhDispLam1HighE! cluster disp vs lambda1, E>2
TH2F*fhDispLam1LowE! cluster disp vs lambda1, E<2
TH2F*fhDispPhiE! shower dispersion in phi direction
TH2F*fhDispSumEtaDiffE! difference of 2 eta dispersions
TH2F*fhDispSumPhiDiffE! difference of 2 phi dispersions
TH2F*fhEClusterSM! cluster E distribution per SM, before any selection, after reader
TH2F*fhEOverP[2]! matched track E cluster over P track vs cluster E, after dEdx cut, after and before photon cuts
TH2F*fhEOverPTRD[2]! matched track E cluster over P track vs cluster E, after dEdx cut, after and before photon cuts, behind TRD
TH1F*fhEPhoton! Number of identified photon vs energy
TH2F*fhEPhotonSM! photon-like cluster E distribution per SM
TH1F*fhEPrimMC[7]! Number of generated photon vs energy
TH1F*fhEPrimMCAcc[7]! Number of generated photon vs energy, in calorimeter acceptance
TH2F*fhEmbedPhotonELambda0FullBkg! Lambda0 vs E for embedded photons with less than 10% of the cluster energy
TH2F*fhEmbedPhotonELambda0FullSignal! Lambda0 vs E for embedded photons with more than 90% of the cluster energy
TH2F*fhEmbedPhotonELambda0MostlyBkg! Lambda0 vs E for embedded photons with 50%<fraction<10%
TH2F*fhEmbedPhotonELambda0MostlySignal! Lambda0 vs E for embedded photons with 90%<fraction<50%
TH2F*fhEmbedPi0ELambda0FullBkg! Lambda0 vs E for embedded photons with less than 10% of the cluster energy
TH2F*fhEmbedPi0ELambda0FullSignal! Lambda0 vs E for embedded photons with more than 90% of the cluster energy
TH2F*fhEmbedPi0ELambda0MostlyBkg! Lambda0 vs E for embedded photons with 50%<fraction<10%
TH2F*fhEmbedPi0ELambda0MostlySignal! Lambda0 vs E for embedded photons with 90%<fraction<50%
TH2F*fhEmbeddedSignalFractionEnergy! Fraction of photon energy of embedded signal vs cluster energy
TH2F*fhEtaLam0HighE! cluster eta vs lambda0, E>2
TH2F*fhEtaLam0LowE! cluster eta vs lambda0, E<2
TH2F*fhEtaPhi! Pseudorapidity vs Phi of clusters for E > 0.5
TH2F*fhEtaPhi05Photon! Pseudorapidity vs Phi of identified photon for E < 0.5
TH2F*fhEtaPhiPhoton! Pseudorapidity vs Phi of identified photon for E > 0.5
TH2F*fhEtaPhoton! Pseudorapidity of identified photon vs transerse momentum
TH2F*fhEtaPrimMC[7]! Eta of generated photon
TH2F*fhEtaPrimMCAcc[7]! Phi of generted photon, in calorimeter acceptance
TH2F*fhLam0DispHighE! cluster lambda0 vs dispersion, E>2
TH2F*fhLam0DispLowE! cluster lambda0 vs dispersion, E<2
TH2F*fhLam0E! cluster lambda0 vs E
TH2F*fhLam0ETM! cluster lambda0 vs E, cut on Track Matching residual
TH2F*fhLam0ETMTRD! cluster lambda0 vs E, SM covered by TRD, cut on Track Matching residual
TH2F*fhLam0ETRD! cluster lambda0 vs E, SM covered by TRD
TH2F*fhLam1E! cluster lambda1 vs E
TH2F*fhLam1ETM! cluster lambda1 vs E, cut on Track Matching residual
TH2F*fhLam1ETMTRD! cluster lambda1 vs E, SM covered by TRD, cut on Track Matching residual
TH2F*fhLam1ETRD! cluster lambda1 vs E, SM covered by TRD
TH2F*fhLam1Lam0HighE! cluster lambda1 vs lambda0, E>2
TH2F*fhLam1Lam0LowE! cluster lambda1 vs lambda0, E<2
TH2F*fhLambda0DispEta[7]! shower shape correlation l0 vs disp eta
TH2F*fhLambda0DispPhi[7]! shower shape correlation l0 vs disp phi
TH2F*fhMC2E[15]! E distribution, Reco vs MC coming from MC particle
TH2F*fhMC2Pt[15]! pT distribution, Reco vs MC coming from MC particle
TH2F*fhMCDeltaE[15]! MC-Reco E distribution coming from MC particle
TH2F*fhMCDeltaPt[15]! MC-Reco pT distribution coming from MC particle
TH2F*fhMCDispEtaDispPhi[7][6]! shower dispersion in eta direction vs phi direction for 5 E bins [0-2],[2-4],[4-6],[6-10],[> 10]
TH1F*fhMCE[15]! Number of identified photon vs cluster energy coming from MC particle
TH2F*fhMCEDispEta[6]! shower dispersion in eta direction
TH2F*fhMCEDispEtaPhiDiff[6]! shower dispersion in eta -phi direction
TH2F*fhMCEDispPhi[6]! shower dispersion in phi direction
TH2F*fhMCEDispersion[6]! E vs Dispersion from MC particle
TH2F*fhMCELambda0[6]! E vs Lambda0 from MC particle
TH2F*fhMCELambda1[6]! E vs Lambda1 from MC particle
TH2F*fhMCESphericity[6]! shower sphericity, eta vs phi
TH2F*fhMCESumEtaPhi[6]! shower dispersion in eta vs phi direction
TH2F*fhMCEta[15]! eta of identified photon coming from MC particle
TH2F*fhMCLambda0DispEta[7][6]! shower shape correlation l0 vs disp eta
TH2F*fhMCLambda0DispPhi[7][6]! shower shape correlation l0 vs disp phi
TH2F*fhMCLambda0vsClusterMaxCellDiffE0[6]! Lambda0 vs fraction of energy of max cell for E < 2 GeV
TH2F*fhMCLambda0vsClusterMaxCellDiffE2[6]! Lambda0 vs fraction of energy of max cell for 2< E < 6 GeV
TH2F*fhMCLambda0vsClusterMaxCellDiffE6[6]! Lambda0 vs fraction of energy of max cell for E > 6 GeV
TH2F*fhMCMaxCellDiffClusterE[6]! Fraction of energy carried by cell with maximum energy
TH2F*fhMCNCellsE[6]! NCells per cluster vs energy
TH2F*fhMCNCellsvsClusterMaxCellDiffE0[6]! NCells vs fraction of energy of max cell for E < 2
TH2F*fhMCNCellsvsClusterMaxCellDiffE2[6]! NCells vs fraction of energy of max cell for 2 < E < 6 GeV
TH2F*fhMCNCellsvsClusterMaxCellDiffE6[6]! NCells vs fraction of energy of max cell for E > 6
TH2F*fhMCPhi[15]! Phi of identified photon coming from MC particle
TH2F*fhMCPhotonELambda0NOverlap! E vs Lambda0 from MC photons, N particles overlap
TH2F*fhMCPhotonELambda0NoOverlap! E vs Lambda0 from MC photons, no overlap
TH2F*fhMCPhotonELambda0TwoOverlap! E vs Lambda0 from MC photons, 2 particles overlap
TH1F*fhMCPt[15]! Number of identified photon vs cluster pT coming from MC particle
TH2F*fhMaxCellDiffClusterE! Fraction of energy carried by cell with maximum energy
TH2F*fhNCellsDispHighE! number of cells in cluster vs dispersion, E>2
TH2F*fhNCellsDispLowE! number of cells in cluster vs dispersion
TH2F*fhNCellsE! number of cells in cluster vs E
TH2F*fhNCellsLam0HighE! number of cells in cluster vs lambda0, E>2
TH2F*fhNCellsLam0LowE! number of cells in cluster vs lambda0
TH2F*fhNCellsLam1HighE! number of cells in cluster vs lambda1, E>2
TH2F*fhNCellsLam1LowE! number of cells in cluster vs lambda1
TH2F*fhNLocMax! number of maxima in selected clusters
TH2F*fhPhiLam0HighE! cluster phi vs lambda0, E>2
TH2F*fhPhiLam0LowE! cluster phi vs lambda0, E<2
TH2F*fhPhiPhoton! Azimuthal angle of identified photon vs transerse momentum
TH2F*fhPhiPrimMC[7]! Phi of generted photon
TH2F*fhPhiPrimMCAcc[7]! Phi of generted photon, in calorimeter acceptance
TH2F*fhPtCentralityPhoton! centrality vs photon pT
TH2F*fhPtClusterSM! cluster E distribution per SM, before any selection, after reader
TH2F*fhPtEventPlanePhoton! event plane vs photon pT
TH1F*fhPtPhoton! Number of identified photon vs transerse momentum
TH2F*fhPtPhotonNPileUpSPDVtx! photon pt vs number of spd pile-up vertices
TH2F*fhPtPhotonNPileUpSPDVtxTimeCut! photon pt vs number of spd pile-up vertices, time cut +-25 ns
TH2F*fhPtPhotonNPileUpSPDVtxTimeCut2! photon pt vs number of spd pile-up vertices, time cut +-75 ns
TH2F*fhPtPhotonNPileUpTrkVtx! photon pt vs number of track pile-up vertices
TH2F*fhPtPhotonNPileUpTrkVtxTimeCut! photon pt vs number of track pile-up vertices, time cut +- 25 ns
TH2F*fhPtPhotonNPileUpTrkVtxTimeCut2! photon pt vs number of track pile-up vertices, time cut +- 75 ns
TH1F*fhPtPhotonPileUp[7]! pT distribution of selected photons
TH2F*fhPtPhotonSM! photon-like cluster E distribution per SM
TH1F*fhPtPrimMC[7]! Number of generated photon vs pT
TH1F*fhPtPrimMCAcc[7]! Number of generated photon vs pT, in calorimeter acceptance
TH2F*fhSphericityE! shower sphericity in eta vs phi
TH2F*fhSumEtaE! shower dispersion in eta direction
TH2F*fhSumEtaPhiE! shower dispersion in eta and phi direction
TH2F*fhSumPhiE! shower dispersion in phi direction
TH2F*fhTimeNPileUpVertSPD! time of cluster vs n pile-up vertices from SPD
TH2F*fhTimeNPileUpVertTrack! time of cluster vs n pile-up vertices from Tracks
TH2F*fhTimePt! time of photon cluster vs pt
TH2F*fhTimePtPhotonNoCut! time of photon cluster vs Pt, no cut
TH2F*fhTimePtPhotonSPD! time of photon cluster vs Pt, IsSPDPileUp
TH2F*fhTrackMatchedDEta[2]! Eta distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDEtaDPhi[2]! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before
TH2F*fhTrackMatchedDEtaDPhiNeg[2]! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before photon cuts
TH2F*fhTrackMatchedDEtaDPhiPos[2]! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before
TH2F*fhTrackMatchedDEtaMCConversion[2]! Eta distance between track and cluster vs cluster E, originated in conversion, after and before photon cuts
TH2F*fhTrackMatchedDEtaMCNoOverlap[2]! Eta distance between track and cluster vs cluster E, not other particle overlap, after and before photon cuts
TH2F*fhTrackMatchedDEtaMCOverlap[2]! Eta distance between track and cluster vs cluster E, several particle overlap, after and before photon cuts
TH2F*fhTrackMatchedDEtaNeg[2]! Eta distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDEtaPos[2]! Eta distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDEtaTRD[2]! Eta distance between track and cluster vs cluster E, after and before photon cuts, behind TRD
TH2F*fhTrackMatchedDPhi[2]! Phi distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDPhiMCConversion[2]! Phi distance between track and cluster vs cluster E, originated in conversion, after and before photon cuts
TH2F*fhTrackMatchedDPhiMCNoOverlap[2]! Phi distance between track and cluster vs cluster E, not other particle overlap, after and before photon cuts
TH2F*fhTrackMatchedDPhiMCOverlap[2]! Phi distance between track and cluster vs cluster E, several particle overlap, after and before photon cuts
TH2F*fhTrackMatchedDPhiNeg[2]! Phi distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDPhiPos[2]! Phi distance between track and cluster vs cluster E, after and before photon cuts
TH2F*fhTrackMatchedDPhiTRD[2]! Phi distance between track and cluster vs cluster E, after and before photon cuts, behind TRD
TH2F*fhTrackMatchedMCParticle[2]! Trace origin of matched particle
TH2F*fhYPrimMC[7]! Rapidity of generated photon
TH2F*fhYPrimMCAcc[7]! Rapidity of generated photon, in calorimeter acceptance
TH2F*fhdEdx[2]! matched track dEdx vs cluster E, after and before photon cuts

Class Charts

Inheritance Chart:
TObject
AliAnaCaloTrackCorrBaseClass
AliAnaPhoton

Function documentation

AliAnaPhoton()
 Histograms
 Control histograms
 Shower shape histograms
 MC histograms
 Embedding
default ctor
Bool_t ClusterSelected(AliVCluster* cl, Int_t nlm)
Select clusters if they pass different cuts
void FillAcceptanceHistograms()
Fill acceptance histograms if MC data is available
void FillPileUpHistograms(AliVCluster* cluster, AliVCaloCells* cells, Int_t absIdMax)
 Fill some histograms to understand pile-up
void FillShowerShapeHistograms(AliVCluster* cluster, Int_t mcTag, Float_t maxCellEFraction)
Fill cluster Shower Shape histograms
void FillTrackMatchingResidualHistograms(AliVCluster* calo, Int_t cut)
 If selected, fill histograms with residuals of matched clusters, help to define track matching cut
 Residual filled for different cuts 0 (No cut), after 1 PID cut
TObjString * GetAnalysisCuts()
Save parameters used for analysis
TList * GetCreateOutputObjects()
 Create histograms to be saved in output file and
 store them in outputContainer
void Init()
void InitParameters()
void MakeAnalysisFillAOD()
Do photon analysis and fill aods
void MakeAnalysisFillHistograms()
Fill histograms
void Print(Option_t* opt) const
Print some relevant parameters set for the analysis
AliAnaPhoton()
virtual ~AliAnaPhoton()
{ ; }
void SwitchOnFillShowerShapeHistograms()
void SwitchOffFillShowerShapeHistograms()
void SwitchOnOnlySimpleSSHistoFill()
void SwitchOffOnlySimpleHistoFill()
void SwitchOnTMHistoFill()
void SwitchOffTMHistoFill()
void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3)
 Analysis parameters setters getters
 ** Cluster selection methods **
void SetTimeCut(Double_t min, Double_t max)
Double_t GetTimeCutMin() const
{ return fTimeCutMin ; }
Double_t GetTimeCutMax() const
{ return fTimeCutMax ; }
void SetNCellCut(Int_t n)
{ fNCellsCut = n ; }
Double_t GetNCellCut() const
{ return fNCellsCut ; }
void SetNLMCut(Int_t min, Int_t max)
Int_t GetNLMCutMin() const
{ return fNLMCutMin ; }
Int_t GetNLMCutMax() const
{ return fNLMCutMax ; }
Bool_t IsTrackMatchRejectionOn() const
{ return fRejectTrackMatch ; }
void SwitchOnTrackMatchRejection()
void SwitchOffTrackMatchRejection()
void FillNOriginHistograms(Int_t n)
void FillNPrimaryHistograms(Int_t n)