class DirectObjFcn : public ObjectiveFunction

a class of customerized objective function

Inheritance:


public members:

DirectObjFcn ( int n , SlaveForward * fp , int given_g)
construct a custermerized objective function from SlaveForward operator
int n
dimension of the Model space
SlaveForward * fp
pointer to the SlaveForward in which communication to evaluation codes are provided
int given_g
a flag indicating if the user provides gradient information
DirectObjFcn (int n , SlaveForward * fp )
construct a custermerized objective function from SlaveForward operator with default $given_g=0$
const char* className () const
const char* forwardName () const

protected members:

double realPerformance (const Model <long>& m)
double realPerformance (const Model <double>& m)
Vector <double>* getGradient (const Model <double>& m)
Vector <double>* getGradient (const Model <long>& m)

Inherited from ObjectiveFunction:

public members:

double performance(const Model <long>&)
double performance(const Model <double>&)
double performance(const Model <float>&)
int iterations() const

Documentation

This is a class of customerized objective function passes through SlaveForward. When the user-written objective-function evaluation code is used for the optimization, this class should be used for passing values to the optimizer. See also SlaveForward, ObjFcn.

Both value and derivatives can be passed through this class. You can choose either providing your own derivative evaluation or using the finite-difference scheme provided by COOOL.

DirectObjFcn ( int n , SlaveForward * fp , int given_g)
This constructor is important when the user can provide the evaluations of the objective function. When $given_g=1$, the user-defined gradient evaluation is available. Otherwise by default, $given_g=0$, COOOL calculates gradient vectors by a finite-difference scheme.


this class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling