Inheritance diagram for DOTOptimizer:

Public Member Functions | |
| DOTOptimizer (Model &model) | |
| standard constructor | |
| DOTOptimizer (NoDBBaseConstructor, Model &model) | |
| alternate constructor | |
| ~DOTOptimizer () | |
| destructor | |
| void | find_optimum () |
| Redefines the run virtual function for the optimizer branch. | |
Protected Member Functions | |
| void | derived_pre_run () |
| performs run-time set up | |
Private Member Functions | |
| void | initialize () |
| Shared constructor code. | |
| void | allocate_workspace () |
| Allocates workspace for the optimizer. | |
| void | allocate_constraints () |
| Allocates constraint mappings. | |
Private Attributes | |
| int | dotInfo |
| INFO from DOT manual. | |
| int | dotFDSinfo |
| internal DOT parameter NGOTOZ | |
| int | dotMethod |
| METHOD from DOT manual. | |
| int | printControl |
| IPRINT from DOT manual (controls output verbosity). | |
| int | optimizationType |
| MINMAX from DOT manual (minimize or maximize). | |
| RealArray | realCntlParmArray |
| RPRM from DOT manual. | |
| IntArray | intCntlParmArray |
| IPRM from DOT manual. | |
| RealVector | designVars |
| array of design variable values passed to DOT | |
| Real | objFnValue |
| value of the objective function passed to DOT | |
| RealVector | constraintValues |
| array of nonlinear constraint values passed to DOT | |
| int | realWorkSpaceSize |
| size of realWorkSpace | |
| int | intWorkSpaceSize |
| size of intWorkSpace | |
| RealArray | realWorkSpace |
| real work space for DOT | |
| IntArray | intWorkSpace |
| int work space for DOT | |
| int | numDotNlnConstr |
| total number of nonlinear constraints seen by DOT | |
| int | numDotLinConstr |
| total number of linear constraints seen by DOT | |
| int | numDotConstr |
| total number of linear and nonlinear constraints seen by DOT | |
| SizetList | constraintMappingIndices |
| Response constraints used in computing the DOT constraints. | |
| RealList | constraintMappingMultipliers |
| the DOT constraints. | |
| RealList | constraintMappingOffsets |
| DOT constraints. | |
The DOTOptimizer class provides a wrapper for DOT, a commercial Fortran 77 optimization library from Vanderplaats Research and Development. It uses a reverse communication mode, which avoids the static member function issues that arise with function pointer designs (see NPSOLOptimizer and SNLLOptimizer).
The user input mappings are as follows: max_iterations is mapped into DOT's ITMAX parameter within its IPRM array, max_function_evaluations is implemented directly in the find_optimum() loop since there is no DOT parameter equivalent, convergence_tolerance is mapped into DOT's DELOBJ parameter (the relative convergence tolerance) within its RPRM array, output verbosity is mapped into DOT's IPRINT parameter within its function call parameter list (verbose: IPRINT = 7; quiet: IPRINT = 3), and optimization_type is mapped into DOT's MINMAX parameter within its function call parameter list. Refer to [Vanderplaats Research and Development, 1995] for information on IPRM, RPRM, and the DOT function call parameter list.
int dotInfo [private] |
INFO from DOT manual.
Information requested by DOT: 0=optimization complete, 1=get values, 2=get gradients
int dotFDSinfo [private] |
internal DOT parameter NGOTOZ
the DOT parameter list has been modified to pass NGOTOZ, which signals whether DOT is finite-differencing (nonzero value) or performing the line search (zero value).
int dotMethod [private] |
METHOD from DOT manual.
For nonlinear constraints: 0/1 = dot_mmfd, 2 = dot_slp, 3 = dot_sqp. For unconstrained: 0/1 = dot_bfgs, 2 = dot_frcg.
int printControl [private] |
IPRINT from DOT manual (controls output verbosity).
Values range from 0 (least output) to 7 (most output).
int optimizationType [private] |
MINMAX from DOT manual (minimize or maximize).
Values of 0 or -1 (minimize) or 1 (maximize).
RealArray realCntlParmArray [private] |
RPRM from DOT manual.
Array of real control parameters.
IntArray intCntlParmArray [private] |
IPRM from DOT manual.
Array of integer control parameters.
RealVector constraintValues [private] |
array of nonlinear constraint values passed to DOT
This array must be of nonzero length and must contain only one-sided inequality constraints which are <= 0 (which requires a transformation from 2-sided inequalities and equalities).
SizetList constraintMappingIndices [private] |
Response constraints used in computing the DOT constraints.
The length of the list corresponds to the number of DOT constraints, and each entry in the list points to the corresponding DAKOTA constraint.
RealList constraintMappingMultipliers [private] |
the DOT constraints.
The length of the list corresponds to the number of DOT constraints, and each entry in the list contains a multiplier for the DAKOTA constraint identified with constraintMappingIndices. These multipliers are currently +1 or -1.
RealList constraintMappingOffsets [private] |
DOT constraints.
The length of the list corresponds to the number of DOT constraints, and each entry in the list contains an offset for the DAKOTA constraint identified with constraintMappingIndices. These offsets involve inequality bounds or equality targets, since DOT assumes constraint allowables = 0.
1.5.1