ROOT logo
AliRoot » PWG » FLOW » BASE » AliFlowAnalysisWithScalarProduct

class AliFlowAnalysisWithScalarProduct: public AliFlowAnalysis

 AliFlowAnalysisWithScalarProduct:
 Description: Maker to analyze Flow from the Scalar Product method.
 authors: Naomi van del Kolk (kolk@nikhef.nl)
          Ante Bilandzic (anteb@nikhef.nl)
 mods:    Carlos Perez (cperez@nikhef.nl)

Function Members (Methods)

public:
AliFlowAnalysisWithScalarProduct()
virtual~AliFlowAnalysisWithScalarProduct()
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 voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) 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
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 voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidFinish()
AliFlowCommonHist*GetCommonHists() const
AliFlowCommonHistResults*GetCommonHistsRes() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
AliFlowEventSimpleCuts*AliFlowAnalysis::GetEventCuts() const
virtual TList*GetHistList() const
TProfile*GetHistProConfig() const
TProfile*GetHistProNUAq() const
TProfile*GetHistProNUAu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iIMorRE) const
TProfile*GetHistProQaQbNorm() const
TProfile*GetHistProUQ(Int_t iRFPorPOI, Int_t iPTorETA) const
TProfile*GetHistProUQQaQb(Int_t iRFPorPOI, Int_t iPTorETA) const
TH1D*GetHistSumOfWeights() const
TH1D*GetHistSumOfWeightsu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iWeight) const
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual voidGetOutputHistograms(TList* outputListHistos)
Int_tAliFlowAnalysis::GetPOItype() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
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 voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
virtual voidMake(AliFlowEventSimple* anEvent)
voidTObject::MayNotUse(const char* method) 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 voidTNamed::Print(Option_t* option = "") const
virtual voidAliFlowAnalysis::ProcessEvent(AliFlowEventSimple*)
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 = "")
voidSetApplyCorrectionForNUA(Bool_t iVal)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetBookOnlyBasicCCH(Bool_t bVal)
voidSetDebug(Bool_t bVal)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidAliFlowAnalysis::SetEventCuts(AliFlowEventSimpleCuts* cuts)
voidSetHarmonic(Int_t iHarmonic)
virtual voidAliFlowAnalysis::SetHistList(TList*)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNormalizationType(Int_t iVal)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliFlowAnalysis::SetPOItype(Int_t i)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetTotalQvector(Int_t iVal)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUsePhiWeights(Bool_t bVal)
voidSetWeightsList(TList *const aWeightsList)
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
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
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
virtual voidWriteHistograms(TDirectoryFile* outputFileName) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
AliFlowEventSimpleCuts*AliFlowAnalysis::fEventCutssome analysis level event cuts
TStringTNamed::fNameobject identifier
Int_tAliFlowAnalysis::fPOItypewhich POI type are we processing in this analysis?
TStringTNamed::fTitleobject title
private:
Int_tfApplyCorrectionForNUAapply correction for non-uniform acceptance
AliFlowCommonHist*fCommonHistscontrol histograms
AliFlowCommonHistResults*fCommonHistsResresults histograms
AliFlowCommonHist*fCommonHistsuQcontrol histograms
Int_tfDebugflag for analysis: more print statements
Int_tfHarmonicharmonic
TList*fHistListlist to hold all output histograms
TH2D*fHistMaMbMaMb
TH1I*fHistNumberOfSubtractedDaughtershow many daughters were subtracted during Q calculation?
TProfile*fHistProConfigconfiguration values
TProfile*fHistProNUAqNUA related qq
TProfile*fHistProNUAu[2][2][2]NUA related qq for RP|POI PT|ETA
TProfile*fHistProQNormQNorm
TProfile*fHistProQaQbQaQb
TProfile*fHistProQaQbMQaQb/MaMb
TProfile*fHistProQaQbNormaverage of QaQb
TProfile*fHistProUQ[2][2]uQ for RP|POI PT|ETA
TProfile*fHistProUQQaQb[2][2]holds weighted average of <QuQaQb> for RP|POI PT|ETA
TH2D*fHistQNormQaQbNormQNorm vs QaQbNorm
TH2D*fHistQaNormMaQaNorm Ma
TH1D*fHistQaQbQaQb
TH1D*fHistQaQbCosQaQbCos
TH2D*fHistQbNormMbQbNorm Mb
TH1D*fHistSumOfWeightsholds sum of Na*Nb and (Na*Nb)^2
TH1D*fHistSumOfWeightsu[2][2][3]holds sums of 0: Nq', 1: Nq'^2, 2: Nq'*Na*Nb
Bool_tfMinimalBookflag to turn off QA and minimize FlowCommonHist
Int_tfNormalizationType0: EP mode || 1: SP mode
TH1F*fPhiWeightsSub[2]histogram holding phi weights for subevents
TH1D*fResolutionResolution
Int_tfTotalQvector1:Qa 2:Qb 3:QaQb
Int_tfUsePhiWeightsuse phi weights
TList*fWeightsListlist holding input histograms with phi weights

Class Charts

Inheritance Chart:
TNamed
AliFlowAnalysis
AliFlowAnalysisWithScalarProduct

Function documentation

AliFlowAnalysisWithScalarProduct()
ctor
~AliFlowAnalysisWithScalarProduct()
destructor
void Init()
Define all histograms
printf("---Analysis with the Scalar Product Method--- Init\n");
printf("--- fNormalizationType %d ---\n", fNormalizationType);
save old value and prevent histograms from being added to directory
to avoid name clashes in case multiple analaysis objects are used
in an analysis
void Make(AliFlowEventSimple* anEvent)
 Scalar Product method
void GetOutputHistograms(TList* outputListHistos)
get pointers to all output histograms (called before Finish())
void Finish()
calculate flow and fill the AliFlowCommonHistResults
void WriteHistograms(TDirectoryFile* outputFileName) const
store the final results in output .root file
Double_t CalculateStatisticalError(Int_t RFPorPOI, Int_t PTorETA, Int_t bin, Double_t errV) const
calculate the statistical error for differential flow for bin b
Double_t ComputeResolution(Double_t x) const
 Computes resolution for Event Plane method
Double_t FindXi(Double_t res, Double_t prec) const
 Computes x(res) for Event Plane method
AliFlowAnalysisWithScalarProduct()
void SetHarmonic(Int_t iHarmonic)
{ fHarmonic = iHarmonic; }
void SetApplyCorrectionForNUA(Bool_t iVal)
{ fApplyCorrectionForNUA = iVal?1:0; }
void SetNormalizationType(Int_t iVal)
{ fNormalizationType = iVal; }
void SetDebug(Bool_t bVal)
{ fDebug = bVal; }
void SetBookOnlyBasicCCH(Bool_t bVal)
{ fMinimalBook = bVal; }
void SetTotalQvector(Int_t iVal)
{ fTotalQvector = iVal; }
void SetUsePhiWeights(Bool_t bVal)
{ fUsePhiWeights = bVal; }
void SetWeightsList(TList *const aWeightsList)
{ fWeightsList = (TList*)aWeightsList->Clone(); }
TList* GetHistList() const
{ return fHistList; }
TProfile* GetHistProConfig() const
{ return fHistProConfig; }
TProfile* GetHistProUQ(Int_t iRFPorPOI, Int_t iPTorETA) const
{ return fHistProUQ[iRFPorPOI][iPTorETA]; }
TProfile* GetHistProQaQbNorm() const
{ return fHistProQaQbNorm; }
TProfile* GetHistProNUAq() const
{ return fHistProNUAq; }
TProfile* GetHistProNUAu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iIMorRE) const
{ return fHistProNUAu[iRFPorPOI][iPTorETA][iIMorRE]; }
TH1D* GetHistSumOfWeights() const
{ return fHistSumOfWeights; }
TProfile* GetHistProUQQaQb(Int_t iRFPorPOI, Int_t iPTorETA) const
{ return fHistProUQQaQb[iRFPorPOI][iPTorETA]; }
TH1D* GetHistSumOfWeightsu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iWeight) const
{ return fHistSumOfWeightsu[iRFPorPOI][iPTorETA][iWeight]; }
AliFlowCommonHist* GetCommonHists() const
{ return fCommonHists; }
AliFlowCommonHistResults* GetCommonHistsRes() const
{ return fCommonHistsRes; }
AliFlowAnalysisWithScalarProduct& operator=(const AliFlowAnalysisWithScalarProduct& anAnalysis)