#include <FitObject.h>
Inheritance diagram for SctData::FitObject:

Public Member Functions | |||
| virtual auto_ptr< FitObject > | clone () const=0 throw () | ||
| Allows any sub-class of FitObject to be used as a prototype.  | |||
| virtual auto_ptr< TF1 > | makeRootTF1 () const throw (LogicError) | ||
| Conversion utility functions;.  | |||
| FitObject & | operator= (const TF1 &) throw (LogicError) | ||
| Set the values of this FitObject equal to those of a ROOT TF1 function to be implimented in sub-classes.  | |||
| void | print () const throw (LogicError) | ||
| Print this to cout.  | |||
| int | getNDim () const throw () | ||
| Get the dimensionality.  | |||
| int | getNPar () const throw () | ||
| Get the number of parameters.  | |||
| char * | getParName (const int ipar) const throw (LogicError) | ||
| Get name of parameter ipar.  | |||
| int | getParIndex (const string &name) const throw (LogicError) | ||
| Return the parameter index corresponding to name.  | |||
| double | getParError (const string &name) const throw (LogicError) | ||
| Get the error on parameter.  | |||
| double | getChiSquared () const throw () | ||
| Get the chisquared.  | |||
| int | getNDF () const throw () | ||
| Get the number of degrees of freedom.  | |||
| double | getVarMax (const int ivar) const throw (LogicError) | ||
| Get the maximum value of the variable.  | |||
| double | getVarMin (const int ivar) const throw (LogicError) | ||
| Get the minimum value of the variable.  | |||
| void | setVarMax (const int ivar, const double value) throw (LogicError) | ||
| Set the maximum value of the variable:.  | |||
| void | setVarMin (const int ivar, const double value) throw (LogicError) | ||
| Set the minimum value of the variable.  | |||
| char * | getFormula () const throw () | ||
| get the Formula from the m_type object  | |||
| void | fixParameter (int ipar, bool fix) | ||
Fixes or unfixes parameter ipar 
  | |||
| bool | isFixed (int ipar) const | ||
Returns whether parameter ipar is fixed 
  | |||
| void | setParameter (const int ipar, const double value) throw (LogicError) | ||
| Set the value of parameter ipar.  | |||
| void | setParError (const int ipar, const double value) throw (LogicError) | ||
| Set the error of parameter ipar.  | |||
| void | setParName (const int ipar, const char *name) throw (LogicError) | ||
| virtual | ~FitObject () throw () | ||
| Destructor does nothing.  | |||
| void | reset () throw () | ||
| Sets parameters, errors, chisquared and NDF to zero.  | |||
| double | getParameter (const int ipar) const throw (LogicError) | ||
| Get the value of parameter.  | |||
| double | getParameter (const string &name) const throw (LogicError) | ||
| Get the value of parameter.  | |||
| double | getParError (const int ipar) const throw (LogicError) | ||
Protected Member Functions | |||
| FitObject () throw () | |||
| Create a default FitObject.  | |||
| FitObject (const TF1 &) throw (LogicError) | |||
| Create a FitObject from a ROOT TF1 object.  | |||
| void | setNDim (unsigned int n) throw () | ||
| The following protected functions should only be used by the derived classes, or the fitting routines.  | |||
| void | setNPar (unsigned int npar) throw () | ||
| set the number of parameters  | |||
| void | setChiSquared (const double c) throw () | ||
| Set the chiSquared.  | |||
| void | setNDF (const int d) throw () | ||
| Set the number of degrees of freedom.  | |||
| void | setFormula (char const *f) throw () | ||
| set the character representation of the formula  | |||
| virtual auto_ptr< TF1 > | makeBasicRootTF1 () const=0 throw (LogicError) | ||
| Make a TF1 using the appropriate constructor which can then be used in makeRootTF1().  | |||
| virtual void | init ()=0 throw (LogicError) | ||
| Call to be made during constructor and after any equality operator, setting basic names and dimensions; to be implimented by derived classes.  | |||
Protected Attributes | |||
| vector< double > | m_parameter | ||
| values of parameters  | |||
| vector< double > | m_parError | ||
| error on parameters  | |||
| vector< string > | m_parName | ||
| names of parameters  | |||
| vector< bool > | m_parFixed | ||
| true if parameter is fixed  | |||
| vector< double > | m_varMax | ||
| maximum value of variables  | |||
| vector< double > | m_varMin | ||
| minimum value of variables  | |||
| double | m_chiSquared | ||
| chisquared parameter  | |||
| int | m_nDF | ||
| degrees of freedom  | |||
| string | m_formula | ||
| formula of type understood by root  | |||
Friends | |||
| class | FitObjectIOHelper | ||
It can be published to and retrieved from IS. It can generate a ROOT TF1, or be created from one. Derived classes must implement a makeBasicRootTF1() method which use a suitable TF1 constructor.
So far I can't see any sensible use for `number of dimensions' != 1 but the class could be extensible to multi-dimensional functions.
The formula provided may be in a form comprehensible to ROOT e.g. "[0]*x*sin([1]*x)" for a 1-dimensional (x), 2-parameter ([0],[1]) function.
The analytical form of the functions themselves are in `FitFunctions.cpp'.
Definition at line 38 of file FitObject.h.
      
  | 
  
| 
 Destructor does nothing. 
 Definition at line 144 of file FitObject.h.  | 
  
      
  | 
  
| 
 Create a default FitObject. 
 Definition at line 13 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Create a FitObject from a ROOT TF1 object. 
 Definition at line 17 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Allows any sub-class of FitObject to be used as a prototype. 
 
 Implemented in SctData::ErfcFitObject, SctData::ErfFitObject, SctData::GausFitObject, and SctData::TopHatFitObject.  | 
  
      
  | 
  ||||||||||||
| 
 Fixes or unfixes parameter ipar 
 
 Definition at line 146 of file FitObject.cpp. References getNPar(), and m_parFixed. Referenced by SctData::IO::FitObjectStreamer::read().  | 
  
      
  | 
  
| 
 Get the chisquared. 
 Definition at line 103 of file FitObject.h. References m_chiSquared. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 get the Formula from the m_type object 
 Definition at line 121 of file FitObject.h. References m_formula.  | 
  
      
  | 
  
| 
 Get the number of degrees of freedom. 
 Definition at line 106 of file FitObject.h. References m_nDF. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Get the dimensionality. 
 Definition at line 69 of file FitObject.h. References m_varMax. Referenced by SctData::IO::FitObjectStreamer::read(), and SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Get the number of parameters. 
 Definition at line 72 of file FitObject.h. References m_parameter. Referenced by fixParameter(), isFixed(), SctData::IO::FitObjectStreamer::read(), and SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Get the value of parameter. 
 
 Definition at line 201 of file FitObject.h.  | 
  
      
  | 
  
| 
 Get the value of parameter. 
 
 Definition at line 50 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Get the error on parameter. 
 
 Definition at line 205 of file FitObject.h.  | 
  
      
  | 
  
| 
 Get the error on parameter 
 Definition at line 59 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Return the parameter index corresponding to name. The index can be used in the other functions. Definition at line 41 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Get name of parameter ipar. 
 Definition at line 32 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Get the maximum value of the variable. 
 Definition at line 110 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Get the minimum value of the variable. 
 Definition at line 119 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Call to be made during constructor and after any equality operator, setting basic names and dimensions; to be implimented by derived classes. 
 Implemented in SctData::ErfcFitObject, SctData::ErfFitObject, SctData::GausFitObject, and SctData::TopHatFitObject.  | 
  
      
  | 
  
| 
 Returns whether parameter ipar is fixed 
 
 Definition at line 155 of file FitObject.cpp. References getNPar(), and m_parFixed. Referenced by SctData::IO::FitObjectStreamer::write().  | 
  
      
  | 
  
| 
 Make a TF1 using the appropriate constructor which can then be used in makeRootTF1(). To be implimented by derived classes. Implemented in SctData::ErfcFitObject, SctData::ErfFitObject, SctData::GausFitObject, and SctData::TopHatFitObject.  | 
  
      
  | 
  
| 
 Conversion utility functions;. Make a new ROOT TF1 from this object. Calls the virtual function makeBasicRootTF1() Definition at line 165 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Set the values of this FitObject equal to those of a ROOT TF1 function to be implimented in sub-classes. 
 Reimplemented in SctData::ErfcFitObject, SctData::ErfFitObject, SctData::GausFitObject, and SctData::TopHatFitObject. Definition at line 212 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Print this to cout. 
 Definition at line 238 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Sets parameters, errors, chisquared and NDF to zero. 
 Definition at line 21 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 Set the chiSquared. 
 Definition at line 177 of file FitObject.h.  | 
  
      
  | 
  
| 
 set the character representation of the formula 
 Definition at line 183 of file FitObject.h.  | 
  
      
  | 
  
| 
 Set the number of degrees of freedom. 
 Definition at line 180 of file FitObject.h.  | 
  
      
  | 
  
| 
 The following protected functions should only be used by the derived classes, or the fitting routines. set the number of dimensions Definition at line 105 of file FitObject.cpp.  | 
  
      
  | 
  
| 
 set the number of parameters 
 Definition at line 68 of file FitObject.cpp.  | 
  
      
  | 
  ||||||||||||
| 
 Set the value of parameter ipar. 
 Definition at line 76 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::read().  | 
  
      
  | 
  ||||||||||||
| 
 Set the error of parameter ipar. 
 Definition at line 86 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::read().  | 
  
      
  | 
  ||||||||||||
| 
 
 Definition at line 96 of file FitObject.cpp.  | 
  
      
  | 
  ||||||||||||
| 
 Set the maximum value of the variable:. 
 Definition at line 128 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::read().  | 
  
      
  | 
  ||||||||||||
| 
 Set the minimum value of the variable. 
 Definition at line 137 of file FitObject.cpp. Referenced by SctData::IO::FitObjectStreamer::read().  | 
  
      
  | 
  
| 
 
 Definition at line 197 of file FitObject.h.  | 
  
      
  | 
  
| 
 chisquared parameter 
 Definition at line 156 of file FitObject.h. Referenced by getChiSquared().  | 
  
      
  | 
  
| 
 formula of type understood by root 
 Definition at line 158 of file FitObject.h. Referenced by getFormula().  | 
  
      
  | 
  
| 
 degrees of freedom 
 Definition at line 157 of file FitObject.h. Referenced by getNDF().  | 
  
      
  | 
  
| 
 values of parameters 
 Definition at line 150 of file FitObject.h. Referenced by getNPar().  | 
  
      
  | 
  
| 
 error on parameters 
 Definition at line 151 of file FitObject.h.  | 
  
      
  | 
  
| 
 true if parameter is fixed 
 Definition at line 153 of file FitObject.h. Referenced by fixParameter(), and isFixed().  | 
  
      
  | 
  
| 
 names of parameters 
 Definition at line 152 of file FitObject.h.  | 
  
      
  | 
  
| 
 maximum value of variables 
 Definition at line 154 of file FitObject.h. Referenced by getNDim().  | 
  
      
  | 
  
| 
 minimum value of variables 
 Definition at line 155 of file FitObject.h.  | 
  
1.3-rc3