| 
    ROL
    
   | 
 
#include <ROL_Problem.hpp>
 Inheritance diagram for ROL::Problem< Real >:Public Member Functions | |
| virtual | ~Problem () | 
| Problem (const Ptr< Objective< Real >> &obj, const Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &g=nullPtr) | |
| Default constructor for OptimizationProblem.  More... | |
| Problem (const Problem &problem) | |
| Copy constructor for OptimizationProblem.  More... | |
| void | addBoundConstraint (const Ptr< BoundConstraint< Real >> &bnd) | 
| Add a bound constraint.  More... | |
| void | removeBoundConstraint () | 
| Remove an existing bound constraint.  More... | |
| void | addProxObjective (const Ptr< ProxObjective< Real >> &prox) | 
| Add a prox objective.  More... | |
| void | removeProxObjective () | 
| Remove an existing prox objective.  More... | |
| void | addConstraint (std::string name, const Ptr< Constraint< Real >> &econ, const Ptr< Vector< Real >> &emul, const Ptr< Vector< Real >> &eres=nullPtr, bool reset=false) | 
| Add an equality constraint.  More... | |
| void | addConstraint (std::string name, const Ptr< Constraint< Real >> &icon, const Ptr< Vector< Real >> &imul, const Ptr< BoundConstraint< Real >> &ibnd, const Ptr< Vector< Real >> &ires=nullPtr, bool reset=false) | 
| Add an inequality constraint.  More... | |
| void | removeConstraint (std::string name) | 
| Remove an existing constraint.  More... | |
| void | addLinearConstraint (std::string name, const Ptr< Constraint< Real >> &linear_econ, const Ptr< Vector< Real >> &linear_emul, const Ptr< Vector< Real >> &linear_eres=nullPtr, bool reset=false) | 
| Add a linear equality constraint.  More... | |
| void | addLinearConstraint (std::string name, const Ptr< Constraint< Real >> &linear_icon, const Ptr< Vector< Real >> &linear_imul, const Ptr< BoundConstraint< Real >> &linear_ibnd, const Ptr< Vector< Real >> &linear_ires=nullPtr, bool reset=false) | 
| Add a linear inequality constraint.  More... | |
| void | removeLinearConstraint (std::string name) | 
| Remove an existing linear constraint.  More... | |
| void | setProjectionAlgorithm (ParameterList &parlist) | 
| Set polyhedral projection algorithm.  More... | |
| const Ptr< Objective< Real > > & | getObjective () | 
| Get the objective function.  More... | |
| const Ptr< Vector< Real > > & | getPrimalOptimizationVector () | 
| Get the primal optimization space vector.  More... | |
| const Ptr< Vector< Real > > & | getDualOptimizationVector () | 
| Get the dual optimization space vector.  More... | |
| const Ptr< BoundConstraint < Real > > &  | getBoundConstraint () | 
| Get the bound constraint.  More... | |
| const Ptr< Constraint< Real > > & | getConstraint () | 
| Get the equality constraint.  More... | |
| const Ptr< Vector< Real > > & | getMultiplierVector () | 
| Get the dual constraint space vector.  More... | |
| const Ptr< Vector< Real > > & | getResidualVector () | 
| Get the primal constraint space vector.  More... | |
| const Ptr < PolyhedralProjection< Real > > &  | getPolyhedralProjection () | 
| Get the polyhedral projection object. This is a null pointer if no linear constraints and/or bounds are present.  More... | |
| EProblem | getProblemType () | 
| Get the optimization problem type (U, B, E, or G).  More... | |
| Real | checkLinearity (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Check if user-supplied linear constraints are affine.  More... | |
| void | checkVectors (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Run vector checks for user-supplied vectors.  More... | |
| void | checkDerivatives (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Run derivative checks for user-supplied objective function and constraints.  More... | |
| void | check (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Run vector, linearity and derivative checks for user-supplied vectors, objective function and constraints.  More... | |
| virtual void | finalize (bool lumpConstraints=false, bool printToStream=false, std::ostream &outStream=std::cout) | 
| Tranform user-supplied constraints to consist of only bounds and equalities. Optimization problem cannot be modified after finalize has been called without calling the edit function.  More... | |
| bool | isFinalized () const | 
| Indicate whether or no finalize has been called.  More... | |
| virtual void | edit () | 
| Resume editting optimization problem after finalize has been called.  More... | |
| void | finalizeIteration () | 
| Transform the optimization variables to the native parameterization after an optimization algorithm has finished.  More... | |
| virtual | ~Problem () | 
| Problem (const Ptr< Objective< Real >> &obj, const Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &g=nullPtr) | |
| Default constructor for OptimizationProblem.  More... | |
| Problem (const Problem &problem) | |
| Copy constructor for OptimizationProblem.  More... | |
| void | addBoundConstraint (const Ptr< BoundConstraint< Real >> &bnd) | 
| Add a bound constraint.  More... | |
| void | removeBoundConstraint () | 
| Remove an existing bound constraint.  More... | |
| void | addConstraint (std::string name, const Ptr< Constraint< Real >> &econ, const Ptr< Vector< Real >> &emul, const Ptr< Vector< Real >> &eres=nullPtr, bool reset=false) | 
| Add an equality constraint.  More... | |
| void | addConstraint (std::string name, const Ptr< Constraint< Real >> &icon, const Ptr< Vector< Real >> &imul, const Ptr< BoundConstraint< Real >> &ibnd, const Ptr< Vector< Real >> &ires=nullPtr, bool reset=false) | 
| Add an inequality constraint.  More... | |
| void | removeConstraint (std::string name) | 
| Remove an existing constraint.  More... | |
| void | addLinearConstraint (std::string name, const Ptr< Constraint< Real >> &linear_econ, const Ptr< Vector< Real >> &linear_emul, const Ptr< Vector< Real >> &linear_eres=nullPtr, bool reset=false) | 
| Add a linear equality constraint.  More... | |
| void | addLinearConstraint (std::string name, const Ptr< Constraint< Real >> &linear_icon, const Ptr< Vector< Real >> &linear_imul, const Ptr< BoundConstraint< Real >> &linear_ibnd, const Ptr< Vector< Real >> &linear_ires=nullPtr, bool reset=false) | 
| Add a linear inequality constraint.  More... | |
| void | removeLinearConstraint (std::string name) | 
| Remove an existing linear constraint.  More... | |
| void | setProjectionAlgorithm (ParameterList &parlist) | 
| Set polyhedral projection algorithm.  More... | |
| void | addProximableObjective (const Ptr< Objective< Real >> &nobj) | 
| void | removeProximableObjective () | 
| const Ptr< Objective< Real > > & | getObjective () | 
| Get the objective function.  More... | |
| const Ptr< Objective< Real > > & | getProximableObjective () | 
| Get proximable objective.  More... | |
| const Ptr< Vector< Real > > & | getPrimalOptimizationVector () | 
| Get the primal optimization space vector.  More... | |
| const Ptr< Vector< Real > > & | getDualOptimizationVector () | 
| Get the dual optimization space vector.  More... | |
| const Ptr< BoundConstraint < Real > > &  | getBoundConstraint () | 
| Get the bound constraint.  More... | |
| const Ptr< Constraint< Real > > & | getConstraint () | 
| Get the equality constraint.  More... | |
| const Ptr< Vector< Real > > & | getMultiplierVector () | 
| Get the dual constraint space vector.  More... | |
| const Ptr< Vector< Real > > & | getResidualVector () | 
| Get the primal constraint space vector.  More... | |
| const Ptr < PolyhedralProjection< Real > > &  | getPolyhedralProjection () | 
| Get the polyhedral projection object. This is a null pointer if no linear constraints and/or bounds are present.  More... | |
| EProblem | getProblemType () | 
| Get the optimization problem type (U, B, E, G, or P).  More... | |
| Real | checkLinearity (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Check if user-supplied linear constraints are affine.  More... | |
| void | checkVectors (bool printToStream=false, std::ostream &outStream=std::cout) const | 
| Run vector checks for user-supplied vectors.  More... | |
| void | checkDerivatives (bool printToStream=false, std::ostream &outStream=std::cout, const Ptr< Vector< Real >> &x0=nullPtr, Real scale=Real(1)) const | 
| Run derivative checks for user-supplied objective function and constraints.  More... | |
| void | check (bool printToStream=false, std::ostream &outStream=std::cout, const Ptr< Vector< Real >> &x0=nullPtr, Real scale=Real(1)) const | 
| Run vector, linearity and derivative checks for user-supplied vectors, objective function and constraints.  More... | |
| virtual void | finalize (bool lumpConstraints=false, bool printToStream=false, std::ostream &outStream=std::cout) | 
| Tranform user-supplied constraints to consist of only bounds and equalities. Optimization problem cannot be modified after finalize has been called without calling the edit function.  More... | |
| bool | isFinalized () const | 
| Indicate whether or no finalize has been called.  More... | |
| virtual void | edit () | 
| Resume editting optimization problem after finalize has been called.  More... | |
| void | finalizeIteration () | 
| Transform the optimization variables to the native parameterization after an optimization algorithm has finished.  More... | |
Protected Attributes | |
| Ptr< Objective< Real > > | INPUT_obj_ | 
| Ptr< Vector< Real > > | INPUT_xprim_ | 
| Ptr< Vector< Real > > | INPUT_xdual_ | 
| Ptr< BoundConstraint< Real > > | INPUT_bnd_ | 
| std::unordered_map < std::string, ConstraintData < Real > >  | INPUT_con_ | 
| std::unordered_map < std::string, ConstraintData < Real > >  | INPUT_linear_con_ | 
| Ptr< ProxObjective< Real > > | INPUT_prox_ | 
| Ptr< Objective< Real > > | INPUT_nobj_ | 
Private Attributes | |
| bool | isFinalized_ | 
| bool | hasBounds_ | 
| bool | hasEquality_ | 
| bool | hasInequality_ | 
| bool | hasLinearEquality_ | 
| bool | hasLinearInequality_ | 
| bool | hasProx_ | 
| unsigned | cnt_econ_ | 
| unsigned | cnt_icon_ | 
| unsigned | cnt_linear_econ_ | 
| unsigned | cnt_linear_icon_ | 
| ParameterList | ppa_list_ | 
| Ptr< Objective< Real > > | obj_ | 
| Ptr< Vector< Real > > | xprim_ | 
| Ptr< Vector< Real > > | xdual_ | 
| Ptr< BoundConstraint< Real > > | bnd_ | 
| Ptr< Constraint< Real > > | con_ | 
| Ptr< Vector< Real > > | mul_ | 
| Ptr< Vector< Real > > | res_ | 
| Ptr< PolyhedralProjection< Real > > | proj_ | 
| Ptr< ProxObjective< Real > > | prox_ | 
| Ptr< Vector< Real > > | xfeas_ | 
| Ptr< ReduceLinearConstraint < Real > >  | rlc_ | 
| EProblem | problemType_ | 
| bool | hasProximableObjective_ | 
| Ptr< Objective< Real > > | nobj_ | 
Definition at line 27 of file function/prox/ROL_Problem.hpp.
      
  | 
  inlinevirtual | 
Definition at line 69 of file function/prox/ROL_Problem.hpp.
| ROL::Problem< Real >::Problem | ( | const Ptr< Objective< Real >> & | obj, | 
| const Ptr< Vector< Real >> & | x, | ||
| const Ptr< Vector< Real >> & | g = nullPtr  | 
        ||
| ) | 
Default constructor for OptimizationProblem.
| [in] | obj | objective function object | 
| [in] | x | primal optimization space vector | 
| [in] | g | dual optimization space vector | 
Definition at line 18 of file function/prox/ROL_Problem_Def.hpp.
References ROL::Problem< Real >::INPUT_bnd_, ROL::Problem< Real >::INPUT_con_, ROL::Problem< Real >::INPUT_linear_con_, ROL::Problem< Real >::INPUT_obj_, ROL::Problem< Real >::INPUT_xdual_, and ROL::Problem< Real >::INPUT_xprim_.
      
  | 
  inline | 
Copy constructor for OptimizationProblem.
| [in] | problem | objective function object | 
Definition at line 85 of file function/prox/ROL_Problem.hpp.
      
  | 
  inlinevirtual | 
Definition at line 68 of file algorithm/ROL_Problem.hpp.
| ROL::Problem< Real >::Problem | ( | const Ptr< Objective< Real >> & | obj, | 
| const Ptr< Vector< Real >> & | x, | ||
| const Ptr< Vector< Real >> & | g = nullPtr  | 
        ||
| ) | 
Default constructor for OptimizationProblem.
| [in] | obj | objective function object | 
| [in] | x | primal optimization space vector | 
| [in] | g | dual optimization space vector | 
      
  | 
  inline | 
Copy constructor for OptimizationProblem.
| [in] | problem | objective function object | 
Definition at line 84 of file algorithm/ROL_Problem.hpp.
| void ROL::Problem< Real >::addBoundConstraint | ( | const Ptr< BoundConstraint< Real >> & | bnd | ) | 
Add a bound constraint.
| [in] | bnd | bound constraint object | 
Definition at line 38 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeG::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeB::Algorithm< Real >::run().
| void ROL::Problem< Real >::removeBoundConstraint | ( | ) | 
Remove an existing bound constraint.
Definition at line 47 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::addProxObjective | ( | const Ptr< ProxObjective< Real >> & | prox | ) | 
Add a prox objective.
| [in] | prox | prox objective object | 
Definition at line 56 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::removeProxObjective | ( | ) | 
Remove an existing prox objective.
Definition at line 65 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::addConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | econ, | ||
| const Ptr< Vector< Real >> & | emul, | ||
| const Ptr< Vector< Real >> & | eres = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add an equality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | econ | constraint object | 
| [in] | emul | dual constraint space vector | 
| [in] | eres | primal constraint space vector | 
| [in] | reset | whether or not to clear constraint container | 
Definition at line 74 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::StochasticProblem< Real >::edit(), ROL::StochasticProblem< Real >::finalize(), ROL::StochasticProblem< Real >::makeConstraintStochastic(), ROL::StochasticProblem< Real >::resetStochasticConstraint(), ROL::TypeE::Algorithm< Real >::run(), and ROL::TypeG::Algorithm< Real >::run().
| void ROL::Problem< Real >::addConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | icon, | ||
| const Ptr< Vector< Real >> & | imul, | ||
| const Ptr< BoundConstraint< Real >> & | ibnd, | ||
| const Ptr< Vector< Real >> & | ires = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add an inequality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | icon | constraint object | 
| [in] | imul | dual constraint space vector | 
| [in] | ibnd | bound constraint | 
| [in] | ires | primal constraint space vector | 
| [in] | reset | whether or not to clear constraint container | 
Definition at line 94 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::removeConstraint | ( | std::string | name | ) | 
Remove an existing constraint.
| [in] | name | the unique constraint identifier | 
Definition at line 115 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::StochasticProblem< Real >::edit(), ROL::StochasticProblem< Real >::finalize(), ROL::StochasticProblem< Real >::makeConstraintStochastic(), and ROL::StochasticProblem< Real >::resetStochasticConstraint().
| void ROL::Problem< Real >::addLinearConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | linear_econ, | ||
| const Ptr< Vector< Real >> & | linear_emul, | ||
| const Ptr< Vector< Real >> & | linear_eres = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add a linear equality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | linear_econ | constraint object | 
| [in] | linear_emul | dual constraint space vector | 
| [in] | linear_eres | primal constraint space vector | 
| [in] | reset | whether or not to clear linear constraint container | 
Definition at line 130 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::StochasticProblem< Real >::edit(), ROL::StochasticProblem< Real >::finalize(), ROL::StochasticProblem< Real >::makeLinearConstraintStochastic(), ROL::StochasticProblem< Real >::resetStochasticLinearConstraint(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeG::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), and ROL::TypeG::Algorithm< Real >::run().
| void ROL::Problem< Real >::addLinearConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | linear_icon, | ||
| const Ptr< Vector< Real >> & | linear_imul, | ||
| const Ptr< BoundConstraint< Real >> & | linear_ibnd, | ||
| const Ptr< Vector< Real >> & | linear_ires = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add a linear inequality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | linear_icon | constraint object | 
| [in] | linear_imul | dual constraint space vector | 
| [in] | linear_ibnd | bound constraint | 
| [in] | linear_ires | primal constraint space vector | 
| [in] | reset | whether or not to clear linear constraint container | 
Definition at line 150 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::removeLinearConstraint | ( | std::string | name | ) | 
Remove an existing linear constraint.
| [in] | name | the unique constraint identifier | 
Definition at line 171 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::StochasticProblem< Real >::edit(), ROL::StochasticProblem< Real >::finalize(), ROL::StochasticProblem< Real >::makeLinearConstraintStochastic(), and ROL::StochasticProblem< Real >::resetStochasticLinearConstraint().
| void ROL::Problem< Real >::setProjectionAlgorithm | ( | ParameterList & | parlist | ) | 
Set polyhedral projection algorithm.
| [in] | ppa | polyhedral projection algorithm | 
Definition at line 186 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Objective< Real > > & ROL::Problem< Real >::getObjective | ( | void | ) | 
Get the objective function.
Definition at line 441 of file function/prox/ROL_Problem_Def.hpp.
References obj_.
Referenced by ROL::TypeU::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeP::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Vector< Real > > & ROL::Problem< Real >::getPrimalOptimizationVector | ( | ) | 
Get the primal optimization space vector.
Definition at line 447 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeU::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeP::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Vector< Real > > & ROL::Problem< Real >::getDualOptimizationVector | ( | ) | 
Get the dual optimization space vector.
Definition at line 453 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeU::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeP::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< BoundConstraint< Real > > & ROL::Problem< Real >::getBoundConstraint | ( | void | ) | 
Get the bound constraint.
Definition at line 459 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeB::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Constraint< Real > > & ROL::Problem< Real >::getConstraint | ( | ) | 
Get the equality constraint.
Definition at line 465 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Vector< Real > > & ROL::Problem< Real >::getMultiplierVector | ( | ) | 
Get the dual constraint space vector.
Definition at line 471 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< Vector< Real > > & ROL::Problem< Real >::getResidualVector | ( | ) | 
Get the primal constraint space vector.
Definition at line 477 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| const Ptr< PolyhedralProjection< Real > > & ROL::Problem< Real >::getPolyhedralProjection | ( | ) | 
Get the polyhedral projection object. This is a null pointer if no linear constraints and/or bounds are present.
Definition at line 483 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeB::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeB::KelleySachsAlgorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeG::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeB::NewtonKrylovAlgorithm< Real >::run().
| EProblem ROL::Problem< Real >::getProblemType | ( | ) | 
Get the optimization problem type (U, B, E, or G).
Definition at line 489 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeU::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeP::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| Real ROL::Problem< Real >::checkLinearity | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Check if user-supplied linear constraints are affine.
This function computes the error
\[ \|c(x+\alpha y) - (c(x)+\alpha (c(y)-c(0)))\| \]
for each user-supplied linear constraint and returns the maximum.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 495 of file function/prox/ROL_Problem_Def.hpp.
References ROL::Temp.
| void ROL::Problem< Real >::checkVectors | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Run vector checks for user-supplied vectors.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 544 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::checkDerivatives | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Run derivative checks for user-supplied objective function and constraints.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 603 of file function/prox/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::check | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Run vector, linearity and derivative checks for user-supplied vectors, objective function and constraints.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 644 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
      
  | 
  virtual | 
Tranform user-supplied constraints to consist of only bounds and equalities. Optimization problem cannot be modified after finalize has been called without calling the edit function.
| [in] | lumpConstraints | combine both linear and nonlinear constraints | 
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Reimplemented in ROL::StochasticProblem< Real >.
Definition at line 194 of file function/prox/ROL_Problem_Def.hpp.
References ROL::ConstraintAssembler< Real >::getBoundConstraint(), ROL::ConstraintAssembler< Real >::getConstraint(), ROL::ConstraintAssembler< Real >::getDualOptVector(), ROL::ConstraintAssembler< Real >::getLinearConstraint(), ROL::ConstraintAssembler< Real >::getLinearMultiplier(), ROL::ConstraintAssembler< Real >::getLinearResidual(), ROL::ConstraintAssembler< Real >::getMultiplier(), ROL::ConstraintAssembler< Real >::getOptVector(), ROL::ConstraintAssembler< Real >::getResidual(), ROL::ConstraintAssembler< Real >::hasInequality(), obj_, ROL::TYPE_B, ROL::TYPE_E, ROL::TYPE_EB, and ROL::TYPE_U.
Referenced by ROL::StochasticProblem< Real >::finalize(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::StabilizedLCLAlgorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), and ROL::TypeB::Algorithm< Real >::run().
| bool ROL::Problem< Real >::isFinalized | ( | ) | const | 
Indicate whether or no finalize has been called.
Definition at line 653 of file function/prox/ROL_Problem_Def.hpp.
      
  | 
  virtual | 
Resume editting optimization problem after finalize has been called.
Reimplemented in ROL::StochasticProblem< Real >.
Definition at line 658 of file function/prox/ROL_Problem_Def.hpp.
Referenced by ROL::StochasticProblem< Real >::edit(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| void ROL::Problem< Real >::finalizeIteration | ( | ) | 
Transform the optimization variables to the native parameterization after an optimization algorithm has finished.
Definition at line 665 of file function/prox/ROL_Problem_Def.hpp.
References ROL::PartitionedVector< Real >::get().
Referenced by ROL::TypeU::Algorithm< Real >::run(), ROL::TypeB::Algorithm< Real >::run(), ROL::TypeE::Algorithm< Real >::run(), ROL::TypeG::Algorithm< Real >::run(), ROL::TypeP::Algorithm< Real >::run(), ROL::TypeE::StabilizedLCLAlgorithm< Real >::run(), and ROL::TypeG::StabilizedLCLAlgorithm< Real >::run().
| void ROL::Problem< Real >::addBoundConstraint | ( | const Ptr< BoundConstraint< Real >> & | bnd | ) | 
Add a bound constraint.
| [in] | bnd | bound constraint object | 
| void ROL::Problem< Real >::removeBoundConstraint | ( | ) | 
Remove an existing bound constraint.
| void ROL::Problem< Real >::addConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | econ, | ||
| const Ptr< Vector< Real >> & | emul, | ||
| const Ptr< Vector< Real >> & | eres = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add an equality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | econ | constraint object | 
| [in] | emul | dual constraint space vector | 
| [in] | eres | primal constraint space vector | 
| [in] | reset | whether or not to clear constraint container | 
| void ROL::Problem< Real >::addConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | icon, | ||
| const Ptr< Vector< Real >> & | imul, | ||
| const Ptr< BoundConstraint< Real >> & | ibnd, | ||
| const Ptr< Vector< Real >> & | ires = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add an inequality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | icon | constraint object | 
| [in] | imul | dual constraint space vector | 
| [in] | ibnd | bound constraint | 
| [in] | ires | primal constraint space vector | 
| [in] | reset | whether or not to clear constraint container | 
| void ROL::Problem< Real >::removeConstraint | ( | std::string | name | ) | 
Remove an existing constraint.
| [in] | name | the unique constraint identifier | 
| void ROL::Problem< Real >::addLinearConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | linear_econ, | ||
| const Ptr< Vector< Real >> & | linear_emul, | ||
| const Ptr< Vector< Real >> & | linear_eres = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add a linear equality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | linear_econ | constraint object | 
| [in] | linear_emul | dual constraint space vector | 
| [in] | linear_eres | primal constraint space vector | 
| [in] | reset | whether or not to clear linear constraint container | 
| void ROL::Problem< Real >::addLinearConstraint | ( | std::string | name, | 
| const Ptr< Constraint< Real >> & | linear_icon, | ||
| const Ptr< Vector< Real >> & | linear_imul, | ||
| const Ptr< BoundConstraint< Real >> & | linear_ibnd, | ||
| const Ptr< Vector< Real >> & | linear_ires = nullPtr,  | 
        ||
| bool | reset = false  | 
        ||
| ) | 
Add a linear inequality constraint.
| [in] | name | the unique constraint identifier | 
| [in] | linear_icon | constraint object | 
| [in] | linear_imul | dual constraint space vector | 
| [in] | linear_ibnd | bound constraint | 
| [in] | linear_ires | primal constraint space vector | 
| [in] | reset | whether or not to clear linear constraint container | 
| void ROL::Problem< Real >::removeLinearConstraint | ( | std::string | name | ) | 
Remove an existing linear constraint.
| [in] | name | the unique constraint identifier | 
| void ROL::Problem< Real >::setProjectionAlgorithm | ( | ParameterList & | parlist | ) | 
Set polyhedral projection algorithm.
| [in] | ppa | polyhedral projection algorithm | 
| void ROL::Problem< Real >::addProximableObjective | ( | const Ptr< Objective< Real >> & | nobj | ) | 
Set Proximable objective function
Definition at line 58 of file algorithm/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::removeProximableObjective | ( | ) | 
Remove Proximable objective function
Definition at line 67 of file algorithm/ROL_Problem_Def.hpp.
| const Ptr<Objective<Real> >& ROL::Problem< Real >::getObjective | ( | ) | 
Get the objective function.
| const Ptr< Objective< Real > > & ROL::Problem< Real >::getProximableObjective | ( | ) | 
Get proximable objective.
Definition at line 455 of file algorithm/ROL_Problem_Def.hpp.
Referenced by ROL::TypeP::Algorithm< Real >::run().
| const Ptr<Vector<Real> >& ROL::Problem< Real >::getPrimalOptimizationVector | ( | ) | 
Get the primal optimization space vector.
| const Ptr<Vector<Real> >& ROL::Problem< Real >::getDualOptimizationVector | ( | ) | 
Get the dual optimization space vector.
| const Ptr<BoundConstraint<Real> >& ROL::Problem< Real >::getBoundConstraint | ( | ) | 
Get the bound constraint.
| const Ptr<Constraint<Real> >& ROL::Problem< Real >::getConstraint | ( | ) | 
Get the equality constraint.
| const Ptr<Vector<Real> >& ROL::Problem< Real >::getMultiplierVector | ( | ) | 
Get the dual constraint space vector.
| const Ptr<Vector<Real> >& ROL::Problem< Real >::getResidualVector | ( | ) | 
Get the primal constraint space vector.
| const Ptr<PolyhedralProjection<Real> >& ROL::Problem< Real >::getPolyhedralProjection | ( | ) | 
Get the polyhedral projection object. This is a null pointer if no linear constraints and/or bounds are present.
| EProblem ROL::Problem< Real >::getProblemType | ( | ) | 
Get the optimization problem type (U, B, E, G, or P).
| Real ROL::Problem< Real >::checkLinearity | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Check if user-supplied linear constraints are affine.
This function computes the error
\[ \|c(x+\alpha y) - (c(x)+\alpha (c(y)-c(0)))\| \]
for each user-supplied linear constraint and returns the maximum.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
| void ROL::Problem< Real >::checkVectors | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout  | 
        ||
| ) | const | 
Run vector checks for user-supplied vectors.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
| void ROL::Problem< Real >::checkDerivatives | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout,  | 
        ||
| const Ptr< Vector< Real >> & | x0 = nullPtr,  | 
        ||
| Real | scale = Real(1)  | 
        ||
| ) | const | 
Run derivative checks for user-supplied objective function and constraints.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 617 of file algorithm/ROL_Problem_Def.hpp.
| void ROL::Problem< Real >::check | ( | bool | printToStream = false,  | 
        
| std::ostream & | outStream = std::cout,  | 
        ||
| const Ptr< Vector< Real >> & | x0 = nullPtr,  | 
        ||
| Real | scale = Real(1)  | 
        ||
| ) | const | 
Run vector, linearity and derivative checks for user-supplied vectors, objective function and constraints.
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Definition at line 656 of file algorithm/ROL_Problem_Def.hpp.
      
  | 
  virtual | 
Tranform user-supplied constraints to consist of only bounds and equalities. Optimization problem cannot be modified after finalize has been called without calling the edit function.
| [in] | lumpConstraints | combine both linear and nonlinear constraints | 
| [in] | printToStream | determines whether to print to the supplied std::ostream | 
| [in,out] | outStream | user supplied std::ostream | 
Reimplemented in ROL::StochasticProblem< Real >.
| bool ROL::Problem< Real >::isFinalized | ( | ) | const | 
Indicate whether or no finalize has been called.
      
  | 
  virtual | 
Resume editting optimization problem after finalize has been called.
Reimplemented in ROL::StochasticProblem< Real >.
| void ROL::Problem< Real >::finalizeIteration | ( | ) | 
Transform the optimization variables to the native parameterization after an optimization algorithm has finished.
      
  | 
  private | 
Definition at line 29 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 30 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 31 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 32 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 33 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 34 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 35 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 36 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 37 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 38 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 39 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 41 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 43 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 44 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 45 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 46 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 47 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 48 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 49 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 50 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 51 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 53 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 54 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 56 of file function/prox/ROL_Problem.hpp.
      
  | 
  protected | 
Definition at line 60 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 61 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 62 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 63 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 64 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 65 of file function/prox/ROL_Problem.hpp.
Referenced by ROL::Problem< Real >::Problem().
      
  | 
  protected | 
Definition at line 66 of file function/prox/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 34 of file algorithm/ROL_Problem.hpp.
      
  | 
  private | 
Definition at line 43 of file algorithm/ROL_Problem.hpp.
      
  | 
  protected | 
Definition at line 60 of file algorithm/ROL_Problem.hpp.
 1.8.5