Inheritance diagram for NCSUOptimizer:

Public Member Functions | |
| NCSUOptimizer (Model &model) | |
| standard constructor | |
| NCSUOptimizer (Model &model, const int &max_iter, const int &max_eval) | |
| alternate constructor for instantiations "on the fly" | |
| NCSUOptimizer (NoDBBaseConstructor, Model &model) | |
| alternate constructor for Iterator instantiations by name | |
| NCSUOptimizer (const RealVector &var_l_bnds, const RealVector &var_u_bnds, const int &max_iter, const int &max_eval, double(*user_obj_eval)(const RealVector &x)) | |
| alternate constructor for instantiations "on the fly" | |
| ~NCSUOptimizer () | |
| destructor | |
| void | find_optimum () |
| Redefines the run virtual function for the optimizer branch. | |
Private Member Functions | |
| void | initialize () |
| shared code among constructors | |
Static Private Member Functions | |
| static int | objective_eval (int *n, double c[], double l[], double u[], int point[], int *maxI, int *start, int *maxfunc, double fvec[], int iidata[], int *iisize, double ddata[], int *idsize, char cdata[], int *icsize) |
| DIRECT src (DIRbatch.f). | |
Private Attributes | |
| short | setUpType |
| GaussProcApproximation currently uses the user_functions mode. | |
| Real | minBoxSize |
| holds the minimum boxsize | |
| Real | volBoxSize |
| hold the minimum volume boxsize | |
| Real | solutionAccuracy |
| holds the solution tolerance accuracy | |
| RealVector | lowerBounds |
| holds variable lower bounds passed in for "user_functions" mode. | |
| RealVector | upperBounds |
| holds variable upper bounds passed in for "user_functions" mode. | |
| double(* | userObjectiveEval )(const RealVector &x) |
| "user_functions" mode. | |
Static Private Attributes | |
| static NCSUOptimizer * | ncsudirectInstance |
| functions in order to avoid the need for static data | |
The NCSUOptimizer class provides a wrapper for a Fortran 77 implementation of the DIRECT algorithm developed at North Carolina State University. It uses a function pointer approach for which passed functions must be either global functions or static member functions. Any attribute used within static member functions must be either local to that function or accessed through a static pointer.
The user input mappings are as follows:
| NCSUOptimizer | ( | Model & | model | ) |
standard constructor
This is the standard constructor with method specification support.
| NCSUOptimizer | ( | Model & | model, | |
| const int & | max_iter, | |||
| const int & | max_eval | |||
| ) |
alternate constructor for instantiations "on the fly"
This is an alternate constructor for instantiations on the fly using a Model but no ProblemDescDB.
| NCSUOptimizer | ( | NoDBBaseConstructor | , | |
| Model & | model | |||
| ) |
alternate constructor for Iterator instantiations by name
This is an alternate constructor for Iterator instantiations by name using a Model but no ProblemDescDB.
| NCSUOptimizer | ( | const RealVector & | var_l_bnds, | |
| const RealVector & | var_u_bnds, | |||
| const int & | max_iter, | |||
| const int & | max_eval, | |||
| double(*)(const RealVector &x) | user_obj_eval | |||
| ) |
alternate constructor for instantiations "on the fly"
This is an alternate constructor for performing an optimization using the passed in objective function pointer.
1.5.1