]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG2/SPECTRA/AliProtonAnalysis.h
PWG2/SPECTRA -> PWGLF/SPECTRA migration
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliProtonAnalysis.h
diff --git a/PWG2/SPECTRA/AliProtonAnalysis.h b/PWG2/SPECTRA/AliProtonAnalysis.h
deleted file mode 100644 (file)
index e53b457..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-#ifndef ALIPROTONANALYSIS_H
-#define ALIPROTONANALYSIS_H
-
-/*  See cxx source for full Copyright notice */
-
-
-/* $Id$ */
-
-//-------------------------------------------------------------------------
-//                       Class AliProtonAnalysis
-//   This is the class for the baryon (proton) analysis
-//
-//    Origin: Panos Christakoglou | Panos.Christakoglou@cern.ch
-//-------------------------------------------------------------------------
-
-#include "TObject.h"
-#include "TH1I.h"
-
-class TF1;
-class TH2D;
-class TH1F;
-class TList;
-
-//#include "AliPID.h"
-class AliPID;
-#include "AliCFContainer.h"
-class AliCFDataGrid;
-class AliAODEvent;
-class AliAODtrack;
-class AliESDEvent;
-class AliESDtrack;
-class AliExternalTrackParam;
-class AliStack;
-class AliESDVertex;
-class AliProtonAnalysisBase;
-
-class AliProtonAnalysis : public TObject {
- public:
-  enum {
-    kStepSurvived        = 0,
-    kStepIsPrimary       = 1,
-    kStepIdentified      = 2,
-    kStepInPhaseSpace    = 3,
-    kNSteps = 4
-  };
-  AliProtonAnalysis();
-  AliProtonAnalysis(Int_t nbinsY, Float_t fLowY, Float_t fHighY,
-                   Int_t nbinsPt, Float_t fLowPt, Float_t fHighPt);
-  AliProtonAnalysis(Int_t nbinsY, Double_t *gY,
-                   Int_t nbinsPt, Double_t *gPt);
-  virtual ~AliProtonAnalysis();
-
-  void SetBaseAnalysis(AliProtonAnalysisBase * const baseAnalysis) {
-    fProtonAnalysisBase = baseAnalysis;}
-  AliProtonAnalysisBase *GetProtonAnalysisBaseObject() const {
-    return fProtonAnalysisBase;}
-
-  void InitAnalysisHistograms(Int_t nbinsY, Float_t fLowY, Float_t fHighY,
-                             Int_t nbinsPt, Float_t fLowPt, Float_t fHighPt);
-  void InitAnalysisHistograms(Int_t nbinsY, Double_t *gY,
-                             Int_t nbinsPt, Double_t *gPt);
-  Bool_t ReadFromFile(const char* filename);
-  void Analyze(AliESDEvent *fESD, 
-              const AliESDVertex *vertex);
-  void Analyze(AliAODEvent *fAOD);
-  void Analyze(AliStack *stack, Bool_t iInclusive);
-  
-  //QA for real data
-  void InitQA();
-  void FillQA(AliESDEvent *esd,
-             const AliESDVertex *vertex, 
-             AliESDtrack* track);
-  TList *GetQAList() {return fGlobalQAList;}
-
-  AliCFContainer *GetProtonContainer() const {return fProtonContainer;}
-  AliCFContainer *GetAntiProtonContainer() const {return fAntiProtonContainer;}
-
-  TH2D *GetProtonYPtHistogram() const {return fHistYPtProtons;}
-  TH2D *GetAntiProtonYPtHistogram() const {return fHistYPtAntiProtons;}
-  TH2D *GetProtonYPtCorrectedHistogram() const {
-    return fHistYPtProtonsCorrected;}
-  TH2D *GetAntiProtonCorrectedYPtHistogram() const {
-    return fHistYPtAntiProtonsCorrected;}
-  TH1D *GetProtonYHistogram();
-  TH1D *GetAntiProtonYHistogram();
-  TH1D *GetProtonPtHistogram();
-  TH1D *GetAntiProtonPtHistogram();
-  TH1D *GetProtonCorrectedYHistogram();
-  TH1D *GetAntiProtonCorrectedYHistogram();
-  TH1D *GetProtonCorrectedPtHistogram();
-  TH1D *GetAntiProtonCorrectedPtHistogram();
-
-  TH1F *GetEventStatistics() {return fHistEventStats;}
-
-  TList *GetYRatioHistogramsInPtBins();
-  TH1D *GetYRatioHistogram();
-  TH1D *GetYRatioCorrectedHistogram();
-  TH1D *GetPtRatioHistogram();
-  TH1D *GetPtRatioCorrectedHistogram();
-  TH1D *GetYAsymmetryHistogram();
-  TH1D *GetPtAsymmetryHistogram();
-  TH2D *GetProtonsAbsorptionMaps() {return fHistEfficiencyYPtProtons;}
-  TH2D *GetAntiProtonsAbsorptionMaps() {return fHistEfficiencyYPtAntiProtons;}
-
-  TH1I *GetEventHistogram() const {return fHistEvents;}
-
-  Int_t   GetNumberOfAnalyzedEvents() {return (Int_t)fHistEventStats->GetBinContent(5);}
-  Bool_t  PrintMean(TH1 *hist, Double_t edge);
-  Bool_t  PrintYields(TH1 *hist, Double_t edge); 
-
-  //interface to the correction framework
-  void Correct();
-  void Correct(Int_t step);
-  Bool_t ReadCorrectionContainer(const char* filename);
-
-  void SetCorrectionMapForFeedDown(const char* filename);
-  TH2D *GetCorrectionMapForFeedDownProtons() {
-    return fHistYPtCorrectionForFeedDownProtons;}
-  TH2D *GetCorrectionMapForFeedDownAntiProtons() {
-    return fHistYPtCorrectionForFeedDownAntiProtons;}
-
-  void SetCorrectionMapForCuts(const char* filename);
-  TH2D *GetCorrectionMapForCutsProtons() {
-    return fHistYPtCorrectionForCutsProtons;}
-  TH2D *GetCorrectionMapForCutsAntiProtons() {
-    return fHistYPtCorrectionForCutsAntiProtons;}
-
-  void SetCorrectionMapForTracking(const char* filename);
-  TH2D *GetCorrectionMapForTrackingProtons() {
-    return fHistYPtCorrectionForTrackingProtons;}
-  TH2D *GetCorrectionMapForTrackingAntiProtons() {
-    return fHistYPtCorrectionForTrackingAntiProtons;}
-
-
-  void SetCorrectionMapForSecondaries(const char* filename);
-  TH2D *GetCorrectionMapForSecondaries() {
-    return fHistYPtCorrectionForSecondaries;}
-
-  void SetCorrectionMapForCrossSection(const char* filename);
-  TH2D *GetProtonsCorrectionMapForCrossSection() {
-    return fHistCorrectionForCrossSectionYPtProtons;}
-  TH2D *GetAntiProtonsCorrectionMapForCrossSection() {
-    return fHistCorrectionForCrossSectionYPtAntiProtons;}
-
-  //iStep=0->MC - iStep=1->Acceptance - iStep=2->Reconstruction - iStep=3->PID
-  TH1D  *GetUncorrectedProtonYHistogram(Int_t iStep) {return fProtonContainer->ShowProjection(0, iStep);}
-  TH1D  *GetUncorrectedProtonPtHistogram(Int_t iStep) {return fProtonContainer->ShowProjection(1, iStep);}
-  TH1D  *GetUncorrectedAntiProtonYHistogram(Int_t iStep) {return fAntiProtonContainer->ShowProjection(0, iStep);}
-  TH1D  *GetUncorrectedAntiProtonPtHistogram(Int_t iStep) {return fAntiProtonContainer->ShowProjection(1, iStep);}
-
- private:
-  AliProtonAnalysis(const AliProtonAnalysis&); // Not implemented
-  AliProtonAnalysis& operator=(const AliProtonAnalysis&); // Not implemented
-  
-  AliProtonAnalysisBase *fProtonAnalysisBase;//base analysis object
-
-  Int_t fNBinsY; //number of bins in y or eta
-  Double_t fMinY, fMaxY; //min & max value of y or eta
-  Int_t fNBinsPt;  //number of bins in pT
-  Double_t fMinPt, fMaxPt; //min & max value of pT
-  
-  //Analysis containers
-  AliCFContainer *fProtonContainer; //container for protons
-  AliCFContainer *fAntiProtonContainer; //container for antiprotons
-  TH1I *fHistEvents; //event counter
-  TH2D *fHistYPtProtons; //Y-Pt of Protons
-  TH2D *fHistYPtAntiProtons; // Y-Pt of Antiprotons
-  TH2D *fHistYPtProtonsCorrected; //Y-Pt of Protons (corrected)
-  TH2D *fHistYPtAntiProtonsCorrected; // Y-Pt of Antiprotons (corrected)
-  TH1F *fHistEventStats;//Event statistics
-  TList *fYRatioInPtBinsList;//TList of the eta dependent ratios for each pT bin
-
-  //Corrections
-  TList *fEffGridListProtons; //list for the efficiency grid - protons 
-  TList *fCorrectionListProtons2D; //list for the 2d corrections 
-  TList *fEfficiencyListProtons1D; //list for the 1d efficiencies
-  TList *fCorrectionListProtons1D; //list for the 1d corrections 
-  TList *fEffGridListAntiProtons; //list for the efficiency grid - antiprotons 
-  TList *fCorrectionListAntiProtons2D; //list for the 2d corrections 
-  TList *fEfficiencyListAntiProtons1D; //list for the 1d efficiencies
-  TList *fCorrectionListAntiProtons1D; //list for the 1d corrections 
-  AliCFDataGrid *fCorrectProtons; //corrected data grid for protons
-  AliCFDataGrid *fCorrectAntiProtons; //corrected data grid for antiprotons
-  TH2D *fHistEfficiencyYPtProtons;//efficiency 2D for the corrections - protons
-  TH2D *fHistEfficiencyYPtAntiProtons;//efficiency 2D for the corrections - antiprotons
-  TH2D *fHistCorrectionForCrossSectionYPtProtons;//correction for the proper cross-section - 2D protons
-  TH2D *fHistCorrectionForCrossSectionYPtAntiProtons;//correction for the proper cross-section - 2D antiprotons
-  Bool_t fHistCorrectionForCrossSectionFlag;//correct for cross-section
-  TH2D *fHistYPtCorrectionForCutsProtons;//correction factors for the cut efficiency (protons)
-  TH2D *fHistYPtCorrectionForCutsAntiProtons;//correction factors for the cut efficiency (antiprotons)
-  Bool_t fCorrectForCutsFlag;//correct for the cut efficiency
-  TH2D *fHistYPtCorrectionForTrackingProtons;//correction factors for the tracking efficiency (protons)
-  TH2D *fHistYPtCorrectionForTrackingAntiProtons;//correction factors for the tracking efficiency (antiprotons)
-  Bool_t fCorrectForTrackingFlag;//correct for the tracking efficiency
-  TH2D *fHistYPtCorrectionForFeedDownProtons;//correction factors for the feed-down contamination (protons)
-  TH2D *fHistYPtCorrectionForFeedDownAntiProtons;//correction factors for the feed-down contamination (antiprotons)
-  Bool_t fCorrectForFeedDownFlag;//correct for cut efficiency
-  TH2D *fHistYPtCorrectionForSecondaries;//correction factors for the background protons
-  Bool_t fCorrectForSecondariesFlag;//correct for secondaries
-
-  //QA lists
-  TList *fGlobalQAList; //global list
-  TList *fQA2DList; //QA 2D list
-  TList *fQAProtonsAcceptedList; //accepted protons
-  TList *fQAProtonsRejectedList; //rejected protons
-  TList *fQAAntiProtonsAcceptedList; //accepted antiprotons
-  TList *fQAAntiProtonsRejectedList; //rejected antiprotons
-
-  ClassDef(AliProtonAnalysis,1);
-};
-
-#endif