| Dakota Version 6.19 Explore and Predict with Confidence

Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
NonlinearCGOptimizer Class Reference
Inheritance diagram for NonlinearCGOptimizer:

## Public Member Functions
| NonlinearCGOptimizer (ProblemDescDB &problem_db, Model &model)
| standard constructor
| ~NonlinearCGOptimizer ()
| destructor
Real | linesearch_eval (const Real &trial_step, short req_val=1)
| evaluate the objective function given a particular step size (public for use in boost_ls_eval functor; could use friend)
Public Member Functions inherited from Optimizer
void | get_common_stopping_criteria (int &max_fn_evals, int &max_iters, double &conv_tol, double &min_var_chg, double &obj_target)
int | num_nonlin_ineq_constraints_found () const
template<typename AdapterT >
bool | get_variable_bounds_from_dakota (typename AdapterT::VecT &lower, typename AdapterT::VecT &upper)
template<typename VecT >
void | get_responses_from_dakota (const RealVector &dak_fn_vals, VecT &funs, VecT &cEqs, VecT &cIneqs)
Public Member Functions inherited from Minimizer
void | constraint_tolerance (Real constr_tol)
| set the method constraint tolerance (constraintTol)
Real | constraint_tolerance () const
| return the method constraint tolerance (constraintTol)
std::shared_ptr< TPLDataTransfer > | get_data_transfer_helper () const
bool | resize ()
| reinitializes iterator based on new variable size
Public Member Functions inherited from Iterator
| Iterator (std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| default constructor More...
| Iterator (ProblemDescDB &problem_db, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| standard envelope constructor, which constructs its own model(s) More...
| Iterator (ProblemDescDB &problem_db, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate envelope constructor which uses the ProblemDescDB but accepts a model from a higher level (meta-iterator) context, instead of constructing its own More...
| Iterator (const String &method_string, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate envelope constructor for instantiations by name without the ProblemDescDB More...
| Iterator (const Iterator &iterator)
| copy constructor More...
virtual | ~Iterator ()
| destructor
Iterator | operator= (const Iterator &iterator)
| assignment operator
virtual void | derived_set_communicators (ParLevLIter pl_iter)
| derived class contributions to setting the communicators associated with this Iterator instance
virtual void | derived_free_communicators (ParLevLIter pl_iter)
| derived class contributions to freeing the communicators associated with this Iterator instance
virtual void | pre_run ()
| pre-run portion of run (optional); re-implemented by Iterators which can generate all Variables (parameter sets) a priori More...
virtual void | pre_output ()
| write variables to file, following pre-run
virtual void | post_input ()
| read tabular data for post-run mode
virtual void | reset ()
| restore initial state for repeated sub-iterator executions
virtual void | nested_variable_mappings (const SizetArray &c_index1, const SizetArray &di_index1, const SizetArray &ds_index1, const SizetArray &dr_index1, const ShortArray &c_target2, const ShortArray &di_target2, const ShortArray &ds_target2, const ShortArray &dr_target2)
| set primaryA{CV,DIV,DRV}MapIndices, secondaryA{CV,DIV,DRV}MapTargets within derived Iterators; supports computation of higher-level sensitivities in nested contexts (e.g., derivatives of statistics w.r.t. inserted design variables)
virtual void | nested_response_mappings (const RealMatrix &primary_coeffs, const RealMatrix &secondary_coeffs)
| set primaryResponseCoefficients, secondaryResponseCoefficients within derived Iterators; Necessary for scalarization case in MLMC NonDMultilevelSampling to map scalarization in nested context
virtual void | initialize_iterator (int job_index)
| used by IteratorScheduler to set the starting data for a run
virtual void | pack_parameters_buffer (MPIPackBuffer &send_buffer, int job_index)
| used by IteratorScheduler to pack starting data for an iterator run
virtual void | unpack_parameters_buffer (MPIUnpackBuffer &recv_buffer, int job_index)
| used by IteratorScheduler to unpack starting data for an iterator run
virtual void | unpack_parameters_initialize (MPIUnpackBuffer &recv_buffer, int job_index)
| used by IteratorScheduler to unpack starting data and initialize an iterator run
virtual void | pack_results_buffer (MPIPackBuffer &send_buffer, int job_index)
| used by IteratorScheduler to pack results data from an iterator run
virtual void | unpack_results_buffer (MPIUnpackBuffer &recv_buffer, int job_index)
| used by IteratorScheduler to unpack results data from an iterator run
virtual void | update_local_results (int job_index)
| used by IteratorScheduler to update local results arrays
virtual const Variables & | variables_results () const
| return a single final iterator solution (variables)
virtual const Response & | response_results () const
| return a single final iterator solution (response)
virtual const VariablesArray & | variables_array_results ()
| return multiple final iterator solutions (variables). This should only be used if returns_multiple_points() returns true.
virtual const ResponseArray & | response_array_results ()
| return multiple final iterator solutions (response). This should only be used if returns_multiple_points() returns true.
virtual void | response_results_active_set (const ActiveSet &set)
| set the requested data for the final iterator response results
virtual const RealSymMatrix & | response_error_estimates () const
| return error estimates associated with the final iterator solution
virtual bool | accepts_multiple_points () const
| indicates if this iterator accepts multiple initial points. Default return is false. Override to return true if appropriate.
virtual bool | returns_multiple_points () const
| indicates if this iterator returns multiple final points. Default return is false. Override to return true if appropriate.
virtual void | initial_point (const Variables &pt)
| sets the initial point for this iterator (user-functions mode for which Model updating is not used)
virtual void | initial_point (const RealVector &pt)
| sets the initial point (active continuous variables) for this iterator (user-functions mode for which Model updating is not used)
virtual void | initial_points (const VariablesArray &pts)
| sets the multiple initial points for this iterator. This should only be used if accepts_multiple_points() returns true.
virtual void | update_callback_data (const RealVector &cv_initial, const RealVector &cv_lower_bnds, const RealVector &cv_upper_bnds, const RealMatrix &lin_ineq_coeffs, const RealVector &lin_ineq_lb, const RealVector &lin_ineq_ub, const RealMatrix &lin_eq_coeffs, const RealVector &lin_eq_tgt, const RealVector &nln_ineq_lb, const RealVector &nln_ineq_ub, const RealVector &nln_eq_tgt)
| assign variable values and bounds and constraint coefficients and bounds for this iterator (user-functions mode for which iteratedModel is null)
virtual const RealMatrix & | callback_linear_ineq_coefficients () const
| return linear constraint coefficients for this iterator (user-functions mode for which iteratedModel is null)
virtual const RealVector & | callback_linear_ineq_lower_bounds () const
| return linear constraint lower bounds for this iterator (user-functions mode for which iteratedModel is null)
virtual const RealVector & | callback_linear_ineq_upper_bounds () const
| return linear constraint upper bounds for this iterator (user-functions mode for which iteratedModel is null)
virtual void | initialize_graphics (int iterator_server_id=1)
| initialize the 2D graphics window and the tabular graphics data More...
virtual void | check_sub_iterator_conflict ()
| detect any conflicts due to recursive use of the same Fortran solver More...
virtual unsigned short | uses_method () const
| return name of any enabling iterator used by this iterator
virtual void | method_recourse (unsigned short method_name)
| perform a method switch, if possible, due to a detected conflict with the simultaneous use of method_name at an higher-level
virtual const VariablesArray & | all_variables ()
| return the complete set of evaluated variables
virtual const RealMatrix & | all_samples ()
| return the complete set of evaluated samples
virtual const IntResponseMap & | all_responses () const
| return the complete set of computed responses
virtual size_t | num_samples () const
| get the current number of samples
virtual void | sampling_reset (size_t min_samples, bool all_data_flag, bool stats_flag)
| reset sampling iterator to use at least min_samples
virtual void | sampling_reference (size_t samples_ref)
| set reference number of samples, which is a lower bound during reset
virtual void | sampling_increment ()
| increment to next in sequence of refinement samples
virtual void | random_seed (int seed)
| set randomSeed, if present
virtual unsigned short | sampling_scheme () const
| return sampling name
virtual bool | compact_mode () const
| returns Analyzer::compactMode
virtual IntIntPair | estimate_partition_bounds ()
| estimate the minimum and maximum partition sizes that can be utilized by this Iterator
virtual void | declare_sources ()
| Declare sources to the evaluations database.
void | init_communicators (ParLevLIter pl_iter)
| initialize the communicators associated with this Iterator instance
void | set_communicators (ParLevLIter pl_iter)
| set the communicators associated with this Iterator instance
void | free_communicators (ParLevLIter pl_iter)
| free the communicators associated with this Iterator instance
void | resize_communicators (ParLevLIter pl_iter, bool reinit_comms)
| Resize the communicators. This is called from the letter's resize()
void | parallel_configuration_iterator (ParConfigLIter pc_iter)
| set methodPCIter
ParConfigLIter | parallel_configuration_iterator () const
| return methodPCIter
void | parallel_configuration_iterator_map (std::map< size_t, ParConfigLIter > pci_map)
| set methodPCIterMap
std::map< size_t, ParConfigLIter > | parallel_configuration_iterator_map () const
| return methodPCIterMap
void | run (ParLevLIter pl_iter)
| invoke set_communicators(pl_iter) prior to run()
void | run ()
| orchestrate initialize/pre/core/post/finalize phases More...
void | assign_rep (std::shared_ptr< Iterator > iterator_rep)
| replaces existing letter with a new one More...
void | iterated_model (const Model &model)
| set the iteratedModel (iterators and meta-iterators using a single model instance)
Model & | iterated_model ()
| return the iteratedModel (iterators & meta-iterators using a single model instance)
ProblemDescDB & | problem_description_db () const
| return the problem description database (probDescDB)
ParallelLibrary & | parallel_library () const
| return the parallel library (parallelLib)
void | method_name (unsigned short m_name)
| set the method name to an enumeration value
unsigned short | method_name () const
| return the method name via its native enumeration value
void | method_string (const String &m_str)
| set the method name by string
String | method_string () const
| return the method name by string
String | method_enum_to_string (unsigned short method_enum) const
| convert a method name enumeration value to a string
unsigned short | method_string_to_enum (const String &method_str) const
| convert a method name string to an enumeration value
String | submethod_enum_to_string (unsigned short submethod_enum) const
| convert a sub-method name enumeration value to a string
const String & | method_id () const
| return the method identifier (methodId)
int | maximum_evaluation_concurrency () const
| return the maximum evaluation concurrency supported by the iterator
void | maximum_evaluation_concurrency (int max_conc)
| set the maximum evaluation concurrency supported by the iterator
size_t | maximum_iterations () const
| return the maximum iterations for this iterator
void | maximum_iterations (size_t max_iter)
| set the maximum iterations for this iterator
void | convergence_tolerance (Real conv_tol)
| set the method convergence tolerance (convergenceTol)
Real | convergence_tolerance () const
| return the method convergence tolerance (convergenceTol)
void | output_level (short out_lev)
| set the method output level (outputLevel)
short | output_level () const
| return the method output level (outputLevel)
void | summary_output (bool summary_output_flag)
| Set summary output control; true enables evaluation/results summary.
size_t | num_final_solutions () const
| return the number of solutions to retain in best variables/response arrays
void | num_final_solutions (size_t num_final)
| set the number of solutions to retain in best variables/response arrays
void | active_set (const ActiveSet &set)
| set the default active set (for use with iterators that employ evaluate_parameter_sets())
const ActiveSet & | active_set () const
| return the default active set (used by iterators that employ evaluate_parameter_sets())
void | active_set_request_vector (const ShortArray &asv)
| return the default active set request vector (used by iterators that employ evaluate_parameter_sets())
const ShortArray & | active_set_request_vector () const
| return the default active set request vector (used by iterators that employ evaluate_parameter_sets())
void | active_set_request_values (short asv_val)
| return the default active set request vector (used by iterators that employ evaluate_parameter_sets())
void | sub_iterator_flag (bool si_flag)
| set subIteratorFlag (and update summaryOutputFlag if needed)
bool | is_null () const
| function to check iteratorRep (does this envelope contain a letter?)
std::shared_ptr< Iterator > | iterator_rep () const
| returns iteratorRep for access to derived class member functions that are not mapped to the top Iterator level
virtual void | eval_tag_prefix (const String &eval_id_str)
| set the hierarchical eval ID tag prefix More...
std::shared_ptr< TraitsBase > | traits () const
| returns methodTraits for access to derived class member functions that are not mapped to the top TraitsBase level
bool | top_level ()
| Return whether the iterator is the top level iterator.
void | top_level (bool tflag)
| Set the iterator's top level flag.

## Protected Member Functions
void | core_run ()
| core portion of run; implemented by all derived classes and may include pre/post steps in lieu of separate pre/post More...
Protected Member Functions inherited from Optimizer
| Optimizer (std::shared_ptr< TraitsBase > traits)
| default constructor
| Optimizer (ProblemDescDB &problem_db, Model &model, std::shared_ptr< TraitsBase > traits)
| alternate constructor; accepts a model
| Optimizer (unsigned short method_name, Model &model, std::shared_ptr< TraitsBase > traits)
| alternate constructor for "on the fly" instantiations
| Optimizer (unsigned short method_name, size_t num_cv, size_t num_div, size_t num_dsv, size_t num_drv, size_t num_lin_ineq, size_t num_lin_eq, size_t num_nln_ineq, size_t num_nln_eq, std::shared_ptr< TraitsBase > traits)
| alternate constructor for "on the fly" instantiations
| ~Optimizer ()
| destructor
void | initialize_run ()
void | post_run (std::ostream &s)
void | finalize_run ()
| utility function to perform common operations following post_run(); deallocation and resetting of instance pointers More...
void | print_results (std::ostream &s, short results_state=FINAL_RESULTS)
void | configure_constraint_maps ()
int | configure_inequality_constraints (CONSTRAINT_TYPE ctype)
void | configure_equality_constraints (CONSTRAINT_TYPE ctype, size_t index_offset)
template<typename AdapterT >
void | get_linear_constraints_and_bounds (typename AdapterT::VecT &lin_ineq_lower_bnds, typename AdapterT::VecT &lin_ineq_upper_bnds, typename AdapterT::VecT &lin_eq_targets, typename AdapterT::MatT &lin_ineq_coeffs, typename AdapterT::MatT &lin_eq_coeffs)
Protected Member Functions inherited from Minimizer
| Minimizer (std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| default constructor
| Minimizer (ProblemDescDB &problem_db, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| standard constructor More...
| Minimizer (unsigned short method_name, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate constructor for "on the fly" instantiations
| Minimizer (unsigned short method_name, size_t num_lin_ineq, size_t num_lin_eq, size_t num_nln_ineq, size_t num_nln_eq, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate constructor for "on the fly" instantiations
| Minimizer (Model &model, size_t max_iter, size_t max_eval, Real conv_tol, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate constructor for "on the fly" instantiations
| ~Minimizer ()
| destructor
void | update_from_model (const Model &model)
| set inherited data attributes based on extractions from incoming model
const Model & | algorithm_space_model () const
Model | original_model (unsigned short recasts_left=0) const
| Return a shallow copy of the original model this Iterator was originally passed, optionally leaving recasts_left on top of it.
void | data_transform_model ()
| Wrap iteratedModel in a RecastModel that subtracts provided observed data from the primary response functions (variables and secondary responses are unchanged) More...
void | scale_model ()
| Wrap iteratedModel in a RecastModel that performs variable and/or response scaling. More...
void | enforce_null_model ()
| ensure iteratedModel is null when using function callbacks for evaluation
Real | objective (const RealVector &fn_vals, const BoolDeque &max_sense, const RealVector &primary_wts) const
| compute a composite objective value from one or more primary functions More...
Real | objective (const RealVector &fn_vals, size_t num_fns, const BoolDeque &max_sense, const RealVector &primary_wts) const
| compute a composite objective with specified number of source primary functions, instead of userPrimaryFns More...
void | objective_gradient (const RealVector &fn_vals, const RealMatrix &fn_grads, const BoolDeque &max_sense, const RealVector &primary_wts, RealVector &obj_grad) const
| compute the gradient of the composite objective function
void | objective_gradient (const RealVector &fn_vals, size_t num_fns, const RealMatrix &fn_grads, const BoolDeque &max_sense, const RealVector &primary_wts, RealVector &obj_grad) const
| compute the gradient of the composite objective function More...
void | objective_hessian (const RealVector &fn_vals, const RealMatrix &fn_grads, const RealSymMatrixArray &fn_hessians, const BoolDeque &max_sense, const RealVector &primary_wts, RealSymMatrix &obj_hess) const
| compute the Hessian of the composite objective function
void | objective_hessian (const RealVector &fn_vals, size_t num_fns, const RealMatrix &fn_grads, const RealSymMatrixArray &fn_hessians, const BoolDeque &max_sense, const RealVector &primary_wts, RealSymMatrix &obj_hess) const
| compute the Hessian of the composite objective function More...
virtual void | archive_best_results ()
| top-level archival method
void | archive_best_variables (const bool active_only=false) const
| archive best variables for the index'th final solution
void | archive_best_objective_functions () const
| archive the index'th set of objective functions
void | archive_best_constraints () const
| archive the index'th set of constraints
void | archive_best_residuals () const
| Archive residuals when calibration terms are used.
void | resize_best_vars_array (size_t newsize)
| Safely resize the best variables array to newsize taking into account the envelope-letter design pattern and any recasting. More...
void | resize_best_resp_array (size_t newsize)
| Safely resize the best response array to newsize taking into account the envelope-letter design pattern and any recasting. More...
bool | local_recast_retrieve (const Variables &vars, Response &response) const
| infers MOO/NLS solution from the solution of a single-objective optimizer and returns true if lookup succeeds More...
void | reshape_best (size_t num_cv, size_t num_fns)
| reshape input/output sizes within best{Variables,Response}Array
Protected Member Functions inherited from Iterator
| Iterator (BaseConstructor, ProblemDescDB &problem_db, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| constructor initializes the base class part of letter classes (BaseConstructor overloading avoids infinite recursion in the derived class constructors - Coplien, p. 139) More...
| Iterator (NoDBBaseConstructor, unsigned short method_name, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate constructor for base iterator classes constructed on the fly More...
| Iterator (NoDBBaseConstructor, unsigned short method_name, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate constructor for base iterator classes constructed on the fly More...
| Iterator (NoDBBaseConstructor, Model &model, size_t max_iter, size_t max_eval, Real conv_tol, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase()))
| alternate envelope constructor for instantiations without ProblemDescDB More...
virtual void | derived_init_communicators (ParLevLIter pl_iter)
| derived class contributions to initializing the communicators associated with this Iterator instance
virtual const VariablesArray & | initial_points () const
| gets the multiple initial points for this iterator. This will only be meaningful after a call to initial_points mutator.
StrStrSizet | run_identifier () const
| get the unique run identifier based on method name, id, and number of executions
void | initialize_model_graphics (Model &model, int iterator_server_id)
| helper function that encapsulates initialization operations, modular on incoming Model instance More...
void | export_final_surrogates (Model &data_fit_surr_model)
| export final surrogates generated, e.g., GP in EGO and friends More...

## Private Member Functions
void | parse_options ()
| constructor helper function to parse misc_options from ProblemDescDB
void | compute_direction ()
| compute next direction via choice of method
bool | compute_step ()
| compute step: fixed, simple decrease, sufficient decrease
void | bracket_min (Real &xa, Real &xb, Real &xc, Real &fa, Real &fb, Real &fc)
| bracket the 1-D minimum in the linesearch
Real | brent_minimize (Real a, Real b, Real tol)
| Perform 1-D minimization for the stepLength using Brent's method. More...

## Private Attributes
Real | initialStep
| initial step length
Real | linesearchTolerance
| approximate accuracy of absissca in LS
unsigned | linesearchType
| type of line search (if any)
unsigned | maxLinesearchIters
| maximum evaluations in line search
Real | relFunctionTol
| stopping criterion for rel change in fn
Real | relGradientTol
| stopping criterion for rel reduction in g
bool | resetStep
| whether to reset step with each linesearch
unsigned | restartIter
| iter at which to reset to steepest descent
unsigned | updateType
| type of CG direction update
unsigned | iterCurr
| current iteration number
RealVector | designVars
| current decision variables in the major iteration
RealVector | trialVars
| decision variables in the linesearch
Real | functionCurr
| current function value
Real | functionPrev
| previous function value
RealVector | gradCurr
| current gradient
RealVector | gradPrev
| previous gradient
RealVector | gradDiff
| temporary for gradient difference (gradCurr - gradPrev)
RealVector | searchDirection
| current aggregate search direction
Real | stepLength
| current step length parameter alpha
Real | gradDotGrad_init
| initial gradient norm squared
Real | gradDotGrad_curr
| gradCurr dot gradCurr
Real | gradDotGrad_prev
| gradPrev dot gradPrev

## Additional Inherited Members
Static Public Member Functions inherited from Optimizer
static void | not_available (const std::string &package_name)
| Static helper function: third-party opt packages which are not available.
Static Public Member Functions inherited from Minimizer
static Real | sum_squared_residuals (size_t num_pri_fns, const RealVector &residuals, const RealVector &weights)
| return weighted sum of squared residuals
static void | print_residuals (size_t num_terms, const RealVector &best_terms, const RealVector &weights, size_t num_best, size_t best_index, std::ostream &s)
| print num_terms residuals and misfit for final results
static void | print_model_resp (size_t num_pri_fns, const RealVector &best_fns, size_t num_best, size_t best_index, std::ostream &s)
| print the original user model resp in the case of data transformations
static void | print_best_eval_ids (const String &interface_id, const Variables &best_vars, const ActiveSet &active_set, std::ostream &s)
| print best evaluation matching vars and set, or partial matches with matching variables only. More...
Static Protected Member Functions inherited from Iterator
static void | gnewton_set_recast (const Variables &recast_vars, const ActiveSet &recast_set, ActiveSet &sub_model_set)
| conversion of request vector values for the Gauss-Newton Hessian approximation More...
Protected Attributes inherited from Optimizer
size_t | numObjectiveFns
| number of objective functions (iterator view)
bool | localObjectiveRecast
| flag indicating whether local recasting to a single objective is used
Optimizer * | prevOptInstance
| pointer containing previous value of optimizerInstance
int | numNonlinearIneqConstraintsFound
| number of nonlinear ineq constraints actually used (based on conditional and bigRealBoundSize
std::vector< int > | constraintMapIndices
| map from Dakota constraint number to APPS constraint number
std::vector< double > | constraintMapMultipliers
| multipliers for constraint transformations
std::vector< double > | constraintMapOffsets
| offsets for constraint transformations
Protected Attributes inherited from Minimizer
size_t | numFunctions
| number of response functions
size_t | numContinuousVars
| number of active continuous vars
size_t | numDiscreteIntVars
| number of active discrete integer vars
size_t | numDiscreteStringVars
| number of active discrete string vars
size_t | numDiscreteRealVars
| number of active discrete real vars
Real | constraintTol
| optimizer/least squares constraint tolerance
Real | bigRealBoundSize
| cutoff value for inequality constraint and continuous variable bounds
int | bigIntBoundSize
| cutoff value for discrete variable bounds
size_t | numNonlinearIneqConstraints
| number of nonlinear inequality constraints
size_t | numNonlinearEqConstraints
| number of nonlinear equality constraints
size_t | numLinearIneqConstraints
| number of linear inequality constraints
size_t | numLinearEqConstraints
| number of linear equality constraints
size_t | numNonlinearConstraints
| total number of nonlinear constraints
size_t | numLinearConstraints
| total number of linear constraints
size_t | numConstraints
| total number of linear and nonlinear constraints
bool | optimizationFlag
| flag for use where optimization and NLS must be distinguished
size_t | numUserPrimaryFns
| number of objective functions or least squares terms in the inbound model; always initialize at Minimizer, even if overridden later
size_t | numIterPrimaryFns
| number of objective functions or least squares terms in iterator's view, after transformations; always initialize at Minimizer, even if overridden later
bool | boundConstraintFlag
| convenience flag for denoting the presence of user-specified bound constraints. Used for method selection and error checking.
bool | speculativeFlag
| flag for speculative gradient evaluations
bool | calibrationDataFlag
| flag indicating whether user-supplied calibration data is active
ExperimentData | expData
| Container for experimental data to which to calibrate model using least squares or other formulations which minimize SSE.
size_t | numExperiments
| number of experiments
size_t | numTotalCalibTerms
| number of total calibration terms (sum over experiments of number of experimental data per experiment, including field data)
Model | dataTransformModel
| Shallow copy of the data transformation model, when present (cached in case further wrapped by other transformations)
bool | scaleFlag
| whether Iterator-level scaling is active
Model | scalingModel
| Shallow copy of the scaling transformation model, when present (cached in case further wrapped by other transformations)
Minimizer * | prevMinInstance
| pointer containing previous value of minimizerInstance
bool | vendorNumericalGradFlag
| convenience flag for gradient_type == numerical && method_source == vendor
std::shared_ptr< TPLDataTransfer > | dataTransferHandler
| Emerging helper class for handling data transfers to/from Dakota and the underlying TPL.
Protected Attributes inherited from Iterator
ProblemDescDB & | probDescDB
| class member reference to the problem description database More...
ParallelLibrary & | parallelLib
| class member reference to the parallel library
ParConfigLIter | methodPCIter
| the active ParallelConfiguration used by this Iterator instance
Model | iteratedModel
| the model to be iterated (for iterators and meta-iterators employing a single model instance)
size_t | myModelLayers
| number of Models locally (in Iterator or derived classes) wrapped around the initially passed in Model
unsigned short | methodName
| name of the iterator (the user's method spec)
Real | convergenceTol
| iteration convergence tolerance
size_t | maxIterations
| maximum number of iterations for the method
size_t | maxFunctionEvals
| maximum number of fn evaluations for the method
int | maxEvalConcurrency
| maximum number of concurrent model evaluations More...
ActiveSet | activeSet
| the response data requirements on each function evaluation
size_t | numFinalSolutions
| number of solutions to retain in best variables/response arrays
VariablesArray | bestVariablesArray
| collection of N best solution variables found during the study; always in context of Model originally passed to the Iterator (any in-flight Recasts must be undone)
ResponseArray | bestResponseArray
| collection of N best solution responses found during the study; always in context of Model originally passed to the Iterator (any in-flight Recasts must be undone)
bool | subIteratorFlag
| flag indicating if this Iterator is a sub-iterator (NestedModel::subIterator or DataFitSurrModel::daceIterator)
short | outputLevel
| output verbosity level: {SILENT,QUIET,NORMAL,VERBOSE,DEBUG}_OUTPUT
bool | summaryOutputFlag
| flag for summary output (evaluation stats, final results); default true, but false for on-the-fly (helper) iterators and sub-iterator use cases
ResultsManager & | resultsDB
| reference to the global iterator results database
EvaluationStore & | evaluationsDB
| reference to the global evaluation database
EvaluationsDBState | evaluationsDBState
| State of evaluations DB for this iterator.
ResultsNames | resultsNames
| valid names for iterator results
std::shared_ptr< TraitsBase > | methodTraits
| pointer that retains shared ownership of a TraitsBase object, or child thereof
bool | topLevel
| Whether this is the top level iterator.
bool | exportSurrogate = false
| whether to export final surrogates
String | surrExportPrefix
| base filename for exported surrogates
unsigned short | surrExportFormat = NO_MODEL_FORMAT
| (bitwise) format(s) to export
Static Protected Attributes inherited from Optimizer
static Optimizer * | optimizerInstance
| pointer to Optimizer instance used in static member functions
Static Protected Attributes inherited from Minimizer
static Minimizer * | minimizerInstance
| pointer to Minimizer used in static member functions

## Detailed Description

Experimental implementation of nonlinear CG optimization

## Member Function Documentation

## ◆ core_run()

void core_run | ( |  | ) |
| protected virtual

core portion of run; implemented by all derived classes and may include pre/post steps in lieu of separate pre/post

Virtual run function for the iterator class hierarchy. All derived classes need to redefine it.

Reimplemented from Iterator.

References Iterator::activeSet, Iterator::bestResponseArray, Iterator::bestVariablesArray, NonlinearCGOptimizer::compute_direction(), NonlinearCGOptimizer::compute_step(), Model::continuous_variables(), Iterator::convergenceTol, Dakota::copy_data(), Model::current_response(), NonlinearCGOptimizer::designVars, Model::evaluate(), Response::function_gradient_copy(), Response::function_gradient_view(), Response::function_values(), NonlinearCGOptimizer::functionCurr, NonlinearCGOptimizer::functionPrev, NonlinearCGOptimizer::gradCurr, NonlinearCGOptimizer::gradDotGrad_curr, NonlinearCGOptimizer::gradDotGrad_init, NonlinearCGOptimizer::gradDotGrad_prev, NonlinearCGOptimizer::gradPrev, Iterator::iteratedModel, NonlinearCGOptimizer::iterCurr, NonlinearCGOptimizer::linesearchType, Optimizer::localObjectiveRecast, Iterator::maxIterations, Minimizer::numContinuousVars, Iterator::outputLevel, NonlinearCGOptimizer::relFunctionTol, NonlinearCGOptimizer::relGradientTol, ActiveSet::request_values(), NonlinearCGOptimizer::searchDirection, NonlinearCGOptimizer::stepLength, and NonlinearCGOptimizer::trialVars.

## ◆ brent_minimize()

Real brent_minimize | ( | Real | a,
|  | Real | b,
|  | Real | tol
| ) |  |
| private

Perform 1-D minimization for the stepLength using Brent's method.

Perform 1-D minimization for the stepLength using Brent's method. This is a C translation of fmin.f from Netlib.

References NonlinearCGOptimizer::linesearch_eval(), NonlinearCGOptimizer::maxLinesearchIters, and Iterator::outputLevel.

Referenced by NonlinearCGOptimizer::compute_step().

The documentation for this class was generated from the following files:

- NonlinearCGOptimizer.hpp
- NonlinearCGOptimizer.cpp