Ipopt Documentation  
 
Loading...
Searching...
No Matches
Ipopt::InexactNormalTerminationTester Class Reference

This class implements the termination tests for the primal-dual system. More...

#include <IpInexactNormalTerminationTester.hpp>

+ Inheritance diagram for Ipopt::InexactNormalTerminationTester:

Public Member Functions

virtual bool InitializeImpl (const OptionsList &options, const std::string &prefix)
 Implementation of the initialization method that has to be overloaded by for each derived class.
 
virtual bool InitializeSolve ()
 Method for initializing for the next iterative solve.
 
virtual ETerminationTest TestTermination (Index ndim, const Number *sol, const Number *resid, Index iter, Number norm2_rhs)
 This method checks if the current solution of the iterative linear solver is good enough (by returning the corresponding satisfied termination test), or if the Hessian should be modified.
 
virtual void Clear ()
 This method can be called after the Solve is over and we can delete anything that has been allocated to free memory.
 
virtual Index GetSolverIterations () const
 Return the number of iterative solver iteration from the most recent solve.
 
void Set_c_Avc_norm_cauchy (Number c_Avc_norm_cauchy)
 Method for setting the normal problem objective function value at the Cauchy step.
 
Constructor/Destructor
 InexactNormalTerminationTester ()
 Default Constructor.
 
virtual ~InexactNormalTerminationTester ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::IterativeSolverTerminationTester
const JournalistGetJnlst () const
 An easy way to get the journalist if accessed from the outside.
 
 IterativeSolverTerminationTester ()
 Default constructor.
 
virtual ~IterativeSolverTerminationTester ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::AlgorithmStrategyObject
bool Initialize (const Journalist &jnlst, IpoptNLP &ip_nlp, IpoptData &ip_data, IpoptCalculatedQuantities &ip_cq, const OptionsList &options, const std::string &prefix)
 This method is called every time the algorithm starts again - it is used to reset any internal state.
 
bool ReducedInitialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
 Reduced version of the Initialize method, which does not require special Ipopt information.
 
 AlgorithmStrategyObject ()
 Default Constructor.
 
virtual ~AlgorithmStrategyObject ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::ReferencedObject
 ReferencedObject ()
 
virtual ~ReferencedObject ()
 
Index ReferenceCount () const
 
void AddRef (const Referencer *referencer) const
 
void ReleaseRef (const Referencer *referencer) const
 

Static Public Member Functions

static void RegisterOptions (SmartPtr< RegisteredOptions > roptions)
 

Private Member Functions

Default Compiler Generated Methods

(Hidden to avoid implicit creation/calling).

These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.

InexactNormalTerminationTesteroperator= (const InexactNormalTerminationTester &)
 Overloaded Assignment Operator.
 

Private Attributes

Number c_Avc_norm_cauchy_
 Value of normal problem objective function achived by the Cauchy step.
 
Index last_iter_
 Last iterative solver iteration counter.
 
Algorithmic options
Number inexact_normal_tol_
 Desired reduction of residual.
 
Index inexact_normal_max_iter_
 Maximal number of iterative solve iterations.
 
bool requires_scaling_
 Is set to true if the linear system is scaled via slacks.
 

Additional Inherited Members

- Public Types inherited from Ipopt::IterativeSolverTerminationTester
enum  ETerminationTest {
  CONTINUE , TEST_1_SATISFIED , TEST_2_SATISFIED , TEST_3_SATISFIED ,
  MODIFY_HESSIAN , OTHER_SATISFIED
}
 Enum to report result of termination test. More...
 
- Protected Member Functions inherited from Ipopt::IterativeSolverTerminationTester
void GetVectors (Index ndim, const Number *array, SmartPtr< const Vector > &comp_x, SmartPtr< const Vector > &comp_s, SmartPtr< const Vector > &comp_c, SmartPtr< const Vector > &comp_d)
 Method for copying a long augmented system array into Vectors in Ipopt notation.
 
InexactDataInexData ()
 Method to easily access Inexact data.
 
InexactCqInexCq ()
 Method to easily access Inexact calculated quantities.
 
- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
 
IpoptNLPIpNLP () const
 
IpoptDataIpData () const
 
IpoptCalculatedQuantitiesIpCq () const
 
bool HaveIpData () const
 

Detailed Description

This class implements the termination tests for the primal-dual system.

Definition at line 18 of file IpInexactNormalTerminationTester.hpp.

Constructor & Destructor Documentation

◆ InexactNormalTerminationTester()

Ipopt::InexactNormalTerminationTester::InexactNormalTerminationTester ( )

Default Constructor.

◆ ~InexactNormalTerminationTester()

virtual Ipopt::InexactNormalTerminationTester::~InexactNormalTerminationTester ( )
virtual

Destructor.

Member Function Documentation

◆ InitializeImpl()

virtual bool Ipopt::InexactNormalTerminationTester::InitializeImpl ( const OptionsList options,
const std::string &  prefix 
)
virtual

Implementation of the initialization method that has to be overloaded by for each derived class.

Implements Ipopt::IterativeSolverTerminationTester.

◆ RegisterOptions()

static void Ipopt::InexactNormalTerminationTester::RegisterOptions ( SmartPtr< RegisteredOptions roptions)
static

◆ InitializeSolve()

virtual bool Ipopt::InexactNormalTerminationTester::InitializeSolve ( )
virtual

Method for initializing for the next iterative solve.

This must be call before the test methods are called.

Implements Ipopt::IterativeSolverTerminationTester.

◆ TestTermination()

virtual ETerminationTest Ipopt::InexactNormalTerminationTester::TestTermination ( Index  ndim,
const Number sol,
const Number resid,
Index  iter,
Number  norm2_rhs 
)
virtual

This method checks if the current solution of the iterative linear solver is good enough (by returning the corresponding satisfied termination test), or if the Hessian should be modified.

The input is the dimension of the augmented system, the current solution vector of the augmented system, the current residual vector.

Implements Ipopt::IterativeSolverTerminationTester.

◆ Clear()

virtual void Ipopt::InexactNormalTerminationTester::Clear ( )
virtual

This method can be called after the Solve is over and we can delete anything that has been allocated to free memory.

Implements Ipopt::IterativeSolverTerminationTester.

◆ GetSolverIterations()

virtual Index Ipopt::InexactNormalTerminationTester::GetSolverIterations ( ) const
inlinevirtual

Return the number of iterative solver iteration from the most recent solve.

Implements Ipopt::IterativeSolverTerminationTester.

Definition at line 70 of file IpInexactNormalTerminationTester.hpp.

◆ Set_c_Avc_norm_cauchy()

void Ipopt::InexactNormalTerminationTester::Set_c_Avc_norm_cauchy ( Number  c_Avc_norm_cauchy)
inline

Method for setting the normal problem objective function value at the Cauchy step.

This must be called by the Dogleg object.

Definition at line 80 of file IpInexactNormalTerminationTester.hpp.

◆ operator=()

InexactNormalTerminationTester & Ipopt::InexactNormalTerminationTester::operator= ( const InexactNormalTerminationTester )
private

Overloaded Assignment Operator.

Member Data Documentation

◆ inexact_normal_tol_

Number Ipopt::InexactNormalTerminationTester::inexact_normal_tol_
private

Desired reduction of residual.

Definition at line 107 of file IpInexactNormalTerminationTester.hpp.

◆ inexact_normal_max_iter_

Index Ipopt::InexactNormalTerminationTester::inexact_normal_max_iter_
private

Maximal number of iterative solve iterations.

Definition at line 109 of file IpInexactNormalTerminationTester.hpp.

◆ requires_scaling_

bool Ipopt::InexactNormalTerminationTester::requires_scaling_
private

Is set to true if the linear system is scaled via slacks.

Definition at line 111 of file IpInexactNormalTerminationTester.hpp.

◆ c_Avc_norm_cauchy_

Number Ipopt::InexactNormalTerminationTester::c_Avc_norm_cauchy_
private

Value of normal problem objective function achived by the Cauchy step.

This must be set by the Dogleg step object.

Definition at line 119 of file IpInexactNormalTerminationTester.hpp.

◆ last_iter_

Index Ipopt::InexactNormalTerminationTester::last_iter_
private

Last iterative solver iteration counter.

Definition at line 122 of file IpInexactNormalTerminationTester.hpp.


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