Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

OPTPP::Problem Class Reference

#include <Problem.h>

Inheritance diagram for OPTPP::Problem:

OPTPP::CGProblem OPTPP::NewtonProblem OPTPP::NIPSProblem OPTPP::NPSOLProblem OPTPP::PDSProblem List of all members.

Public Member Functions

 Problem (DOMElement *solverXML)
virtual ~Problem ()
OptError optimize ()
void SetProblemXML (DOMElement *applicationXML)

Protected Member Functions

int GetNumVar ()
int GetDerivOrder ()
DOMElement * GetSubroutineXML ()
DOMElement * GetSolverXML ()
DOMElement * GetParameterXML ()
virtual DOMElement * FindParameterXML ()=0
USERFCN0 GetUserFunction0 ()
USERFCN1 GetUserFunction1 ()
USERFCN2 GetUserFunction2 ()
INITFCN GetInitFunction ()
AppLauncherGetAppLauncher ()
virtual void SetParameters (OptimizeClass *objfcn)
VariableListGetVariables ()
CompoundConstraintGetConstraints ()
virtual OptError CreateFunctionOptimizer (OptimizeClass *&objfcn, NLP0 *&func)=0
virtual OptError CreateApplicationOptimizer (OptimizeClass *&objfcn, NLP0 *&func)=0

Protected Attributes

DOMElement * parameterXML_

Private Member Functions

void * GetFunction (string libName, string funcName)
void CloseLoadedLibs ()

Private Attributes

DOMElement * solverXML_
bool hasSubroutineXML_
bool hasParameterXML_
bool useApplicationOptimizer_
bool hasNumVar_
bool hasDerivOrder_
OptimizeClassobjfcn_
NLP0func_
int numVar_
int derivOrder_
DOMElement * subroutineXML_
DOMElement * applicationXML_
VariableList variables_
AppLauncher launcher_
vector< void * > loadedLibs_

Detailed Description

Class Problem is the parent for all the different types of solvers.


Constructor & Destructor Documentation

OPTPP::Problem::Problem DOMElement *  solverXML  )  [inline]
 

constructor

virtual OPTPP::Problem::~Problem  )  [inline, virtual]
 


Member Function Documentation

void OPTPP::Problem::CloseLoadedLibs  )  [private]
 

Closes all of the Libraries that have been dynamically Loaded

virtual OptError OPTPP::Problem::CreateApplicationOptimizer OptimizeClass *&  objfcn,
NLP0 *&  func
[protected, pure virtual]
 

Creates an Optimizer that will optimize a function run by an external Application

Implemented in OPTPP::CGProblem, OPTPP::NewtonProblem, OPTPP::NIPSProblem, OPTPP::NPSOLProblem, and OPTPP::PDSProblem.

virtual OptError OPTPP::Problem::CreateFunctionOptimizer OptimizeClass *&  objfcn,
NLP0 *&  func
[protected, pure virtual]
 

Creates an Optimizer that will optimize a dynamically loaded function from an external library

Implemented in OPTPP::CGProblem, OPTPP::NewtonProblem, OPTPP::NIPSProblem, OPTPP::NPSOLProblem, and OPTPP::PDSProblem.

virtual DOMElement* OPTPP::Problem::FindParameterXML  )  [protected, pure virtual]
 

Initially Retrieves the XML Element containing Algorithm parameters from the Solver XML

Implemented in OPTPP::CGProblem, OPTPP::NewtonProblem, OPTPP::NIPSProblem, OPTPP::NPSOLProblem, and OPTPP::PDSProblem.

AppLauncher * OPTPP::Problem::GetAppLauncher  )  [protected]
 

Returns the Application Launcher for Optimizing an external Function Evaluation

CompoundConstraint * OPTPP::Problem::GetConstraints  )  [protected]
 

Gets a CompoundConstraint object based upon whether the optimization is unconstrained, bounded, or general

int OPTPP::Problem::GetDerivOrder  )  [protected]
 

Reterns the order of Differentiation

void * OPTPP::Problem::GetFunction string  libName,
string  funcName
[private]
 

Dymanically loads the given Library function and returns int as a void pointer

INITFCN OPTPP::Problem::GetInitFunction  )  [protected]
 

Returns the initialization funciton for the Optimization

int OPTPP::Problem::GetNumVar  )  [protected]
 

Returns the number of Variables

DOMElement * OPTPP::Problem::GetParameterXML  )  [protected]
 

Returns the XML Element containing the Algorithm parameters

DOMElement * OPTPP::Problem::GetSolverXML  )  [protected]
 

Returns the XML Element Which contains the solver properites

DOMElement * OPTPP::Problem::GetSubroutineXML  )  [protected]
 

Returns the XML Element containing Subroutine and library info

USERFCN0 OPTPP::Problem::GetUserFunction0  )  [protected]
 

Returns the non-differentiable function to be optimized

USERFCN1 OPTPP::Problem::GetUserFunction1  )  [protected]
 

Returns the first order differentiable function to be optimized

USERFCN2 OPTPP::Problem::GetUserFunction2  )  [protected]
 

Returns the second order differentiable function to be optimized

VariableList * OPTPP::Problem::GetVariables  )  [protected]
 

Gets a VariableList object containing the optimization variables and related information.

OptError OPTPP::Problem::optimize  ) 
 

Optimize the Function

void OPTPP::Problem::SetParameters OptimizeClass objfcn  )  [protected, virtual]
 

Sets the Algorithm Parameters for the Optimization run

Reimplemented in OPTPP::CGProblem, OPTPP::NewtonProblem, OPTPP::NIPSProblem, OPTPP::NPSOLProblem, and OPTPP::PDSProblem.

void OPTPP::Problem::SetProblemXML DOMElement *  applicationXML  ) 
 

Sets the XML that defines the Problem to be solved


Member Data Documentation

DOMElement* OPTPP::Problem::applicationXML_ [private]
 

int OPTPP::Problem::derivOrder_ [private]
 

NLP0* OPTPP::Problem::func_ [private]
 

bool OPTPP::Problem::hasDerivOrder_ [private]
 

bool OPTPP::Problem::hasNumVar_ [private]
 

bool OPTPP::Problem::hasParameterXML_ [private]
 

bool OPTPP::Problem::hasSubroutineXML_ [private]
 

AppLauncher OPTPP::Problem::launcher_ [private]
 

vector<void *> OPTPP::Problem::loadedLibs_ [private]
 

int OPTPP::Problem::numVar_ [private]
 

OptimizeClass* OPTPP::Problem::objfcn_ [private]
 

DOMElement* OPTPP::Problem::parameterXML_ [protected]
 

DOMElement* OPTPP::Problem::solverXML_ [private]
 

DOMElement* OPTPP::Problem::subroutineXML_ [private]
 

bool OPTPP::Problem::useApplicationOptimizer_ [private]
 

VariableList OPTPP::Problem::variables_ [private]
 


The documentation for this class was generated from the following files:
Bug Reports    OPT++ Developers    Copyright Information    GNU Lesser General Public License
Documentation, generated by , last revised August 30, 2006.