FlowCalculator.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef FLOWCALCULATOR_H
  2. #define FLOWCALCULATOR_H
  3. #include "../Centrality/CentralityCalculator.cxx"
  4. #include "../Utils/BaseReader.cxx"
  5. #include <TVector2.h>
  6. #include <TRandom3.h>
  7. #include <TDatime.h>
  8. #include <vector>
  9. class FlowCalculator : public BaseReader
  10. {
  11. public:
  12. CentralityCalculator *centCalc;
  13. std::vector<Double_t> eta_gap;
  14. std::vector<std::pair<Double_t,Double_t> > eta_rxn;
  15. TH1F *h_res2TPC[4];
  16. TH1F *h_res3TPC[4];
  17. TH1F *h_res2RXN[3];
  18. TH1F *h_res3RXN[3];
  19. TVector2 fQv2EastTPC[4], fQv3EastTPC[4];
  20. TVector2 fQv2WestTPC[4], fQv3WestTPC[4];
  21. TVector2 fQv2EastRXN[3], fQv3EastRXN[3];
  22. TVector2 fQv2WestRXN[3], fQv3WestRXN[3];
  23. TVector2 fQv2FullRXN[3], fQv3FullRXN[3];
  24. TVector2 fQv1EastZDC, fQv1WestZDC, fQv1FullZDC;
  25. TVector2 fQv2MiddTPC, fQv3MiddTPC;
  26. int multEastRXN[3], multWestRXN[3];
  27. int multEastZDC, multWestZDC;
  28. Double_t fRes2RXN[3][10];
  29. Double_t fRes2TPC[3][10];
  30. Double_t fRes3RXN[3][10];
  31. Double_t fRes3TPC[3][10];
  32. TString histRefMultName;
  33. Bool_t fRotate;
  34. TRandom3 *fRnd;
  35. TDatime *fDate;
  36. Float_t fPsiRP;
  37. FlowCalculator(TTree *tree=0);
  38. virtual ~FlowCalculator();
  39. void InitCentFile(TString inName);
  40. void InitResFile(TString inName);
  41. void LoopRes(TString outName);
  42. void LoopFlow(TString outName);
  43. TVector2 GetQvTPC(Int_t side, Int_t harm, Int_t gap);
  44. TVector2 GetQvBBC(Int_t side, Int_t harm);
  45. TVector2 GetQvRXN(Int_t side, Int_t harm, Int_t part);
  46. void GetAllQv();
  47. Double_t GetPsiEP(const TVector2 &qv, Double_t harm);
  48. void SetRefMultHistName(TString _name) { histRefMultName = _name; }
  49. void RotateRP() { fRotate = true; }
  50. };
  51. #endif