ROOT logo
AliRoot » PWGGA » PHOSTASKS » PHOS_TAGGING » AliAnalysisTaskTaggedPhotons

class AliAnalysisTaskTaggedPhotons: public AliAnalysisTaskSE

 Analysis for Tagged Photons
 Prepares all necessary histograms for calculation of
 the yield of pi0 decay photon in calorimeter:
 Marks photons which makes pi0 with some other and
 fill invariant mass distributions for estimate background below pi0
 peak so that estimate proportion of fake pairs.
 Fills as well controll MC histograms with clasification of the photon origin
 and check of the proportion of truly tagged photons.


*-- Dmitry Blau, Dmitri Peresunko

Function Members (Methods)

public:
AliAnalysisTaskTaggedPhotons()
AliAnalysisTaskTaggedPhotons(const char* name)
AliAnalysisTaskTaggedPhotons(const AliAnalysisTaskTaggedPhotons& ap)
virtual~AliAnalysisTaskTaggedPhotons()
virtual voidTTask::Abort()MENU
voidTObject::AbstractMethod(const char* method) const
virtual voidTTask::Add(TTask* task)
virtual voidAliAnalysisTaskSE::AddAODBranch(const char* cname, void* addobj, const char* fname = "")
virtual AliAODEvent*AliAnalysisTaskSE::AODEvent() const
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tAliAnalysisTask::AreSlotsConnected()
virtual voidTTask::Browse(TBrowser* b)
Bool_tAliAnalysisTask::CheckCircularDeps()
voidAliAnalysisTask::CheckNotify(Bool_t init = kFALSE)
virtual Bool_tAliAnalysisTask::CheckOwnership() const
virtual Bool_tAliAnalysisTask::CheckPostData() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTTask::CleanTasks()
virtual voidTTask::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
Bool_tAliAnalysisTask::ConnectInput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidAliAnalysisTaskSE::ConnectInputData(Option_t* option = "")
Bool_tAliAnalysisTask::ConnectOutput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidTTask::Continue()MENU
virtual voidTNamed::Copy(TObject& named) const
virtual voidAliAnalysisTaskSE::CreateOutputObjects()
virtual const char*AliAnalysisTaskSE::CurrentFileName()
virtual Int_tAliAnalysisTaskSE::DebugLevel() const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual Long64_tAliAnalysisTaskSE::Entry() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual AliESDfriend*AliAnalysisTaskSE::ESDfriend() const
virtual const AliEventTag*AliAnalysisTaskSE::EventTag() const
virtual voidAliAnalysisTaskSE::Exec(Option_t* option)
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 voidTTask::ExecuteTask(Option_t* option = "0")MENU
virtual voidTTask::ExecuteTasks(Option_t* option)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidAliAnalysisTask::FinishTaskOutput()
voidAliAnalysisTask::GetBranches(const char* type, TString& result) const
Int_tTTask::GetBreakin() const
Int_tTTask::GetBreakout() const
virtual UInt_tAliAnalysisTaskSE::GetCollisionCandidates() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
TObject*AliAnalysisTask::GetInputData(Int_t islot) const
AliAnalysisDataSlot*AliAnalysisTask::GetInputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetInputType(Int_t islot) const
TList*TTask::GetListOfTasks() const
virtual const char*TNamed::GetName() const
Int_tAliAnalysisTask::GetNinputs() const
Int_tAliAnalysisTask::GetNoutputs() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TObject*AliAnalysisTask::GetOutputData(Int_t islot) const
AliAnalysisDataSlot*AliAnalysisTask::GetOutputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetOutputType(Int_t islot) const
TObject*AliAnalysisTask::GetPublishedData() const
virtual TList*AliAnalysisTaskSE::GetQAHistos() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tAliAnalysisTask::HasBranches() const
Bool_tAliAnalysisTask::HasExecuted() const
virtual ULong_tTNamed::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 AliVEvent*AliAnalysisTaskSE::InputEvent() const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTTask::IsActive() const
Bool_tAliAnalysisTask::IsChecked() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tAliAnalysisTaskSE::IsEventInBinZero()
virtual Bool_tTTask::IsFolder() const
Bool_tAliAnalysisTask::IsInitialized() const
Bool_tTObject::IsOnHeap() const
Bool_tAliAnalysisTask::IsOutputReady(Int_t islot) const
Bool_tAliAnalysisTask::IsPostEventLoop() const
Bool_tAliAnalysisTask::IsReady() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tAliAnalysisTaskSE::IsStandardAOD() const
Bool_tAliAnalysisTask::IsUsed() const
Bool_tAliAnalysisTask::IsZombie() const
voidAliAnalysisTaskSE::LoadBranches() const
virtual voidLocalInit()
virtual voidTTask::ls(Option_t* option = "*") constMENU
voidTObject::MayNotUse(const char* method) const
virtual AliMCEvent*AliAnalysisTaskSE::MCEvent() const
virtual Bool_tAliAnalysisTaskSE::Notify()
virtual Bool_tAliAnalysisTask::NotifyBinChange()
virtual voidAliAnalysisTaskSE::NotifyRun()
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)
AliAnalysisTaskTaggedPhotons&operator=(const AliAnalysisTaskTaggedPhotons& ap)
virtual TTree*AliAnalysisTaskSE::OutputTree() const
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
voidAliAnalysisTask::PrintContainers(Option_t* option = "all", Int_t indent = 0) const
virtual voidAliAnalysisTask::PrintTask(Option_t* option = "all", Int_t indent = 0) const
Bool_tAliAnalysisTask::ProducersTouched() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidAliAnalysisTask::Reset()
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 voidAliAnalysisTaskSE::SelectCollisionCandidates(UInt_t offlineTriggerMask = AliVEvent::kMB)
voidTTask::SetActive(Bool_t active = kTRUE)TOGGLE
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliAnalysisTask::SetBranches(const char* names)
voidTTask::SetBreakin(Int_t breakin = 1)TOGGLE
voidTTask::SetBreakout(Int_t breakout = 1)TOGGLE
voidAliAnalysisTask::SetChecked(Bool_t flag = kTRUE)
virtual voidAliAnalysisTaskSE::SetDebugLevel(Int_t level)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetDustanceToBad(Float_t cut = 2.5)
voidSetFastMC()
voidSetMC(Bool_t isMC = kTRUE)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPi0WeightParameters(TArrayD* ar)
voidAliAnalysisTask::SetPostEventLoop(Bool_t flag = kTRUE)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetTrigger(Bool_t isPHOSTrig)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidAliAnalysisTask::SetUsed(Bool_t flag = kTRUE)
voidAliAnalysisTask::SetZombie(Bool_t flag = kTRUE)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTerminate(Option_t* opt = "")
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidUserCreateOutputObjects()
virtual voidUserExec(Option_t* opt = "")
virtual voidAliAnalysisTaskSE::UserExecMix(Option_t*)
virtual Bool_tAliAnalysisTaskSE::UserNotify()
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:
voidAliAnalysisTaskSE::ConnectMultiHandler()
voidAliAnalysisTask::DefineInput(Int_t islot, TClass* type)
voidAliAnalysisTask::DefineOutput(Int_t islot, TClass* type)
voidAliAnalysisTaskSE::DisconnectMultiHandler()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidAliAnalysisTask::EnableBranch(Int_t islot, const char* bname) const
Int_tEvalIsolation(TLorentzVector* ph, Bool_t isPhoton)
voidFillHistogram(const char* key, Double_t x) const
voidFillHistogram(const char* key, Double_t x, Double_t y) const
voidFillHistogram(const char* key, Double_t x, Double_t y, Double_t z) const
voidFillMCHistos()
voidFillPIDHistograms(const char* name, const AliCaloPhoton* p) const
voidFillPIDHistograms(const char* name, const AliCaloPhoton* p, Double_t y) const
voidFillPIDHistograms(const char* name, const AliCaloPhoton* p, const AliCaloPhoton* p2, Double_t y, Bool_t isReal) const
voidFillTaggingHistos()
Int_tFindPrimary(AliVCluster*, Bool_t&)
char*AliAnalysisTask::GetBranchAddress(Int_t islot, const char* branch) const
Int_tGetFiducialArea(const Float_t* pos) const
voidInitGeometry()
Double_tInPi0Band(Double_t m, Double_t pt) const
Bool_tIsGoodChannel(Int_t mod, Int_t ix, Int_t iz)
Int_tIsSameParent(const AliCaloPhoton* p1, const AliCaloPhoton* p2) const
voidTObject::MakeZombie()
TFile*AliAnalysisTask::OpenFile(Int_t iout, Option_t* option = "RECREATE") const
Bool_tAliAnalysisTask::PostData(Int_t iout, TObject* data, Option_t* option = "")
Double_tPrimaryParticleWeight(AliAODMCParticle* particle)
Bool_tAliAnalysisTask::SetBranchAddress(Int_t islot, const char* branch, void* address) const
Bool_tTestCharged(Double_t dr, Double_t en) const
Bool_tTestDisp(Double_t l0, Double_t l1, Double_t e) const
Bool_tTestLambda(Double_t pt, Double_t l1, Double_t l2)
Bool_tTestPID(Int_t iPID, AliCaloPhoton* part)
Bool_tTestTOF(Double_t, Double_t) const

Data Members

protected:
Bool_tTTask::fActivetrue if task is active
TStringAliAnalysisTask::fBranchNamesList of input branches that need to be loaded for this task
Int_tTTask::fBreakin=1 if a break point set at task extry
Int_tTTask::fBreakout=1 if a break point set at task exit
Int_tAliAnalysisTaskSE::fCurrentRunNumber! Current run number
Int_tAliAnalysisTaskSE::fDebugDebug flag
AliESDfriend*AliAnalysisTaskSE::fESDfriend! ESD friend
Int_tAliAnalysisTaskSE::fEntryCurrent entry in the chain
Bool_tTTask::fHasExecutedTrue if task has executed
TList*AliAnalysisTaskSE::fHistosQA! Output histos for QA
Bool_tAliAnalysisTask::fInitializedTrue if Init() was called
AliVEvent*AliAnalysisTaskSE::fInputEvent! VEvent Input
AliInputEventHandler*AliAnalysisTaskSE::fInputHandler! Input Handler
TObjArray*AliAnalysisTask::fInputsArray of input slots
AliMCEvent*AliAnalysisTaskSE::fMCEvent! MC
AliInputEventHandler*AliAnalysisTaskSE::fMCEventHandler! pointer to MCEventHandler
AliMultiInputEventHandler*AliAnalysisTaskSE::fMultiInputHandler! pointer to multihandler
TStringTNamed::fNameobject identifier
Int_tAliAnalysisTask::fNinputsNumber of inputs
Int_tAliAnalysisTask::fNoutputsNumber of outputs
UInt_tAliAnalysisTaskSE::fOfflineTriggerMaskTask processes collision candidates only
TStringTTask::fOptionOption specified in ExecuteTask
AliAODEvent*AliAnalysisTaskSE::fOutputAOD! AOD out
Bool_t*AliAnalysisTask::fOutputReady[fNoutputs] Flags for output readyness
TObjArray*AliAnalysisTask::fOutputsArray of output slots
TObject*AliAnalysisTask::fPublishedData! published data
Bool_tAliAnalysisTask::fReadyFlag if the task is ready
TList*TTask::fTasksList of Tasks
TStringTNamed::fTitleobject title
TTree*AliAnalysisTaskSE::fTreeAAOD output Tree
static TClonesArray*AliAnalysisTaskSE::fgAODCaloClusters! CaloClusters for replication
static TClonesArray*AliAnalysisTaskSE::fgAODDimuons! Dimuons replication
static AliAODCaloTrigger*AliAnalysisTaskSE::fgAODEMCALTrigger! Emcal Trigger for replication
static AliAODCaloCells*AliAnalysisTaskSE::fgAODEmcalCells! Emcal Cell replication
static TClonesArray*AliAnalysisTaskSE::fgAODFMDClusters! FMDClusters for replication
static AliVHeader*AliAnalysisTaskSE::fgAODHeader! Header for replication
static TClonesArray*AliAnalysisTaskSE::fgAODHmpidRings! HMPID replication
static TClonesArray*AliAnalysisTaskSE::fgAODJets! Jets for replication
static TClonesArray*AliAnalysisTaskSE::fgAODMCParticles! MC Particles for replicatio
static AliAODCaloTrigger*AliAnalysisTaskSE::fgAODPHOSTrigger! Phos Trigger for replication
static TClonesArray*AliAnalysisTaskSE::fgAODPMDClusters! PMDClusters for replication
static AliAODCaloCells*AliAnalysisTaskSE::fgAODPhosCells! Phos Cell replication
static AliAODTracklets*AliAnalysisTaskSE::fgAODTracklets! Tracklets for replication
static TClonesArray*AliAnalysisTaskSE::fgAODTracks! Tracks for replication
static TClonesArray*AliAnalysisTaskSE::fgAODV0s! V0s for replication
static AliAODVZERO*AliAnalysisTaskSE::fgAODVZERO! VZERO for replication
static TClonesArray*AliAnalysisTaskSE::fgAODVertices! Vertices for replication
static TTask*TTask::fgBeginTaskpointer to task initiator
static TTask*TTask::fgBreakPointpointer to current break point
static AliTOFHeader*AliAnalysisTaskSE::fgTOFHeader! TOFHeader for replication
private:
Int_tfCentBin
Double_tfCentrality
TList*fCurrentMixedList! list of previous evetns for given centrality
Bool_tfIsFastMCThis is fast MC, bypass event checks
Bool_tfIsMBwhich trigger to use
Bool_tfIsMCIs this is MC
Float_tfMinBCDistanceminimal distance to bad channel
THashList*fOutputContainer! List of output histograms
TH2I*fPHOSBadMap[6]
TClonesArray*fPHOSEvent!List of tracks in the event
TList*fPHOSEvents[10][5]!Previous events for mixing
AliPHOSGeometry*fPHOSgeom!PHOS geometry
Float_tfPhimaxcovered by
Float_tfPhiminfull calorimeter
TClonesArray*fStack!Pointer to MC stack
TClonesArray*fTrackEvent!List of tracks in the event
AliTriggerAnalysis*fTriggerAnalysis!
AliAnalysisUtils*fUtils
Double_tfWeightParamPi0[7]Parameters to calculate weights
Float_tfZmaxRectangular
Float_tfZminarea

Class Charts

Inheritance Chart:
TTask
AliAnalysisTask
AliAnalysisTaskSE
AliAnalysisTaskTaggedPhotons

Function documentation

AliAnalysisTaskTaggedPhotons()
Deafult constructor
no memory allocations
AliAnalysisTaskTaggedPhotons(const char* name)
 Constructor.
AliAnalysisTaskTaggedPhotons(const AliAnalysisTaskTaggedPhotons& ap)
 cpy ctor
~AliAnalysisTaskTaggedPhotons()
 dtor
void UserCreateOutputObjects()
void UserExec(Option_t* opt = "")
Select events
Select photons
Fill QA histograms
Fill Tagging histogsms
void FillMCHistos()
void FillTaggingHistos()
Fill all necessary histograms
void Init()
 Intialisation of parameters
void Terminate(Option_t* opt = "")
 Processing when the event loop is ended
Double_t InPi0Band(Double_t m, Double_t pt) const
Parameterization of the pi0 peak region
for LHC13bcdef
  Double_t mpi0mean =  0.13447 - 1.41259e-03 * TMath::Exp(-pt/1.30044) ;
Parameterization of data 30.08.2014
Int_t IsSameParent(const AliCaloPhoton* p1, const AliCaloPhoton* p2) const
Looks through parents and finds if there was commont pi0 among ancestors
Int_t GetFiducialArea(const Float_t* pos) const
calculates in which kind of fiducial area photon hit
void InitGeometry()
Rotation matrixes are set with Tender
void FillHistogram(const char* key, Double_t x) const
void FillHistogram(const char* key, Double_t x, Double_t y) const
void FillHistogram(const char* key, Double_t x, Double_t y, Double_t z) const
Fills 1D histograms with key
void FillPIDHistograms(const char* name, const AliCaloPhoton* p) const
void FillPIDHistograms(const char* name, const AliCaloPhoton* p, Double_t y) const
void FillPIDHistograms(const char* name, const AliCaloPhoton* p, const AliCaloPhoton* p2, Double_t y, Bool_t isReal) const
Bool_t TestLambda(Double_t pt, Double_t l1, Double_t l2)
Int_t EvalIsolation(TLorentzVector* ph, Bool_t isPhoton)
Bool_t TestPID(Int_t iPID, AliCaloPhoton* part)
   //Checks PID of particle
Double_t PrimaryParticleWeight(AliAODMCParticle* particle)
void SetPi0WeightParameters(TArrayD* ar)
Int_t FindPrimary(AliVCluster* , Bool_t& )
Finds primary and estimates if it unique one?
First check can it be photon/electron
Bool_t IsGoodChannel(Int_t mod, Int_t ix, Int_t iz)
Check if this channel belogs to the good ones
void LocalInit()
{ Init() ; }
void SetTrigger(Bool_t isPHOSTrig)
{fIsMB=isPHOSTrig;}
void SetMC(Bool_t isMC = kTRUE)
{fIsMC=isMC;}
void SetFastMC(void)
void SetDustanceToBad(Float_t cut = 2.5)
Bool_t TestDisp(Double_t l0, Double_t l1, Double_t e) const
Bool_t TestTOF(Double_t , Double_t ) const
{return kTRUE;}
Bool_t TestCharged(Double_t dr, Double_t en) const