GSI Object Oriented Online Offline (Go4)  GO4-6.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4FitModelPolynom.h
Go to the documentation of this file.
1 // $Id: TGo4FitModelPolynom.h 3393 2021-12-15 12:01:38Z linev $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef TGO4FITMODELPOLYNOM_H
15 #define TGO4FITMODELPOLYNOM_H
16 
17 #include "TGo4FitModel.h"
18 
19 class TArrayD;
20 
52  public:
53 
58 
63  TGo4FitModelPolynom(const char* iName, Double_t iOrderX = 0.);
64 
69  TGo4FitModelPolynom(const char* iName, Double_t iOrderX, Double_t iOrderY);
70 
75  TGo4FitModelPolynom(const char* iName, Double_t iOrderX, Double_t iOrderY, Double_t iOrderZ);
76 
83  TGo4FitModelPolynom(const char* iName, const TArrayD& iPolynomOrders);
84 
88  virtual ~TGo4FitModelPolynom();
89 
93  Double_t GetPolynomOrder(Int_t naxis);
94 
98  Int_t GetMaxNumAxis();
99 
103  Bool_t SetMaxNumAxis(Int_t numaxis);
104 
108  virtual void Print(Option_t* option) const;
109 
110  virtual Bool_t BeforeEval(Int_t NDimension);
111  virtual Double_t EvalN(const Double_t* v);
112  virtual void AfterEval();
113 
114 
115  protected:
116  TString GetOrderParName(Int_t naxis);
117 
118 
119  private:
120  void CreateOrdersPars(const Double_t* orders, Int_t startaxis, Int_t maxaxis, Int_t AtIndx = -1);
121 
125  Int_t Par_ndim;
126 
127 
131  TArrayD* fxAllOrders;
132 
133 
137  Double_t* Par_orders;
138 
140 };
141 #endif // TGO4FITMODELPOLYNOM_H
TString GetOrderParName(Int_t naxis)
virtual Bool_t BeforeEval(Int_t NDimension)
ClassDef(TGo4FitSlotList, 1)
Bool_t SetMaxNumAxis(Int_t numaxis)
virtual Double_t EvalN(const Double_t *v)
void CreateOrdersPars(const Double_t *orders, Int_t startaxis, Int_t maxaxis, Int_t AtIndx=-1)
Double_t GetPolynomOrder(Int_t naxis)
virtual void Print(Option_t *option) const