MySimAnFunc Class Reference

Inheritance diagram for MySimAnFunc:

ROOT::Math::GSLSimAnFunc List of all members.

Public Member Functions

 MySimAnFunc (std::vector< double > &allDist)
virtual ~MySimAnFunc ()
unsigned int Route (unsigned int i) const
const unsigned int * Route () const
unsigned int * Route ()
virtual MySimAnFuncClone () const
std::vector< double > & AllDist ()
virtual double Energy () const
virtual double Distance (const GSLSimAnFunc &f) const
virtual void Step (const GSLRandomEngine &r, double)
virtual void Print ()
virtual MySimAnFuncFastCopy (const GSLSimAnFunc &f)
double Distance (int i, int j) const
void PrintRoute ()
void SetRoute (unsigned int *r)

Private Types

typedef SMatrix< double, N_CITIES,
N_CITIES, MatRepSym< double,
N_CITIES > > 
Matrix

Private Member Functions

void calculate_distance_matrix ()

Private Attributes

unsigned int fRoute [N_CITIES]
Matrix fDistanceMatrix
std::vector< double > * fDist

Detailed Description

Definition at line 102 of file simanTSP.cxx.


Member Typedef Documentation

typedef SMatrix<double,N_CITIES,N_CITIES, MatRepSym<double,N_CITIES> > MySimAnFunc::Matrix [private]

Definition at line 203 of file simanTSP.cxx.


Constructor & Destructor Documentation

MySimAnFunc::MySimAnFunc ( std::vector< double > &  allDist  )  [inline]

Definition at line 106 of file simanTSP.cxx.

References calculate_distance_matrix(), fDist, fRoute, i, and N_CITIES.

Referenced by Clone().

virtual MySimAnFunc::~MySimAnFunc (  )  [inline, virtual]

Definition at line 118 of file simanTSP.cxx.


Member Function Documentation

unsigned int MySimAnFunc::Route ( unsigned int  i  )  const [inline]

Definition at line 120 of file simanTSP.cxx.

References fRoute.

const unsigned int* MySimAnFunc::Route (  )  const [inline]

Definition at line 122 of file simanTSP.cxx.

References fRoute.

Referenced by PrintRoute().

unsigned int* MySimAnFunc::Route (  )  [inline]

Definition at line 123 of file simanTSP.cxx.

References fRoute.

virtual MySimAnFunc* MySimAnFunc::Clone (  )  const [inline, virtual]

clone method. Needs to be re-implemented by the derived classes for deep copying

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 125 of file simanTSP.cxx.

References MySimAnFunc().

std::vector<double>& MySimAnFunc::AllDist (  )  [inline]

Definition at line 127 of file simanTSP.cxx.

References fDist.

virtual double MySimAnFunc::Energy (  )  const [inline, virtual]

evaluate the energy ( objective function value) re-implement by derived classes if needed to be modified

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 129 of file simanTSP.cxx.

References fDistanceMatrix, fRoute, i, and N_CITIES.

Referenced by Print().

virtual double MySimAnFunc::Distance ( const GSLSimAnFunc f  )  const [inline, virtual]

calculate the distance (metric) between this one and another configuration Presently a cartesian metric is used. re-implement by derived classes if needed to be modified

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 144 of file simanTSP.cxx.

References d, f2, fRoute, i, and N_CITIES.

Referenced by PrintRoute().

virtual void MySimAnFunc::Step ( const GSLRandomEngine r,
double   
) [inline, virtual]

change the x[i] value using a random value urndm generated between [0,1] up to a maximum value maxstep re-implement by derived classes if needed to be modified

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 154 of file simanTSP.cxx.

References dummy, fRoute, N_CITIES, x1, and x2.

virtual void MySimAnFunc::Print (  )  [inline, virtual]

print the position in the standard output ostream GSL prints in addition n iteration, n function calls, temperature and energy re-implement by derived classes if necessary

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 174 of file simanTSP.cxx.

References Energy(), fDist, fRoute, i, and N_CITIES.

virtual MySimAnFunc& MySimAnFunc::FastCopy ( const GSLSimAnFunc f  )  [inline, virtual]

fast copy method called by GSL simuated annealing internally copy only the things which have been changed must be re-implemented by derived classes if needed

Reimplemented from ROOT::Math::GSLSimAnFunc.

Definition at line 184 of file simanTSP.cxx.

References copy(), fRoute, and N_CITIES.

double MySimAnFunc::Distance ( int  i,
int  j 
) const [inline]

Definition at line 191 of file simanTSP.cxx.

References fDistanceMatrix.

void MySimAnFunc::PrintRoute (  ) 

Definition at line 229 of file simanTSP.cxx.

References cities, Distance(), i, j, k, N_CITIES, name, and Route().

void MySimAnFunc::SetRoute ( unsigned int *  r  )  [inline]

Definition at line 195 of file simanTSP.cxx.

References copy(), fRoute, and N_CITIES.

void MySimAnFunc::calculate_distance_matrix (  )  [private]

Definition at line 212 of file simanTSP.cxx.

References cities, city_distance(), ROOT::Math::gv_detail::dist(), fDistanceMatrix, i, j, and N_CITIES.

Referenced by MySimAnFunc().


Member Data Documentation

unsigned int MySimAnFunc::fRoute[N_CITIES] [private]

Definition at line 202 of file simanTSP.cxx.

Referenced by Distance(), Energy(), FastCopy(), MySimAnFunc(), Print(), Route(), SetRoute(), and Step().

Matrix MySimAnFunc::fDistanceMatrix [private]

Definition at line 204 of file simanTSP.cxx.

Referenced by calculate_distance_matrix(), Distance(), and Energy().

std::vector<double>* MySimAnFunc::fDist [private]

Definition at line 206 of file simanTSP.cxx.

Referenced by AllDist(), MySimAnFunc(), and Print().


The documentation for this class was generated from the following file:
Generated on Tue Jul 5 16:31:19 2011 for ROOT_528-00b_version by  doxygen 1.5.1