1 #ifndef ALIANALYSISMUMUMINV_H
2 #define ALIANALYSISMUMUMINV_H
6 * \class AliAnalysisMuMuNch
7 * \brief Invariant mass dimuon analysis
8 * \author L. Aphecetche and J. Martin Blanco (Subatech)
11 #include "AliAnalysisMuMuBase.h"
12 #include "AliAnalysisMuMuBinning.h"
19 class AliAnalysisMuMuMinv : public AliAnalysisMuMuBase
23 AliAnalysisMuMuMinv(TH2* AccEffHisto=0x0, Bool_t computeMeanPt=kFALSE, Int_t systLevel=0);
24 virtual ~AliAnalysisMuMuMinv();
26 Bool_t IsPtInRange(const AliVParticle& t1, const AliVParticle& t2,
27 Double_t& ptmin, Double_t& ptmax) const;
29 void NameOfIsPtInRange(TString& name, Double_t& ymin, Double_t& ymax) const;
31 Bool_t IsRapidityInRange(const AliVParticle& t1, const AliVParticle& t2) const;
32 void NameOfIsRapidityInRange(TString& name) const { name = "PAIRY"; }
34 Bool_t ShouldCorrectDimuonForAccEff() { return (fAccEffHisto != 0x0); }
38 void DefineHistogramCollection(const char* eventSelection, const char* triggerClassName,
39 const char* centrality);
41 virtual void FillHistosForPair(const char* eventSelection,const char* triggerClassName,
42 const char* centrality,
43 const char* pairCutName,
44 const AliVParticle& part,
45 const AliVParticle& part2);
47 void FillHistosForMCEvent(const char* eventSelection,const char* triggerClassName,const char* centrality);
51 void CreateMinvHistograms(const char* eventSelection, const char* triggerClassName, const char* centrality);
53 TString GetMinvHistoName(const AliAnalysisMuMuBinning::Range& r, Bool_t accEffCorrected) const;
55 Double_t GetAccxEff(Double_t pt,Double_t rapidity);
57 Double_t WeightDistribution(Double_t pt,Double_t rapidity);
59 Double_t powerLaw3Par(Double_t *x, Double_t *par);
61 Double_t normPol12Par(Double_t *x, Double_t *par);
64 Bool_t fcomputeMeanPt;
69 ClassDef(AliAnalysisMuMuMinv,2) // implementation of AliAnalysisMuMuBase for muon pairs