GSLSimAnFunc class description.
Interface class for the objetive function to be used in simulated annealing If user wants to reimplement some of the methods (like the one defining the metric) which are used by the the simulated annealing algorithm must build a user derived class. NOTE: Derived classes must reimplement the assignment and copy constructor to call them of the parent class
Definition at line 50 of file GSLSimAnnealing.h.
Public Member Functions  
GSLSimAnFunc (const ROOT::Math::IMultiGenFunction &func, const double *x)  
construct from an interface of a multidimensional function  
GSLSimAnFunc (const ROOT::Math::IMultiGenFunction &func, const double *x, const double *scale)  
construct from an interface of a multidimensional function Use optionally a scale factor (for each coordinate) which can be used to scale the step sizes (this is used for example by the minimization algorithm)  
virtual  ~GSLSimAnFunc () 
virtual destructor (no operations)  
virtual GSLSimAnFunc *  Clone () const 
clone method.  
virtual double  Distance (const GSLSimAnFunc &func) const 
calculate the distance (metric) between this one and another configuration Presently a cartesian metric is used.  
virtual double  Energy () const 
evaluate the energy ( objective function value) reimplement by derived classes if needed to be modified  
virtual GSLSimAnFunc &  FastCopy (const GSLSimAnFunc &f) 
fast copy method called by GSL simulated annealing internally copy only the things which have been changed must be reimplemented by derived classes if needed  
unsigned int  NDim () const 
virtual void  Print () 
print the position in the standard output std::ostream GSL prints in addition n iteration, n function calls, temperature and energy reimplement by derived classes if necessary  
double  Scale (unsigned int i) const 
void  SetX (const double *x) 
change the x values (used by sim annealing to take a step)  
template<class IT >  
void  SetX (IT begin, IT end) 
void  SetX (unsigned int i, double x) 
virtual void  Step (const GSLRandomEngine &r, double maxstep) 
change the x[i] value using a random value urndm generated between [0,1] up to a maximum value maxstep reimplement by derived classes if needed to be modified  
const std::vector< double > &  X () const 
double  X (unsigned int i) const 
Protected Member Functions  
GSLSimAnFunc ()  
derived classes might need to redefine completely the class  
Private Attributes  
const ROOT::Math::IMultiGenFunction *  fFunc 
std::vector< double >  fScale 
std::vector< double >  fX 
#include <Math/GSLSimAnnealing.h>
ROOT::Math::GSLSimAnFunc::GSLSimAnFunc  (  const ROOT::Math::IMultiGenFunction &  func, 
const double *  x  
) 
construct from an interface of a multidimensional function
Definition at line 34 of file GSLSimAnnealing.cxx.
ROOT::Math::GSLSimAnFunc::GSLSimAnFunc  (  const ROOT::Math::IMultiGenFunction &  func, 
const double *  x,  
const double *  scale  
) 
construct from an interface of a multidimensional function Use optionally a scale factor (for each coordinate) which can be used to scale the step sizes (this is used for example by the minimization algorithm)
Definition at line 43 of file GSLSimAnnealing.cxx.

inlineprotected 
derived classes might need to redefine completely the class
Definition at line 70 of file GSLSimAnnealing.h.

inlinevirtual 
virtual destructor (no operations)
Definition at line 78 of file GSLSimAnnealing.h.

inlinevirtual 
clone method.
Needs to be reimplemented by the derived classes for deep copying
Definition at line 92 of file GSLSimAnnealing.h.

virtual 
calculate the distance (metric) between this one and another configuration Presently a cartesian metric is used.
reimplement by derived classes if needed to be modified
Definition at line 66 of file GSLSimAnnealing.cxx.

virtual 
evaluate the energy ( objective function value) reimplement by derived classes if needed to be modified
Definition at line 50 of file GSLSimAnnealing.cxx.

virtual 
fast copy method called by GSL simulated annealing internally copy only the things which have been changed must be reimplemented by derived classes if needed
Definition at line 96 of file GSLSimAnnealing.cxx.

inline 
Definition at line 135 of file GSLSimAnnealing.h.

virtual 
print the position in the standard output std::ostream GSL prints in addition n iteration, n function calls, temperature and energy reimplement by derived classes if necessary
Definition at line 83 of file GSLSimAnnealing.cxx.
Definition at line 141 of file GSLSimAnnealing.h.

inline 
change the x values (used by sim annealing to take a step)
Definition at line 126 of file GSLSimAnnealing.h.

inline 
Definition at line 131 of file GSLSimAnnealing.h.
Definition at line 143 of file GSLSimAnnealing.h.

virtual 
change the x[i] value using a random value urndm generated between [0,1] up to a maximum value maxstep reimplement by derived classes if needed to be modified
Definition at line 55 of file GSLSimAnnealing.cxx.

inline 
Definition at line 139 of file GSLSimAnnealing.h.
Definition at line 137 of file GSLSimAnnealing.h.

private 
Definition at line 151 of file GSLSimAnnealing.h.

private 
Definition at line 150 of file GSLSimAnnealing.h.

private 
Definition at line 149 of file GSLSimAnnealing.h.