10#ifndef ROL_TYPEG_ALGORITHM_H
11#define ROL_TYPEG_ALGORITHM_H
18#include "ROL_Problem.hpp"
27template<
typename Real>
55template<
typename Real>
58 const Ptr<CombinedStatusTest<Real>>
status_;
59 const Ptr<AlgorithmState<Real>>
state_;
60 Ptr<PolyhedralProjection<Real>>
proj_;
76 bool combineStatus =
false);
82 std::ostream &outStream = std::cout );
92 std::ostream &outStream = std::cout );
102 std::ostream &outStream = std::cout );
113 std::ostream &outStream = std::cout );
125 std::ostream &outStream = std::cout );
138 std::ostream &outStream = std::cout );
151 std::ostream &outStream = std::cout ) = 0;
163 std::ostream &outStream = std::cout );
176 std::ostream &outStream = std::cout );
191 std::ostream &outStream = std::cout );
207 std::ostream &outStream = std::cout );
222 std::ostream &outStream = std::cout );
234 std::ostream &outStream = std::cout );
247 std::ostream &outStream = std::cout );
261 std::ostream &outStream = std::cout );
276 std::ostream &outStream = std::cout );
294 std::ostream &outStream = std::cout );
309 std::ostream &outStream = std::cout );
325 std::ostream &outStream = std::cout );
343 std::ostream &outStream = std::cout );
362 std::ostream &outStream = std::cout );
366 virtual void writeHeader( std::ostream& os )
const;
370 virtual void writeName( std::ostream& os )
const;
374 virtual void writeOutput( std::ostream& os,
const bool write_header =
false )
const;
379 Ptr<const AlgorithmState<Real>>
getState()
const;
Provides the interface to apply upper and lower bound constraints.
Defines the general constraint operator interface.
Provides the interface to evaluate objective functions.
Provides an interface to check status of optimization algorithms.
Provides an interface to run general constrained optimization algorithms.
virtual void run(Problem< Real > &problem, std::ostream &outStream=std::cout)
Run algorithm on general constrained problems (Type-G). This is the primary Type-G interface.
virtual void writeOutput(std::ostream &os, const bool write_header=false) const
Print iterate status.
virtual void run(Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj, BoundConstraint< Real > &bnd, Constraint< Real > &econ, Vector< Real > &emul, const Vector< Real > &eres, std::ostream &outStream=std::cout)=0
Run algorithm on general constrained problems (Type-G). This is the primary Type-G interface.
virtual void writeName(std::ostream &os) const
Print step name.
Algorithm()
Constructor, given a step and a status test.
virtual void writeHeader(std::ostream &os) const
Print iterate header.
void initialize(const Vector< Real > &x, const Vector< Real > &g, const Vector< Real > &mul, const Vector< Real > &c)
Ptr< const AlgorithmState< Real > > getState() const
virtual void writeExitStatus(std::ostream &os) const
const Ptr< CombinedStatusTest< Real > > status_
Ptr< PolyhedralProjection< Real > > proj_
void setStatusTest(const Ptr< StatusTest< Real > > &status, bool combineStatus=false)
const Ptr< AlgorithmState< Real > > state_
Defines the linear algebra or vector space interface.
State for algorithm class. Will be used for restarts.
Ptr< Vector< Real > > constraintVec
Ptr< Vector< Real > > stepVec
Ptr< Vector< Real > > gradientVec