Ipopt Documentation  
No Matches
Ipopt::InexactSearchDirCalculator Class Reference

Implementation of the search direction calculator that computes the search direction using iterative linear solvers. More...

#include <IpInexactSearchDirCalc.hpp>

+ Inheritance diagram for Ipopt::InexactSearchDirCalculator:

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 ComputeSearchDirection ()
 Method for computing the search direction.
 InexactSearchDirCalculator (SmartPtr< InexactNormalStepCalculator > normal_step_calculator, SmartPtr< InexactPDSolver > inexact_pd_solver)
virtual ~InexactSearchDirCalculator ()
- Public Member Functions inherited from Ipopt::SearchDirectionCalculator
 SearchDirectionCalculator ()
virtual ~SearchDirectionCalculator ()
- 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 ()
- 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 Types

enum  DecompositionTypeEnum { ALWAYS = 0 , ADAPTIVE , SWITCH_ONCE }
 enumeration for decomposition options More...

Private Member Functions

InexactDataInexData ()
 Method to easily access Inexact data.
InexactCqInexCq ()
 Method to easily access Inexact calculated quantities.
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.

 InexactSearchDirCalculator ()
 Default Constructor.
 InexactSearchDirCalculator (const InexactSearchDirCalculator &)
 Copy Constructor.
void operator= (const InexactSearchDirCalculator &)
 Overloaded Assignment Operator.

Private Attributes

DecompositionTypeEnum decomposition_type_
 Type of decomposition.
Algorithmic options
Number local_inf_Ac_tol_
 termination tolerance for local infeasibility
Strategy objects
SmartPtr< InexactNormalStepCalculatornormal_step_calculator_
SmartPtr< InexactPDSolverinexact_pd_solver_

Additional Inherited Members

- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
IpoptNLPIpNLP () const
IpoptDataIpData () const
IpoptCalculatedQuantitiesIpCq () const
bool HaveIpData () const

Detailed Description

Implementation of the search direction calculator that computes the search direction using iterative linear solvers.

Those steps do not necessarily satisfy the linearized KKT conditions with high accuracy.

Definition at line 23 of file IpInexactSearchDirCalc.hpp.

Member Enumeration Documentation

◆ DecompositionTypeEnum

enumeration for decomposition options


Definition at line 110 of file IpInexactSearchDirCalc.hpp.

Constructor & Destructor Documentation

◆ InexactSearchDirCalculator() [1/3]

Ipopt::InexactSearchDirCalculator::InexactSearchDirCalculator ( SmartPtr< InexactNormalStepCalculator normal_step_calculator,
SmartPtr< InexactPDSolver inexact_pd_solver 


◆ ~InexactSearchDirCalculator()

virtual Ipopt::InexactSearchDirCalculator::~InexactSearchDirCalculator ( )


◆ InexactSearchDirCalculator() [2/3]

Ipopt::InexactSearchDirCalculator::InexactSearchDirCalculator ( )

Default Constructor.

◆ InexactSearchDirCalculator() [3/3]

Ipopt::InexactSearchDirCalculator::InexactSearchDirCalculator ( const InexactSearchDirCalculator )

Copy Constructor.

Member Function Documentation

◆ InitializeImpl()

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

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

Implements Ipopt::SearchDirectionCalculator.

◆ ComputeSearchDirection()

virtual bool Ipopt::InexactSearchDirCalculator::ComputeSearchDirection ( )

Method for computing the search direction.

In this version, we compute a normal and a tangential component, which are stored in the InexactData object. The overall step is still stored in the IpoptData object.

Implements Ipopt::SearchDirectionCalculator.

◆ RegisterOptions()

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

◆ operator=()

void Ipopt::InexactSearchDirCalculator::operator= ( const InexactSearchDirCalculator )

Overloaded Assignment Operator.

◆ InexData()

InexactData & Ipopt::InexactSearchDirCalculator::InexData ( )

Method to easily access Inexact data.

Definition at line 82 of file IpInexactSearchDirCalc.hpp.

◆ InexCq()

InexactCq & Ipopt::InexactSearchDirCalculator::InexCq ( )

Method to easily access Inexact calculated quantities.

Definition at line 90 of file IpInexactSearchDirCalc.hpp.

Member Data Documentation

◆ local_inf_Ac_tol_

Number Ipopt::InexactSearchDirCalculator::local_inf_Ac_tol_

termination tolerance for local infeasibility

Definition at line 100 of file IpInexactSearchDirCalc.hpp.

◆ normal_step_calculator_

SmartPtr<InexactNormalStepCalculator> Ipopt::InexactSearchDirCalculator::normal_step_calculator_

Definition at line 105 of file IpInexactSearchDirCalc.hpp.

◆ inexact_pd_solver_

SmartPtr<InexactPDSolver> Ipopt::InexactSearchDirCalculator::inexact_pd_solver_

Definition at line 106 of file IpInexactSearchDirCalc.hpp.

◆ decomposition_type_

DecompositionTypeEnum Ipopt::InexactSearchDirCalculator::decomposition_type_

Type of decomposition.

Definition at line 118 of file IpInexactSearchDirCalc.hpp.

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