ROOT logo
AliRoot » PWG » TOOLS » AliAnalysisHelperJetTasks

class AliAnalysisHelperJetTasks: public TObject

Function Members (Methods)

public:
AliAnalysisHelperJetTasks()
AliAnalysisHelperJetTasks(const AliAnalysisHelperJetTasks&)
virtual~AliAnalysisHelperJetTasks()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) 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 voidTObject::Error(const char* method, const char* msgfmt) const
static Int_tEventClass(Bool_t bSet = kFALSE, Int_t iNew = 0)
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
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
static voidGetClosestJets(const AliAODJet* genJets, const Int_t& kGenJets, const AliAODJet* recJets, const Int_t& kRecJets, Int_t* iGenIndex, Int_t* iRecIndex, Int_t iDebug = 0, Float_t maxDist = 0.3)
static voidGetClosestJets(const TList* genJetsList, const Int_t& kGenJets, const TList* recJetsList, const Int_t& kRecJets, TArrayI& iGenIndex, TArrayI& iRecIndex, Int_t iDebug = 0, Float_t maxDist = 0.3)
static AliAnalysisHelperJetTasks::MCProcessTypeGetDPMjetEventProcessType(AliGenEventHeader* aHeader, Bool_t adebug = kFALSE)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
static Bool_tGetEventShapes(TVector3& n01, const TVector3* pTrack, Int_t nTracks, Double_t* eventShapes)
static Double_tGetFractionOfJet(const AliAODJet* recJet, const AliAODJet* genJet, Int_t mode = 1)
virtual const char*TObject::GetIconName() const
static voidGetJetMatching(const TList* genJetsList, const Int_t& kGenJets, const TList* recJetsList, const Int_t& kRecJets, TArrayI& iMatchIndex, TArrayF& fPtFraction, Int_t iDebug = 0, Float_t maxDist = 0.3, Int_t mode = 1)
static Int_tGetLastProcessType()
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
static Int_tGetPhiBin(Double_t phi, Int_t fNRPbins)
static AliGenPythiaEventHeader*GetPythiaEventHeader(const AliMCEvent* mcEvent)
static AliAnalysisHelperJetTasks::MCProcessTypeGetPythiaEventProcessType(AliGenEventHeader* aHeader, Bool_t adebug = kFALSE)
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() 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 voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
static Bool_tIsCosmic()
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
static Bool_tIsPileUp()
virtual Bool_tTObject::IsSortable() const
static Bool_tIsTriggerFired(const AliVEvent* aEsd, AliAnalysisHelperJetTasks::Trigger trigger)
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidMergeOutput(const char* cFiles, const char* cDir = "", const char* cList = "", const char* cOutFile = "allpt.root", Bool_t bUpdate = false)
static voidMergeOutputDirs(const char* cFiles, const char* cPattern, const char* cOutFile, Bool_t bUpdate = false)
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)
AliAnalysisHelperJetTasks&operator=(const AliAnalysisHelperJetTasks&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
static Bool_tPrintDirectorySize(const char* currFile, Int_t iDetail = -1)
static voidPrintStack(AliMCEvent* mcEvent, Int_t iFirst = 0, Int_t iLast = 0, Int_t iMaxPrint = 10)
static Bool_tPythiaInfoFromFile(const char* currFile, Float_t& fXsec, Float_t& fTrials)
static Double_tReactionPlane(Bool_t bSet = kFALSE, Double_t fNew = 0)
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 = "")
static Bool_tSelected(Bool_t bSet = kFALSE, Bool_t bNew = kTRUE)
static UInt_tSelectInfo(Bool_t bSet = kFALSE, UInt_t iNew = 0)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
static Bool_tTestEventClass(Int_t iClass)
static Bool_tTestSelectInfo(UInt_t iMask)
virtual voidTObject::UseCurrentStyle()
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 { kMaxJets
kNone
kBunchBunch
kBunchEmpty
kEmptyEmpty
kV0A
kV0C
kNoV0BG
kSPDFO
kPhysicsSelection
kVertexIn
kIsCosmic
kIsPileUp
kIsMCND
kIsMCDD
kIsMCSD
kTotalSelections
};
enum Trigger { kAcceptAll
kMB1
kMB2
kMB3
kSPDGFO
kTrigger
};
enum MCProcessType { kInvalidProcess
kND
kDD
kSD
kOnePart
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
private:
static Int_tfgLastProcessTypestores the raw value of the last process type extracted

Class Charts

Inheritance Chart:
TObject
AliAnalysisHelperJetTasks

Function documentation

AliGenPythiaEventHeader* GetPythiaEventHeader(const AliMCEvent* mcEvent)
 Fetch  the pythia event header

void PrintStack(AliMCEvent* mcEvent, Int_t iFirst = 0, Int_t iLast = 0, Int_t iMaxPrint = 10)
 Print the stack informatuin up to the iMaxPrint event

void GetClosestJets(const AliAODJet* genJets, const Int_t& kGenJets, const AliAODJet* recJets, const Int_t& kRecJets, Int_t* iGenIndex, Int_t* iRecIndex, Int_t iDebug = 0, Float_t maxDist = 0.3)
 Relate the two input jet Arrays


 The association has to be unique
 So check in two directions
 find the closest rec to a gen
 and check if there is no other rec which is closer
 Caveat: Close low energy/split jets may disturb this correlation
 Idea: search in two directions generated e.g (a--e) and rec (1--3)
 Fill a matrix with Flags (1 for closest rec jet, 2 for closest rec jet
 in the end we have something like this
    1   2   3

 a| 3   2   0
 b| 0   1   0
 c| 0   0   3
 d| 0   0   1
 e| 0   0   1
 Topology
   1     2
     a         b

  d      c
        3     e
 Only entries with "3" match from both sides
 In case we have more jets than kmaxjets only the
 first kmaxjets are searched
 all other are -1
 use kMaxJets for a test not to fragemnt the memory...
void GetClosestJets(const TList* genJetsList, const Int_t& kGenJets, const TList* recJetsList, const Int_t& kRecJets, TArrayI& iGenIndex, TArrayI& iRecIndex, Int_t iDebug = 0, Float_t maxDist = 0.3)
 Size indepnedendentt Implemenation of jet matching
 Thepassed TArrayI should be static in the user function an only increased if needed

 Relate the two input jet Arrays


 The association has to be unique
 So check in two directions
 find the closest rec to a gen
 and check if there is no other rec which is closer
 Caveat: Close low energy/split jets may disturb this correlation
 Idea: search in two directions generated e.g (a--e) and rec (1--3)
 Fill a matrix with Flags (1 for closest rec jet, 2 for closest rec jet
 in the end we have something like this
    1   2   3

 a| 3   2   0
 b| 0   1   0
 c| 0   0   3
 d| 0   0   1
 e| 0   0   1
 Topology
   1     2
     a         b

  d      c
        3     e
 Only entries with "3" match from both sides
void GetJetMatching(const TList* genJetsList, const Int_t& kGenJets, const TList* recJetsList, const Int_t& kRecJets, TArrayI& iMatchIndex, TArrayF& fPtFraction, Int_t iDebug = 0, Float_t maxDist = 0.3, Int_t mode = 1)
 Matching jets from two lists
 Start with highest energetic jet from first list (generated/embedded)
 Calculate distance (\Delta R) to all jets from second list (reconstructed)
 Select N closest jets = kClosestJetsN
 Check energy fraction from jets from first list in jets from second list
 Matched jets = jet with largest energy fraction
 Store index of matched jet in TArrayI iMatchIndex
 reset index
Double_t GetFractionOfJet(const AliAODJet* recJet, const AliAODJet* genJet, Int_t mode = 1)
 get the fraction of hte signal jet in the full jt

void MergeOutputDirs(const char* cFiles, const char* cPattern, const char* cOutFile, Bool_t bUpdate = false)
 Routine to merge only directories containing the pattern

void MergeOutput(const char* cFiles, const char* cDir = "", const char* cList = "", const char* cOutFile = "allpt.root", Bool_t bUpdate = false)
Bool_t PythiaInfoFromFile(const char* currFile, Float_t& fXsec, Float_t& fTrials)
 get the cross section and the trails either from pyxsec.root or from pysec_hists.root
 This is to called in Notify and should provide the path to the AOD/ESD file
Bool_t PrintDirectorySize(const char* currFile, Int_t iDetail = -1)
Bool_t Selected(Bool_t bSet = kFALSE, Bool_t bNew = kTRUE)
 Static helper task, (re)set event by event

Bool_t IsCosmic()
Bool_t IsPileUp()
Bool_t TestSelectInfo(UInt_t iMask)
Bool_t TestEventClass(Int_t iClass)
UInt_t SelectInfo(Bool_t bSet = kFALSE, UInt_t iNew = 0)
 set event by event the slection info

Int_t EventClass(Bool_t bSet = kFALSE, Int_t iNew = 0)
 gloab storage/access to event class

Bool_t GetEventShapes(TVector3& n01, const TVector3* pTrack, Int_t nTracks, Double_t* eventShapes)
 Event shape calculation
 sona.pochybova@cern.ch
Bool_t IsTriggerFired(const AliVEvent* aEsd, AliAnalysisHelperJetTasks::Trigger trigger)
 checks if an event has been triggered
 no usage of ofline trigger here yet
Int_t GetPhiBin(Double_t phi, Int_t fNRPbins)
 Method to get phi bin o reaction plane

Double_t ReactionPlane(Bool_t bSet = kFALSE, Double_t fNew = 0)
 Static helper task, (re)set event by event

AliAnalysisHelperJetTasks()
{;}
virtual ~AliAnalysisHelperJetTasks()
{;}
MCProcessType GetPythiaEventProcessType(AliGenEventHeader* aHeader, Bool_t adebug = kFALSE)
MCProcessType GetDPMjetEventProcessType(AliGenEventHeader* aHeader, Bool_t adebug = kFALSE)
Int_t GetLastProcessType()
{ return fgLastProcessType; }