#ifndef ALIANALYSISMUMUJPSIRESULT_H
#define ALIANALYSISMUMUJPSIRESULT_H
#include "TNamed.h"
#include <TString.h>
#include "AliAnalysisMuMuResult.h"
#include "AliAnalysisMuMuBinning.h"
class TH1;
class THashList;
class TF1;
class TMap;
class TFitResultPtr;
class AliAnalysisMuMuJpsiResult : public AliAnalysisMuMuResult
{
public:
AliAnalysisMuMuJpsiResult(TRootIOCtor* io);
AliAnalysisMuMuJpsiResult(const char* particle,
const TH1& hminv,
const char* fitType);
AliAnalysisMuMuJpsiResult(const char* particle,
const TH1& hminv,
const char* triggerClass,
const char* eventSelection,
const char* pairSelection,
const char* centSelection,
const AliAnalysisMuMuBinning::Range& bin);
AliAnalysisMuMuJpsiResult(const AliAnalysisMuMuJpsiResult& rhs);
AliAnalysisMuMuJpsiResult& operator=(const AliAnalysisMuMuJpsiResult& rhs);
virtual ~AliAnalysisMuMuJpsiResult();
virtual TObject* Clone(const char* newname = "") const;
Bool_t Correct(const AliAnalysisMuMuJpsiResult& other, const char* particle, const char* subResultName="");
TH1* Histo() const { return fHisto; }
Int_t NofTriggers() const;
void SetNofTriggers(Int_t n);
void Print(Option_t* opt="") const;
Bool_t AddFit(const char* fitType);
AliAnalysisMuMuJpsiResult* CountJpsi(TH1& h);
void FitPSICOUNT();
void FitPSICB2();
void FitPSINA60NEW();
void FitPSIPSIPRIMECB2VWG();
void FitPSIPSIPRIMECB2POL2EXP();
void FitPSIPSIPRIMENA60NEWVWG();
void FitPSIPSIPRIMENA60NEWPOL2EXP();
void FitPSIPSIPRIMECB2POL4EXP();
void FitPSIPSIPRIMENA60NEWPOL4EXP();
void FitPSIPSIPRIMECB2VWGINDEPTAILS();
void FitMPTPSIPSIPRIMECB2VWG_BKGMPTPOL2();
void FitMPTPSIPSIPRIMECB2VWG_BKGMPTPOL2EXP();
void FitMPTPSIPSIPRIMECB2POL2EXP_BKGMPTPOL2();
void FitMPTPSIPSIPRIMECB2POL2EXP_BKGMPTPOL2EXP();
void FitMPTPSIPSIPRIMECB2VWG_BKGMPTLIN();
void FitMPTPSIPSIPRIMECB2VWG_BKGMPTPOL3();
void FitMPTPSIPSIPRIMECB2VWG_BKGMPTPOL4();
void FitMPTPSIPSIPRIMECB2VWGINDEPTAILS_BKGMPTPOL2();
void FitMPTPSIPSIPRIMENA60NEWVWG_BKGMPTPOL2();
void FitMPTPSIPSIPRIMENA60NEWVWG_BKGMPTPOL2EXP();
void FitMPTPSIPSIPRIMENA60NEWPOL2EXP_BKGMPTPOL2();
void FitMPTPSIPSIPRIMENA60NEWPOL2EXP_BKGMPTPOL2EXP();
void FitMPTPSIPSIPRIMENA60NEWPOL4EXP_BKGMPTPOL2();
void FitPSIPSIPRIMECOMB_CB2VWG_MPTCB2VWG_BKGMPTPOL2();
Int_t NofRuns() const;
void SetNofRuns(int n);
const AliAnalysisMuMuBinning::Range& Bin() const;
void SetBin(const AliAnalysisMuMuBinning::Range& bin);
void SetNofInputParticles(const char* particle, int n);
void SetNofInputParticles(const TH1& hminv);
void SetHisto(const TH1& h);
Long64_t Merge(TCollection* list);
static Double_t CountParticle(const TH1& hminv, const char* particle, Double_t sigma=-1.0);
virtual AliAnalysisMuMuJpsiResult* Mother() const { return static_cast<AliAnalysisMuMuJpsiResult*>(AliAnalysisMuMuResult::Mother()); }
void PrintValue(const char* key, const char* opt, Double_t value, Double_t errorStat, Double_t rms=0.0) const;
TString FitFunctionName() const { return fFitFunction; }
TString GetFitFunctionMethodName() const;
void Draw(Option_t* opt="");
const char* GetParticle() { return fParticle; }
private:
enum EIndex
{
kValue=0,
kErrorStat=1
};
void DecodeFitType(const char* fitType);
void PrintParticle(const char* particle, const char* opt) const;
Double_t FitFunctionBackgroundLin(Double_t *x, Double_t *par);
Double_t FitFunctionBackgroundPol2Exp(Double_t* x, Double_t* par);
Double_t FitFunctionBackgroundPol4Exp(Double_t *x, Double_t *par);
Double_t FitFunctionBackgroundPol2(Double_t *x, Double_t *par);
Double_t FitFunctionBackgroundPol3(Double_t *x, Double_t *par);
Double_t FitFunctionBackgroundPol4(Double_t *x, Double_t *par);
Double_t FitFunctionBackgroundVWG(Double_t* x, Double_t* par);
Double_t FitFunctionSignalCrystalBallExtended(Double_t *x,Double_t *par);
Double_t FitFunctionNA60New(Double_t *x,Double_t *par);
Double_t FitFunctionTotalTwoNA60NewVWG(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoNA60NewPol2Exp(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoNA60NewPol4Exp(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoCB2Pol2Exp(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoCB2Pol4Exp(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoCB2VWG(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoCB2Lin(Double_t *x, Double_t *par);
Double_t FitFunctionTotalTwoCB2VWGINDEPTAILS(Double_t *x, Double_t *par);
Double_t alphaCB2VWG(Double_t*x, Double_t* par);
Double_t alphaCB2POL2EXP(Double_t*x, Double_t* par);
Double_t alphaNA60NEWVWG(Double_t*x, Double_t* par);
Double_t alphaNA60NEWPOL2EXP(Double_t*x, Double_t* par);
Double_t FitFunctionMeanPtSCB2Lin(Double_t* x, Double_t* par);
Double_t FitFunctionMeanPtS2CB2Lin(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtSCB2VWGPOL2(Double_t* x, Double_t* par);
Double_t FitFunctionMeanPtS2CB2VWGPOL2(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2VWGPOL2EXP(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2POL2EXPPOL2(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2POL2EXPPOL2EXP(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2NA60NEWVWGPOL2(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2NA60NEWVWGPOL2EXP(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2NA60NEWPOL2EXPPOL2(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2NA60NEWPOL2EXPPOL2EXP(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2VWGPOL3(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2VWGPOL2INDEPTAILS(Double_t *x, Double_t *par);
Double_t FitFunctionMeanPtS2CB2VWGPOL4(Double_t *x, Double_t *par);
void SetFitRejectRange(Double_t a=TMath::Limits<Double_t>::Max(),
Double_t b=TMath::Limits<Double_t>::Max());
void AttachFunctionsToHisto(TF1* signal, TF1* bck, TF1* total, Double_t xmin, Double_t xmax);
void AttachFunctionsToHisto(TF1* signal1, TF1* signal2, TF1* bck, TF1* total,Double_t xmin, Double_t xmax);
void SetParameter(TF1* func, Int_t npar, Double_t fix, Double_t initialValue,
Double_t min, Double_t max) const;
Bool_t WrongParameter(TF1* fitFunction, Int_t npar, Double_t fixValueIfWrong);
Bool_t StrongCorrelation(TFitResultPtr& fitResult, TF1* fitFunction, Int_t npar1, Int_t npar2, Double_t fixValueIfWrong);
private:
Int_t fNofRuns;
Int_t fNofTriggers;
TH1* fHisto;
AliAnalysisMuMuBinning::Range fBin;
TString fTriggerClass;
TString fEventSelection;
TString fPairSelection;
TString fCentralitySelection;
TString fFitFunction;
Double_t fFitRejectRangeLow;
Double_t fFitRejectRangeHigh;
Bool_t fRejectFitPoints;
TString fParticle;
TString fMinvRS;
ClassDef(AliAnalysisMuMuJpsiResult,8)
};
#endif
AliAnalysisMuMuJpsiResult.h:1 AliAnalysisMuMuJpsiResult.h:2 AliAnalysisMuMuJpsiResult.h:3 AliAnalysisMuMuJpsiResult.h:4 AliAnalysisMuMuJpsiResult.h:5 AliAnalysisMuMuJpsiResult.h:6 AliAnalysisMuMuJpsiResult.h:7 AliAnalysisMuMuJpsiResult.h:8 AliAnalysisMuMuJpsiResult.h:9 AliAnalysisMuMuJpsiResult.h:10 AliAnalysisMuMuJpsiResult.h:11 AliAnalysisMuMuJpsiResult.h:12 AliAnalysisMuMuJpsiResult.h:13 AliAnalysisMuMuJpsiResult.h:14 AliAnalysisMuMuJpsiResult.h:15 AliAnalysisMuMuJpsiResult.h:16 AliAnalysisMuMuJpsiResult.h:17 AliAnalysisMuMuJpsiResult.h:18 AliAnalysisMuMuJpsiResult.h:19 AliAnalysisMuMuJpsiResult.h:20 AliAnalysisMuMuJpsiResult.h:21 AliAnalysisMuMuJpsiResult.h:22 AliAnalysisMuMuJpsiResult.h:23 AliAnalysisMuMuJpsiResult.h:24 AliAnalysisMuMuJpsiResult.h:25 AliAnalysisMuMuJpsiResult.h:26 AliAnalysisMuMuJpsiResult.h:27 AliAnalysisMuMuJpsiResult.h:28 AliAnalysisMuMuJpsiResult.h:29 AliAnalysisMuMuJpsiResult.h:30 AliAnalysisMuMuJpsiResult.h:31 AliAnalysisMuMuJpsiResult.h:32 AliAnalysisMuMuJpsiResult.h:33 AliAnalysisMuMuJpsiResult.h:34 AliAnalysisMuMuJpsiResult.h:35 AliAnalysisMuMuJpsiResult.h:36 AliAnalysisMuMuJpsiResult.h:37 AliAnalysisMuMuJpsiResult.h:38 AliAnalysisMuMuJpsiResult.h:39 AliAnalysisMuMuJpsiResult.h:40 AliAnalysisMuMuJpsiResult.h:41 AliAnalysisMuMuJpsiResult.h:42 AliAnalysisMuMuJpsiResult.h:43 AliAnalysisMuMuJpsiResult.h:44 AliAnalysisMuMuJpsiResult.h:45 AliAnalysisMuMuJpsiResult.h:46 AliAnalysisMuMuJpsiResult.h:47 AliAnalysisMuMuJpsiResult.h:48 AliAnalysisMuMuJpsiResult.h:49 AliAnalysisMuMuJpsiResult.h:50 AliAnalysisMuMuJpsiResult.h:51 AliAnalysisMuMuJpsiResult.h:52 AliAnalysisMuMuJpsiResult.h:53 AliAnalysisMuMuJpsiResult.h:54 AliAnalysisMuMuJpsiResult.h:55 AliAnalysisMuMuJpsiResult.h:56 AliAnalysisMuMuJpsiResult.h:57 AliAnalysisMuMuJpsiResult.h:58 AliAnalysisMuMuJpsiResult.h:59 AliAnalysisMuMuJpsiResult.h:60 AliAnalysisMuMuJpsiResult.h:61 AliAnalysisMuMuJpsiResult.h:62 AliAnalysisMuMuJpsiResult.h:63 AliAnalysisMuMuJpsiResult.h:64 AliAnalysisMuMuJpsiResult.h:65 AliAnalysisMuMuJpsiResult.h:66 AliAnalysisMuMuJpsiResult.h:67 AliAnalysisMuMuJpsiResult.h:68 AliAnalysisMuMuJpsiResult.h:69 AliAnalysisMuMuJpsiResult.h:70 AliAnalysisMuMuJpsiResult.h:71 AliAnalysisMuMuJpsiResult.h:72 AliAnalysisMuMuJpsiResult.h:73 AliAnalysisMuMuJpsiResult.h:74 AliAnalysisMuMuJpsiResult.h:75 AliAnalysisMuMuJpsiResult.h:76 AliAnalysisMuMuJpsiResult.h:77 AliAnalysisMuMuJpsiResult.h:78 AliAnalysisMuMuJpsiResult.h:79 AliAnalysisMuMuJpsiResult.h:80 AliAnalysisMuMuJpsiResult.h:81 AliAnalysisMuMuJpsiResult.h:82 AliAnalysisMuMuJpsiResult.h:83 AliAnalysisMuMuJpsiResult.h:84 AliAnalysisMuMuJpsiResult.h:85 AliAnalysisMuMuJpsiResult.h:86 AliAnalysisMuMuJpsiResult.h:87 AliAnalysisMuMuJpsiResult.h:88 AliAnalysisMuMuJpsiResult.h:89 AliAnalysisMuMuJpsiResult.h:90 AliAnalysisMuMuJpsiResult.h:91 AliAnalysisMuMuJpsiResult.h:92 AliAnalysisMuMuJpsiResult.h:93 AliAnalysisMuMuJpsiResult.h:94 AliAnalysisMuMuJpsiResult.h:95 AliAnalysisMuMuJpsiResult.h:96 AliAnalysisMuMuJpsiResult.h:97 AliAnalysisMuMuJpsiResult.h:98 AliAnalysisMuMuJpsiResult.h:99 AliAnalysisMuMuJpsiResult.h:100 AliAnalysisMuMuJpsiResult.h:101 AliAnalysisMuMuJpsiResult.h:102 AliAnalysisMuMuJpsiResult.h:103 AliAnalysisMuMuJpsiResult.h:104 AliAnalysisMuMuJpsiResult.h:105 AliAnalysisMuMuJpsiResult.h:106 AliAnalysisMuMuJpsiResult.h:107 AliAnalysisMuMuJpsiResult.h:108 AliAnalysisMuMuJpsiResult.h:109 AliAnalysisMuMuJpsiResult.h:110 AliAnalysisMuMuJpsiResult.h:111 AliAnalysisMuMuJpsiResult.h:112 AliAnalysisMuMuJpsiResult.h:113 AliAnalysisMuMuJpsiResult.h:114 AliAnalysisMuMuJpsiResult.h:115 AliAnalysisMuMuJpsiResult.h:116 AliAnalysisMuMuJpsiResult.h:117 AliAnalysisMuMuJpsiResult.h:118 AliAnalysisMuMuJpsiResult.h:119 AliAnalysisMuMuJpsiResult.h:120 AliAnalysisMuMuJpsiResult.h:121 AliAnalysisMuMuJpsiResult.h:122 AliAnalysisMuMuJpsiResult.h:123 AliAnalysisMuMuJpsiResult.h:124 AliAnalysisMuMuJpsiResult.h:125 AliAnalysisMuMuJpsiResult.h:126 AliAnalysisMuMuJpsiResult.h:127 AliAnalysisMuMuJpsiResult.h:128 AliAnalysisMuMuJpsiResult.h:129 AliAnalysisMuMuJpsiResult.h:130 AliAnalysisMuMuJpsiResult.h:131 AliAnalysisMuMuJpsiResult.h:132 AliAnalysisMuMuJpsiResult.h:133 AliAnalysisMuMuJpsiResult.h:134 AliAnalysisMuMuJpsiResult.h:135 AliAnalysisMuMuJpsiResult.h:136 AliAnalysisMuMuJpsiResult.h:137 AliAnalysisMuMuJpsiResult.h:138 AliAnalysisMuMuJpsiResult.h:139 AliAnalysisMuMuJpsiResult.h:140 AliAnalysisMuMuJpsiResult.h:141 AliAnalysisMuMuJpsiResult.h:142 AliAnalysisMuMuJpsiResult.h:143 AliAnalysisMuMuJpsiResult.h:144 AliAnalysisMuMuJpsiResult.h:145 AliAnalysisMuMuJpsiResult.h:146 AliAnalysisMuMuJpsiResult.h:147 AliAnalysisMuMuJpsiResult.h:148 AliAnalysisMuMuJpsiResult.h:149 AliAnalysisMuMuJpsiResult.h:150 AliAnalysisMuMuJpsiResult.h:151 AliAnalysisMuMuJpsiResult.h:152 AliAnalysisMuMuJpsiResult.h:153 AliAnalysisMuMuJpsiResult.h:154 AliAnalysisMuMuJpsiResult.h:155 AliAnalysisMuMuJpsiResult.h:156 AliAnalysisMuMuJpsiResult.h:157 AliAnalysisMuMuJpsiResult.h:158 AliAnalysisMuMuJpsiResult.h:159 AliAnalysisMuMuJpsiResult.h:160 AliAnalysisMuMuJpsiResult.h:161 AliAnalysisMuMuJpsiResult.h:162 AliAnalysisMuMuJpsiResult.h:163 AliAnalysisMuMuJpsiResult.h:164 AliAnalysisMuMuJpsiResult.h:165 AliAnalysisMuMuJpsiResult.h:166 AliAnalysisMuMuJpsiResult.h:167 AliAnalysisMuMuJpsiResult.h:168 AliAnalysisMuMuJpsiResult.h:169 AliAnalysisMuMuJpsiResult.h:170 AliAnalysisMuMuJpsiResult.h:171 AliAnalysisMuMuJpsiResult.h:172 AliAnalysisMuMuJpsiResult.h:173 AliAnalysisMuMuJpsiResult.h:174 AliAnalysisMuMuJpsiResult.h:175 AliAnalysisMuMuJpsiResult.h:176 AliAnalysisMuMuJpsiResult.h:177 AliAnalysisMuMuJpsiResult.h:178 AliAnalysisMuMuJpsiResult.h:179 AliAnalysisMuMuJpsiResult.h:180 AliAnalysisMuMuJpsiResult.h:181 AliAnalysisMuMuJpsiResult.h:182 AliAnalysisMuMuJpsiResult.h:183 AliAnalysisMuMuJpsiResult.h:184 AliAnalysisMuMuJpsiResult.h:185 AliAnalysisMuMuJpsiResult.h:186 AliAnalysisMuMuJpsiResult.h:187 AliAnalysisMuMuJpsiResult.h:188 AliAnalysisMuMuJpsiResult.h:189 AliAnalysisMuMuJpsiResult.h:190 AliAnalysisMuMuJpsiResult.h:191 AliAnalysisMuMuJpsiResult.h:192 AliAnalysisMuMuJpsiResult.h:193 AliAnalysisMuMuJpsiResult.h:194 AliAnalysisMuMuJpsiResult.h:195 AliAnalysisMuMuJpsiResult.h:196 AliAnalysisMuMuJpsiResult.h:197 AliAnalysisMuMuJpsiResult.h:198 AliAnalysisMuMuJpsiResult.h:199 AliAnalysisMuMuJpsiResult.h:200 AliAnalysisMuMuJpsiResult.h:201 AliAnalysisMuMuJpsiResult.h:202 AliAnalysisMuMuJpsiResult.h:203 AliAnalysisMuMuJpsiResult.h:204 AliAnalysisMuMuJpsiResult.h:205 AliAnalysisMuMuJpsiResult.h:206 AliAnalysisMuMuJpsiResult.h:207 AliAnalysisMuMuJpsiResult.h:208 AliAnalysisMuMuJpsiResult.h:209 AliAnalysisMuMuJpsiResult.h:210 AliAnalysisMuMuJpsiResult.h:211 AliAnalysisMuMuJpsiResult.h:212 AliAnalysisMuMuJpsiResult.h:213 AliAnalysisMuMuJpsiResult.h:214 AliAnalysisMuMuJpsiResult.h:215 AliAnalysisMuMuJpsiResult.h:216 AliAnalysisMuMuJpsiResult.h:217 AliAnalysisMuMuJpsiResult.h:218 AliAnalysisMuMuJpsiResult.h:219 AliAnalysisMuMuJpsiResult.h:220 AliAnalysisMuMuJpsiResult.h:221 AliAnalysisMuMuJpsiResult.h:222 AliAnalysisMuMuJpsiResult.h:223 AliAnalysisMuMuJpsiResult.h:224 AliAnalysisMuMuJpsiResult.h:225 AliAnalysisMuMuJpsiResult.h:226 AliAnalysisMuMuJpsiResult.h:227 AliAnalysisMuMuJpsiResult.h:228 AliAnalysisMuMuJpsiResult.h:229 AliAnalysisMuMuJpsiResult.h:230 AliAnalysisMuMuJpsiResult.h:231 AliAnalysisMuMuJpsiResult.h:232 AliAnalysisMuMuJpsiResult.h:233 AliAnalysisMuMuJpsiResult.h:234 AliAnalysisMuMuJpsiResult.h:235 AliAnalysisMuMuJpsiResult.h:236 AliAnalysisMuMuJpsiResult.h:237 AliAnalysisMuMuJpsiResult.h:238 AliAnalysisMuMuJpsiResult.h:239 AliAnalysisMuMuJpsiResult.h:240 AliAnalysisMuMuJpsiResult.h:241 AliAnalysisMuMuJpsiResult.h:242 AliAnalysisMuMuJpsiResult.h:243 AliAnalysisMuMuJpsiResult.h:244 AliAnalysisMuMuJpsiResult.h:245 AliAnalysisMuMuJpsiResult.h:246 AliAnalysisMuMuJpsiResult.h:247 AliAnalysisMuMuJpsiResult.h:248 AliAnalysisMuMuJpsiResult.h:249 AliAnalysisMuMuJpsiResult.h:250 AliAnalysisMuMuJpsiResult.h:251 AliAnalysisMuMuJpsiResult.h:252 AliAnalysisMuMuJpsiResult.h:253 AliAnalysisMuMuJpsiResult.h:254 AliAnalysisMuMuJpsiResult.h:255 AliAnalysisMuMuJpsiResult.h:256 AliAnalysisMuMuJpsiResult.h:257 AliAnalysisMuMuJpsiResult.h:258 AliAnalysisMuMuJpsiResult.h:259 AliAnalysisMuMuJpsiResult.h:260 AliAnalysisMuMuJpsiResult.h:261 AliAnalysisMuMuJpsiResult.h:262 AliAnalysisMuMuJpsiResult.h:263 AliAnalysisMuMuJpsiResult.h:264 AliAnalysisMuMuJpsiResult.h:265 AliAnalysisMuMuJpsiResult.h:266 AliAnalysisMuMuJpsiResult.h:267 AliAnalysisMuMuJpsiResult.h:268 AliAnalysisMuMuJpsiResult.h:269