44#ifndef ROL_TYPEU_ALGORITHM_H
45#define ROL_TYPEU_ALGORITHM_H
50#include "ROL_Problem.hpp"
59template<
typename Real>
82template<
typename Real>
85 const Ptr<CombinedStatusTest<Real>>
status_;
86 const Ptr<AlgorithmState<Real>>
state_;
99 bool combineStatus =
false);
105 std::ostream &outStream = std::cout );
112 std::ostream &outStream = std::cout );
123 std::ostream &outStream = std::cout );
136 std::ostream &outStream = std::cout );
145 std::ostream &outStream = std::cout) = 0;
149 virtual void writeHeader( std::ostream& os )
const;
153 virtual void writeName( std::ostream& os )
const;
157 virtual void writeOutput( std::ostream& os,
bool write_header =
false )
const;
162 Ptr<const AlgorithmState<Real>>
getState()
const;
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 unconstrained optimization algorithms.
Algorithm()
Constructor, given a step and a status test.
const Ptr< CombinedStatusTest< Real > > status_
Ptr< const AlgorithmState< Real > > getState() const
void initialize(const Vector< Real > &x, const Vector< Real > &g)
virtual void writeOutput(std::ostream &os, bool write_header=false) const
Print iterate status.
virtual void writeExitStatus(std::ostream &os) const
virtual void writeHeader(std::ostream &os) const
Print iterate header.
virtual void writeName(std::ostream &os) const
Print step name.
virtual void run(Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj, std::ostream &outStream=std::cout)=0
Run algorithm on unconstrained problems (Type-U). This general interface supports the use of dual opt...
void setStatusTest(const Ptr< StatusTest< Real > > &status, bool combineStatus=false)
const Ptr< AlgorithmState< Real > > state_
virtual void run(Problem< Real > &problem, std::ostream &outStream=std::cout)
Run algorithm on unconstrained problems (Type-U). This is the primary Type-U interface.
Defines the linear algebra or vector space interface.
State for algorithm class. Will be used for restarts.
Ptr< Vector< Real > > stepVec
Ptr< Vector< Real > > gradientVec