GSI Object Oriented Online Offline (Go4)  GO4-6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4FitModelPolynom.h
Go to the documentation of this file.
1 // $Id: TGo4FitModelPolynom.h 2629 2019-10-01 08:20:21Z 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 
81  TGo4FitModelPolynom(const char* iName, const TArrayD& iPolynomOrders);
82 
86  virtual ~TGo4FitModelPolynom();
87 
91  Double_t GetPolynomOrder(Int_t naxis);
92 
96  Int_t GetMaxNumAxis();
97 
101  Bool_t SetMaxNumAxis(Int_t numaxis);
102 
106  virtual void Print(Option_t* option) const;
107 
108  virtual Bool_t BeforeEval(Int_t NDimension);
109  virtual Double_t EvalN(const Double_t* v);
110  virtual void AfterEval();
111 
112 
113  protected:
114  TString GetOrderParName(Int_t naxis);
115 
116 
117  private:
118  void CreateOrdersPars(const Double_t* orders, Int_t startaxis, Int_t maxaxis, Int_t AtIndx = -1);
119 
123  Int_t Par_ndim;
124 
125 
129  TArrayD* fxAllOrders;
130 
131 
135  Double_t* Par_orders;
136 
138 };
139 #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