GFMultiDmFitter


class description - source file - inheritance tree

class GFMultiDmFitter : public TObject


    protected:
void Init() public:
GFMultiDmFitter() GFMultiDmFitter(const GFMultiDmFitter&) virtual ~GFMultiDmFitter() static TClass* Class() TArrayD CountSignal(TH1* hist, TH1* hWc, Bool_t subtractBack) const TH1* Fit(TH2* hist2D, TH1* histRef = 0, TH2* histWc2D = 0, TH1* histWcRef = 0) TH1* Fit(TH2* hist2D, TH2* histWc2D) TArrayD FitAll(TH1* hist, TH1* histWc = 0) TArrayD FitSingle(TH1* hist, TH1* hWc) const DstarDmFitter* GetDstarDmFitter() Double_t GetEndDmSignal() const Int_t GetFitModeAll() const Int_t GetFitModeBins() const Int_t GetFitOrNotFlag() const GFHistArray* GetHists1D() GFHistArray* GetHists1DWc() TH1* GetHistSignalBack() UInt_t GetMergeNBins() const Double_t GetStartDmSignal() const virtual TClass* IsA() const void SetEndDmSignal(Double_t end) Int_t SetFitModeAll(Int_t mode) Int_t SetFitModeBins(Int_t mode) Int_t SetFitOrNotFlag(Int_t flag) void SetMergeNBins(UInt_t mergeN) void SetSmartMode(Bool_t s) void SetStartDmSignal(Double_t start) void SetStartUsqr(Float_t val) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
DstarDmFitter* fFitter Int_t fFitModeAll Int_t fFitModeBins Int_t fFitOrNotFlag 0: fit, 1: subtract backgr, 2: count SR, 3: all deltaM 4: subtract the fit to scaled background, 5: subtract background function integral from counted signal UInt_t fMergeNBins number of bins to be merged together before fitting Double_t fOldParams[5] storage of parameters of reference fit Float_t fStartUsqr Double_t fStartDmSignal Double_t fEndDmSignal Double_t fStartDmBackgr Double_t fEndDmBackgr GFHistArray* fHists1D GFHistArray* fHists1DWc TH1* fHistSignalBack

Class Description

                                                                      
 GFMultiDmFitter                                                      

   Author:      Gero Flucke
   Date:        June 10th, 2003
   last update: $Date: 2005/11/15 17:27:52 $
   by:          $Author: flucke $
                                                                      
 fitting several delta m histogramms using DstarDmFitter              
                                                                      


GFMultiDmFitter()

~GFMultiDmFitter()

void SetSmartMode(Bool_t s)

void Init()

TH1* Fit(TH2* hist2D, TH1* histRef, TH2* hist2DWc, TH1* histWcRef)
 hist2D has x-axis bins in delta m!
 If histAll given it will be taken as reference hist for fixing parameters,
 otherwise the projection of hist2D is taken.
 This method allocates memory:
   - the returned histogram
   - the 1-D hists that can be accessed via   GFHistArray* GetHists1D()
     (but the array is owned by this class!)
   - dito for WC 1-D hists if hist2DWc is given (accessed via   GFHistArray* GetHists1DWc()
   - the histogram of the signal/background ratios, to be accessed via GetHistSignalBack()

TArrayD FitAll(TH1* hist, TH1* histWc)
 fit hist with fFitModeAll (histWc as possible WC-background hist),
 return array {N(D*), err(ND*), S/B-ratio, scale to be applied to histWc}
 to get same normalisation of the background part
 if fit not successful, result is an empty array
 (fOldParams is filled with result of this fit - if successful!)

TArrayD FitSingle(TH1* hist, TH1* hWc) const
 returning TArrayD of length 4:
   N(D*), error, S/B-ratio, scale between hist and hWc fit normalisation

TArrayD CountSignal(TH1* hist, TH1* hWc, Bool_t subtractBack) const
 returning array of length 4: first 2 are number of D* in signal region and error
 - if hWc != NULL:
   subtract the entries in signal region (i.e. fStartDmSignal -> fEndDmSignal)
   from the signal region of 'hist'. Scale the number from WC hist like the ratio
   of entries in background region (fStartDmBackgr -> fEndDmBackgr).
   Assuming same binning for both hists!
 - if subtractBack == kTRUE && hWc == NULL:
   subtracts
   (mean bin content from fStartDmBackgr to fEndDmBackgr) times (number of signal bins)
   from number of entries in signal region (fStartDmSignal to fEndDmSignal)
   makes only sense for low statistics distributions with few entries
   in the background region (otherwise we get sometimes negative results)
 - if subtractBack == kFALSE && hWc == NULL:
   just integrate full signal region (i.e. fStartDmSignal -> fEndDmSignal

 third position of array is ratio signal/(subtracted background)
 (empty if subtractBack == kFALSE && hWc == NULL)
 fourth position is scale applied to hWc (empty if hWc == NULL)



Inline Functions


                   TH1* Fit(TH2* hist2D, TH2* histWc2D)
                  Int_t SetFitModeAll(Int_t mode)
                  Int_t SetFitModeBins(Int_t mode)
                  Int_t SetFitOrNotFlag(Int_t flag)
                   void SetMergeNBins(UInt_t mergeN)
                   void SetStartUsqr(Float_t val)
                   void SetStartDmSignal(Double_t start)
                   void SetEndDmSignal(Double_t end)
                  Int_t GetFitModeAll() const
                  Int_t GetFitModeBins() const
                  Int_t GetFitOrNotFlag() const
                 UInt_t GetMergeNBins() const
         DstarDmFitter* GetDstarDmFitter()
               Double_t GetStartDmSignal() const
               Double_t GetEndDmSignal() const
           GFHistArray* GetHists1D()
           GFHistArray* GetHists1DWc()
                   TH1* GetHistSignalBack()
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
        GFMultiDmFitter GFMultiDmFitter(const GFMultiDmFitter&)


Last update: Wed Jan 11 14:07:26 2006


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.