Dakota
Version 6.21
Explore and Predict with Confidence
|
Base class for Stanford SOL software. More...
Public Member Functions | |
SOLBase () | |
default constructor | |
SOLBase (Model &model) | |
standard constructor | |
~SOLBase () | |
destructor | |
Protected Member Functions | |
virtual void | send_sol_option (std::string sol_option)=0 |
Resize and send option to NPSOL (npoptn) or NLSSOL (nloptn) via derived implementation. | |
void | check_sub_iterator_conflict (Model &model, unsigned short method_name) |
check for clash with nested use of Fortran code | |
void | allocate_linear_arrays (int num_cv, const RealMatrix &lin_ineq_coeffs, const RealMatrix &lin_eq_coeffs) |
Allocates F77 linear constraint arrays for the SOL algorithms. | |
void | allocate_nonlinear_arrays (int num_cv, size_t num_nln_con) |
Allocates F77 nonlinear constraint arrays for the SOL algorithms. | |
void | allocate_arrays (int num_cv, size_t num_nln_con, const RealMatrix &lin_ineq_coeffs, const RealMatrix &lin_eq_coeffs) |
Allocates F77 arrays for the SOL algorithms. | |
void | deallocate_arrays () |
Deallocates memory previously allocated by allocate_arrays(). | |
void | size_bounds_array (size_t new_bnds_size) |
Updates arrays dependent on combined bounds size. | |
void | allocate_workspace (int num_cv, int num_nln_con, int num_lin_con, int num_lsq) |
Allocates real and integer workspaces for the SOL algorithms. | |
void | set_options (bool speculative_flag, bool vendor_num_grad_flag, short output_lev, int verify_lev, Real fn_prec, Real linesrch_tol, size_t max_iter, Real constr_tol, Real conv_tol, const std::string &grad_type, const RealVector &fdss) |
Sets SOL method options using calls to npoptn2 / nloptn2. | |
void | aggregate_bounds (const RealVector &cv_lower_bnds, const RealVector &cv_upper_bnds, const RealVector &lin_ineq_l_bnds, const RealVector &lin_ineq_u_bnds, const RealVector &lin_eq_targets, const RealVector &nln_ineq_l_bnds, const RealVector &nln_ineq_u_bnds, const RealVector &nln_eq_targets, RealVector &aggregate_l_bnds, RealVector &aggregate_u_bnds) |
aggregate variable bounds with linear and nonlinear constraint bounds | |
Static Protected Member Functions | |
static void | constraint_eval (int &mode, int &ncnln, int &n, int &nrowj, int *needc, double *x, double *c, double *cjac, int &nstate) |
CONFUN in NPSOL manual: computes the values and first derivatives of the nonlinear constraint functions. | |
Protected Attributes | |
int | realWorkSpaceSize |
size of realWorkSpace | |
int | intWorkSpaceSize |
size of intWorkSpace | |
RealArray | realWorkSpace |
real work space for NPSOL/NLSSOL | |
IntArray | intWorkSpace |
int work space for NPSOL/NLSSOL | |
int | nlnConstraintArraySize |
used for non-zero array sizing (nonlinear constraints) | |
int | linConstraintArraySize |
used for non-zero array sizing (linear constraints) | |
RealArray | cLambda |
CLAMBDA from NPSOL manual: Langrange multipliers. | |
IntArray | constraintState |
ISTATE from NPSOL manual: constraint status. | |
int | informResult |
INFORM from NPSOL manual: optimization status on exit. | |
int | numberIterations |
ITER from NPSOL manual: number of (major) iterations performed. | |
int | boundsArraySize |
length of aggregated bounds arrays (variable bounds plus linear and nonlinear constraint bounds) | |
double * | linConstraintMatrixF77 |
[A] matrix from NPSOL manual: linear constraint coefficients | |
double * | upperFactorHessianF77 |
[R] matrix from NPSOL manual: upper Cholesky factor of the Hessian of the Lagrangian. | |
double * | constraintJacMatrixF77 |
[CJAC] matrix from NPSOL manual: nonlinear constraint Jacobian | |
int | fnEvalCntr |
counter for testing against maxFunctionEvals | |
size_t | constrOffset |
used in constraint_eval() to bridge NLSSOLLeastSq::numLeastSqTerms and NPSOLOptimizer::numObjectiveFns | |
Static Protected Attributes | |
static SOLBase * | solInstance |
pointer to the active object instance used within the static evaluator functions in order to avoid the need for static data | |
static Minimizer * | optLSqInstance |
pointer to the active base class object instance used within the static evaluator functions in order to avoid the need for static data | |
static size_t | numInstances = 0 |
Track the number of instances of SOLBase and its derived classes. | |
Base class for Stanford SOL software.
The SOLBase class provides a common base class for NPSOLOptimizer and NLSSOLLeastSq, both of which are Fortran 77 sequential quadratic programming algorithms from Stanford University marketed by Stanford Business Associates.