ROOT logo
//__________________________________________________//
AliBalancePsi *GetBalanceFunctionObject(const char* analysisLevel = "MCAOD",   //
					const char* centralityName = 0x0,
					Double_t centrMin = 0.,
					Double_t centrMax = 100.,
					Bool_t bShuffle = kFALSE,
					Bool_t bResonancesCut = kFALSE,
					Bool_t bHBTCut = kFALSE,
					Double_t HBTCutValue = 0.02,
					Bool_t bConversionCut = kFALSE,
					Double_t invMassForConversionCut = 0.04,
					Bool_t bMomentumDifferenceCut = kFALSE,
					Double_t fQCutMin = 0.0,
					TString fArgEventClass = "EventPlane",
					Double_t deltaEtaMax = 2.0,
					Bool_t bVertexBinning = kFALSE) {
  //Function to setup the AliBalance object and return it
  AliBalancePsi *gBalance = new AliBalancePsi();
  gBalance->SetAnalysisLevel(analysisLevel);
  gBalance->SetShuffle(bShuffle);
  if(bResonancesCut) gBalance->UseResonancesCut();
  if(bHBTCut) gBalance->UseHBTCut(HBTCutValue);
  if(bConversionCut) gBalance->UseConversionCut(invMassForConversionCut);
  if(bMomentumDifferenceCut) gBalance->UseMomentumDifferenceCut(fQCutMin);
  if(centralityName) gBalance->SetCentralityIdentifier(centralityName);
  if(bVertexBinning) gBalance->SetVertexZBinning();
  gBalance->SetCentralityInterval(centrMin,centrMax);
  gBalance->SetEventClass(fArgEventClass);
  gBalance->SetDeltaEtaMax(deltaEtaMax);

  //Set all analyses separately
  //Rapidity
  //gBalance->SetInterval(AliBalance::kRapidity,-0.8,0.8,32,-1.6,1.6,15.);  
  //Eta
  //gBalance->SetInterval(AliBalance::kEta,-0.8,0.8,32,-1.6,1.6,15);
  //Qlong
  //gBalance->SetInterval(AliBalance::kQlong,-1,1,200,0.0,4.0,15);
  //Qout
  //gBalance->SetInterval(AliBalance::kQout,-1,1,200,0.0,4.0,15);
  //Qside
  //gBalance->SetInterval(AliBalance::kQside,-1,1,200,0.0,4.0,15);
  //Qinv
  //gBalance->SetInterval(AliBalance::kQinv,-1,1,200,0.0,4.0,15);
  //Phi
  //gBalance->SetInterval(AliBalance::kPhi,0.,360.,90,-180.,180.0,15);

  // Init the histograms (not done here, for customization from analysis task)
  // gBalance->InitHistograms();
  
  return gBalance;
}

//__________________________________________________//
AliESDtrackCuts *GetTrackCutsObject(Double_t ptMin, Double_t ptMax, Double_t etaMin, Double_t etaMax, Double_t maxTPCchi2, Double_t maxDCAz, Double_t maxDCAxy, Int_t minNClustersTPC) {

  // only used for ESDs
  // Function to setup the AliESDtrackCuts object and return it
  AliESDtrackCuts *cuts = AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
  cuts->SetRequireTPCStandAlone(kTRUE); // TPC only cuts!  

  // extra TPC cuts (Syst studies)
  if(minNClustersTPC != -1)  cuts->SetMinNClustersTPC(minNClustersTPC);
  else cuts->SetMinNClustersTPC(70); // standard for filter bit 128
  
  if(maxTPCchi2 != -1) cuts->SetMaxChi2PerClusterTPC(maxTPCchi2);

  // extra DCA cuts (Syst studies)  
  if(maxDCAz!=-1 && maxDCAxy != -1){
    cuts->SetMaxDCAToVertexZ(maxDCAz);
    cuts->SetMaxDCAToVertexXY(maxDCAxy);
  }

  cuts->SetPtRange(ptMin,ptMax);
  cuts->SetEtaRange(etaMin,etaMax);
  cuts->DefineHistograms(1);
  //cuts->SaveHistograms("trackCuts");

  return cuts;
}

 configBalanceFunctionPsiAnalysis.C:1
 configBalanceFunctionPsiAnalysis.C:2
 configBalanceFunctionPsiAnalysis.C:3
 configBalanceFunctionPsiAnalysis.C:4
 configBalanceFunctionPsiAnalysis.C:5
 configBalanceFunctionPsiAnalysis.C:6
 configBalanceFunctionPsiAnalysis.C:7
 configBalanceFunctionPsiAnalysis.C:8
 configBalanceFunctionPsiAnalysis.C:9
 configBalanceFunctionPsiAnalysis.C:10
 configBalanceFunctionPsiAnalysis.C:11
 configBalanceFunctionPsiAnalysis.C:12
 configBalanceFunctionPsiAnalysis.C:13
 configBalanceFunctionPsiAnalysis.C:14
 configBalanceFunctionPsiAnalysis.C:15
 configBalanceFunctionPsiAnalysis.C:16
 configBalanceFunctionPsiAnalysis.C:17
 configBalanceFunctionPsiAnalysis.C:18
 configBalanceFunctionPsiAnalysis.C:19
 configBalanceFunctionPsiAnalysis.C:20
 configBalanceFunctionPsiAnalysis.C:21
 configBalanceFunctionPsiAnalysis.C:22
 configBalanceFunctionPsiAnalysis.C:23
 configBalanceFunctionPsiAnalysis.C:24
 configBalanceFunctionPsiAnalysis.C:25
 configBalanceFunctionPsiAnalysis.C:26
 configBalanceFunctionPsiAnalysis.C:27
 configBalanceFunctionPsiAnalysis.C:28
 configBalanceFunctionPsiAnalysis.C:29
 configBalanceFunctionPsiAnalysis.C:30
 configBalanceFunctionPsiAnalysis.C:31
 configBalanceFunctionPsiAnalysis.C:32
 configBalanceFunctionPsiAnalysis.C:33
 configBalanceFunctionPsiAnalysis.C:34
 configBalanceFunctionPsiAnalysis.C:35
 configBalanceFunctionPsiAnalysis.C:36
 configBalanceFunctionPsiAnalysis.C:37
 configBalanceFunctionPsiAnalysis.C:38
 configBalanceFunctionPsiAnalysis.C:39
 configBalanceFunctionPsiAnalysis.C:40
 configBalanceFunctionPsiAnalysis.C:41
 configBalanceFunctionPsiAnalysis.C:42
 configBalanceFunctionPsiAnalysis.C:43
 configBalanceFunctionPsiAnalysis.C:44
 configBalanceFunctionPsiAnalysis.C:45
 configBalanceFunctionPsiAnalysis.C:46
 configBalanceFunctionPsiAnalysis.C:47
 configBalanceFunctionPsiAnalysis.C:48
 configBalanceFunctionPsiAnalysis.C:49
 configBalanceFunctionPsiAnalysis.C:50
 configBalanceFunctionPsiAnalysis.C:51
 configBalanceFunctionPsiAnalysis.C:52
 configBalanceFunctionPsiAnalysis.C:53
 configBalanceFunctionPsiAnalysis.C:54
 configBalanceFunctionPsiAnalysis.C:55
 configBalanceFunctionPsiAnalysis.C:56
 configBalanceFunctionPsiAnalysis.C:57
 configBalanceFunctionPsiAnalysis.C:58
 configBalanceFunctionPsiAnalysis.C:59
 configBalanceFunctionPsiAnalysis.C:60
 configBalanceFunctionPsiAnalysis.C:61
 configBalanceFunctionPsiAnalysis.C:62
 configBalanceFunctionPsiAnalysis.C:63
 configBalanceFunctionPsiAnalysis.C:64
 configBalanceFunctionPsiAnalysis.C:65
 configBalanceFunctionPsiAnalysis.C:66
 configBalanceFunctionPsiAnalysis.C:67
 configBalanceFunctionPsiAnalysis.C:68
 configBalanceFunctionPsiAnalysis.C:69
 configBalanceFunctionPsiAnalysis.C:70
 configBalanceFunctionPsiAnalysis.C:71
 configBalanceFunctionPsiAnalysis.C:72
 configBalanceFunctionPsiAnalysis.C:73
 configBalanceFunctionPsiAnalysis.C:74
 configBalanceFunctionPsiAnalysis.C:75
 configBalanceFunctionPsiAnalysis.C:76
 configBalanceFunctionPsiAnalysis.C:77
 configBalanceFunctionPsiAnalysis.C:78
 configBalanceFunctionPsiAnalysis.C:79
 configBalanceFunctionPsiAnalysis.C:80
 configBalanceFunctionPsiAnalysis.C:81