X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWGDQ%2Fdielectron%2FAliDielectronSignalFunc.h;h=fc8f9576c1d05bc4eeb3c7615bc53009a5c24dd5;hb=3389fd7d8cafaba121364055c6f359c36cf9e3ca;hp=3797350942d4a99351eb69574e42831e05e45f8f;hpb=a14d0b3eedd3b6f9e394e419df943b5ccb116944;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWGDQ/dielectron/AliDielectronSignalFunc.h b/PWGDQ/dielectron/AliDielectronSignalFunc.h index 3797350942d..fc8f9576c1d 100644 --- a/PWGDQ/dielectron/AliDielectronSignalFunc.h +++ b/PWGDQ/dielectron/AliDielectronSignalFunc.h @@ -66,7 +66,6 @@ signalProcess->Print(); */ - #include #include #include @@ -86,9 +85,11 @@ public: void ProcessFit(TObjArray * const arrhist); // fit the SE +- distribution void ProcessLS(TObjArray * const arrhist); // substract the fitted SE like-sign background void ProcessEM(TObjArray * const arrhist); // substract the fitted SE+ME like-sign background - + + void SetMCSignalShape(TH1F* hist) { fgHistSimPM=hist; } void SetUseIntegral(Bool_t flag=kTRUE) {fUseIntegral = flag;}; void SetFunctions(TF1 * const combined, TF1 * const sig=0, TF1 * const back=0, Int_t parM=1, Int_t parMres=2); + void CombineFunc(TF1 * const peak=0, TF1 * const bgnd=0); void SetFitOption(const char* opt) { fFitOpt=opt; fFitOpt.ToLower(); @@ -100,12 +101,23 @@ public: TF1* GetBackgroundFunction() const { return fFuncBackground; } TF1* GetCombinedFunction() const { return fFuncSigBack; } + Int_t GetPolDeg() const { return fPolDeg; } + Int_t GetDof() const { return fDof; } + Double_t GetChi2Dof() const { return fChi2Dof; } + virtual void Draw(const Option_t* option = ""); private: - TF1 *fFuncSignal; // Function for the signal description - TF1 *fFuncBackground; // Function for the background description + // peak functions + static Double_t PeakFunMC(const Double_t *x, const Double_t *par); // peak function from a mc histo + static Double_t PeakFunCB(const Double_t *x, const Double_t *par); // crystal ball function + static Double_t PeakFunGaus(const Double_t *x, const Double_t *par); // gaussian + + static Double_t PeakBgndFun(const Double_t *x, const Double_t *par); // combine any bgrd and any peak function + + static TF1 *fFuncSignal; // Function for the signal description + static TF1 *fFuncBackground; // Function for the background description TF1 *fFuncSigBack; // Combined function signal plus background Int_t fParMass; // the index of the parameter corresponding to the resonance mass Int_t fParMassWidth; // the index of the parameter corresponding to the resonance mass width @@ -113,6 +125,15 @@ private: TString fFitOpt; // fit option used Bool_t fUseIntegral; // use the integral of the fitted functions to extract signal and background + Int_t fPolDeg; // polynomial degree of the background function + Int_t fDof; // degrees of freedom + Double_t fChi2Dof; // chi2/dof of the fitted inv mass spectra + + static Int_t fNparPeak; // number of parameters for peak function + static Int_t fNparBgnd; // number of parameters for background function + + static TH1F* fgHistSimPM; // simulated peak shape + ClassDef(AliDielectronSignalFunc,2) // Dielectron SignalFunc };