New switch - do not use the constant part
authormarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 May 2010 12:12:24 +0000 (12:12 +0000)
committermarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 May 2010 12:12:24 +0000 (12:12 +0000)
(marian)

STAT/TStatToolkit.cxx
STAT/TStatToolkit.h

index a5981a7..32d8695 100644 (file)
@@ -735,7 +735,7 @@ TGraph * TStatToolkit::MakeStat1D(TH3 * his, Int_t delta1, Int_t type){
 
 
 
-TString* TStatToolkit::FitPlane(TTree *tree, const char* drawCommand, const char* formula, const char* cuts, Double_t & chi2, Int_t &npoints, TVectorD &fitParam, TMatrixD &covMatrix, Float_t frac, Int_t start, Int_t stop){
+TString* TStatToolkit::FitPlane(TTree *tree, const char* drawCommand, const char* formula, const char* cuts, Double_t & chi2, Int_t &npoints, TVectorD &fitParam, TMatrixD &covMatrix, Float_t frac, Int_t start, Int_t stop,Bool_t fix0){
    //
    // fit an arbitrary function, specified by formula into the data, specified by drawCommand and cuts
    // returns chi2, fitParam and covMatrix
@@ -795,6 +795,11 @@ TString* TStatToolkit::FitPlane(TTree *tree, const char* drawCommand, const char
    fitter->Eval();
    if (frac>0.5 && frac<1){
      fitter->EvalRobust(frac);
+   }else{
+     if (fix0) {
+       fitter->FixParameter(0,0);
+       fitter->Eval();     
+     }
    }
    fitter->GetParameters(fitParam);
    fitter->GetCovarianceMatrix(covMatrix);
index c7a940b..d143b5c 100644 (file)
@@ -42,7 +42,7 @@ class TStatToolkit : public TObject
   //
   // Fitting function
   //
-  static TString* FitPlane(TTree * tree, const char* drawCommand, const char* formula, const char* cuts, Double_t & chi2, Int_t &npoints,  TVectorD &fitParam, TMatrixD &covMatrix, Float_t frac=-1, Int_t start=0, Int_t stop=10000000);
+  static TString* FitPlane(TTree * tree, const char* drawCommand, const char* formula, const char* cuts, Double_t & chi2, Int_t &npoints,  TVectorD &fitParam, TMatrixD &covMatrix, Float_t frac=-1, Int_t start=0, Int_t stop=10000000, Bool_t fix0=kFALSE);