#include <TPaveText.h>
#include <TList.h>
#include <TFitResult.h>
-//#include <../hist/hist/src/TF1Helper.h> //not supposed to be used!
+#include <../hist/hist/src/TF1Helper.h>
#include <AliLog.h>
// by the user in its macro
fHistDataPM->Fit(fFuncSigBack, fFitOpt.Data(), "", fFitMin, fFitMax);
TFitResultPtr pmFitPtr = fHistDataPM->Fit(fFuncSigBack, fFitOpt.Data(), "", fFitMin, fFitMax);
- //TFitResult *pmFitResult = pmFitPtr.Get(); //not used when TF1Helper out
+ TFitResult *pmFitResult = pmFitPtr.Get();
fFuncSignal->SetParameters(fFuncSigBack->GetParameters());
fFuncBackground->SetParameters(fFuncSigBack->GetParameters()+fFuncSignal->GetNpar());
Double_t epm = fHistDataPM->GetBinError(iBin);
Double_t bknd = fFuncBackground->Eval(m);
Double_t ebknd = 0;
- /* to be revised ... TF1Helper
for(Int_t iPar=fFuncSignal->GetNpar(); iPar<fFuncSigBack->GetNpar(); iPar++) {
for(Int_t jPar=iPar; jPar<fFuncSigBack->GetNpar(); jPar++) {
TF1 gradientIpar("gradientIpar",
(iPar==jPar ? 1.0 : 2.0);
}
}
- */ // TF1Helper
Double_t signal = pm-bknd;
Double_t error = TMath::Sqrt(epm*epm+ebknd);
fHistSignal->SetBinContent(iBin, signal);
// signal
fValues(0) = fFuncSignal->Integral(fIntMin, fIntMax)/fHistDataPM->GetBinWidth(1);
fErrors(0) = 0;
- /* to be revised ... TF1Helper
for(Int_t iPar=0; iPar<fFuncSignal->GetNpar(); iPar++) {
for(Int_t jPar=iPar; jPar<fFuncSignal->GetNpar(); jPar++) {
TF1 gradientIpar("gradientIpar",
(iPar==jPar ? 1.0 : 2.0);
}
}
- */ //TF1Helper
// background
fValues(1) = fFuncBackground->Integral(fIntMin, fIntMax)/fHistDataPM->GetBinWidth(1);
fErrors(1) = 0;
- /* to be revised... TF1Helper
for(Int_t iPar=fFuncSignal->GetNpar(); iPar<fFuncSigBack->GetNpar(); iPar++) {
for(Int_t jPar=iPar; jPar<fFuncSigBack->GetNpar(); jPar++) {
TF1 gradientIpar("gradientIpar",
(iPar==jPar ? 1.0 : 2.0);
}
}
- */ // TF1Helper
}
else {
// signal
TFitResultPtr mmFitPtr = fHistDataMM->Fit(funcCloneMM, fFitOpt.Data(), "", fFitMin, fFitMax);
mmFitResult = mmFitPtr.Get();
- /* to be revised ... TF1Helper
for(Int_t iBin=1; iBin<=fHistDataPM->GetXaxis()->GetNbins(); iBin++) {
Double_t m = fHistDataPM->GetBinCenter(iBin);
Double_t pm = fHistDataPM->GetBinContent(iBin);
(iPar==jPar ? 1.0 : 2.0);
}
}
-
Double_t emm = 0;
for(Int_t iPar=0; iPar<funcCloneMM->GetNpar(); iPar++) {
for(Int_t jPar=iPar; jPar<funcCloneMM->GetNpar(); jPar++) {
fHistBackground->SetBinContent(iBin, background);
fHistBackground->SetBinError(iBin, ebackground);
}
- */ // TF1Helper
-
+
// signal
fValues(0) = fHistSignal->IntegralAndError(fHistSignal->FindBin(fIntMin),
fHistSignal->FindBin(fIntMax), fErrors(0));