Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

TGo4FitModelGaussN.h

Go to the documentation of this file.
00001 //-------------------------------------------------------------
00002 //        Go4 Release Package v3.04-01 (build 30401)
00003 //                      28-November-2008
00004 //---------------------------------------------------------------
00005 //   The GSI Online Offline Object Oriented (Go4) Project
00006 //   Experiment Data Processing at EE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #ifndef TGO4FITMODELGAUSSN_H
00017 #define TGO4FITMODELGAUSSN_H
00018 
00019 #include "TGo4FitModel.h"
00020 
00021 #include "TArrayI.h"
00022 #include "TVectorD.h"
00023 #include "TMatrixD.h"
00024 
00039 class TGo4FitModelGaussN : public TGo4FitModel {
00040    public:
00041 
00045       TGo4FitModelGaussN();
00046 
00051       TGo4FitModelGaussN(const char* iName, Int_t iNDimension = 3);
00052 
00056       virtual ~TGo4FitModelGaussN();
00057 
00061       Int_t GetAxisNumbers() { return fxIndexes.GetSize(); }
00062 
00066       Bool_t SetAxisNumbers(Int_t naxis);
00067 
00073       Int_t GetAxisForIndex(Int_t indx) { return fxIndexes[indx]; }
00074 
00078       void SetAxisForIndex(Int_t indx, Int_t axis) { fxIndexes[indx] = axis; }
00079 
00084       Bool_t ResortIndexes(Int_t leaveaxis = -1);
00085 
00089       void FillMuVector(TVectorD& Mu);
00090 
00094       void FillSigmaMatrix(TMatrixD& Sigma);
00095 
00099       virtual void Print(Option_t* option) const;
00100 
00101       virtual Bool_t BeforeEval(Int_t);
00102       virtual Double_t EvalN(const Double_t* v);
00103 
00104    protected:
00105       TString GetPosParName(Int_t naxis);
00106       TString GetWidthParName(Int_t naxis);
00107       TString GetCovarParName(Int_t naxis1, Int_t naxis2);
00108 
00109       virtual Int_t GetPosParIndex(Int_t naxis);
00110       virtual Int_t GetWidthParIndex(Int_t naxis);
00111 
00112       virtual void AfterEval();
00113 
00117       TArrayI fxIndexes;
00118 
00119    private:
00120 
00124       Int_t Par_ndim;                 
00125 
00126 
00130       Int_t* Par_indx;                
00131 
00132 
00136       TVectorD* Vect_mu;          
00137 
00138 
00142       TMatrixD* Matr_sig;         
00143 
00144 
00148       TVectorD* Vect_x;           
00149 
00150 
00154       TVectorD* Vect_dx;          
00155 
00156    ClassDef(TGo4FitModelGaussN,1)
00157 };
00158 #endif // TGO4FITMODELGAUSSN_H
00159 
00160 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Fri Nov 28 12:59:12 2008 for Go4-v3.04-1 by  doxygen 1.4.2