Ipopt  3.12.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
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)
 overloaded from AlgorithmStrategyObject More...
 
virtual bool ComputeSearchDirection ()
 Method for computing the search direction. More...
 
Constructors/Destructors
 InexactSearchDirCalculator (SmartPtr< InexactNormalStepCalculator > normal_step_calculator, SmartPtr< InexactPDSolver > inexact_pd_solver)
 Constructor. More...
 
virtual ~InexactSearchDirCalculator ()
 Default destructor. More...
 
- Public Member Functions inherited from Ipopt::SearchDirectionCalculator
 SearchDirectionCalculator ()
 Constructor. More...
 
virtual ~SearchDirectionCalculator ()
 Default destructor. More...
 
- 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. More...
 
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. More...
 
 AlgorithmStrategyObject ()
 Default Constructor. More...
 
virtual ~AlgorithmStrategyObject ()
 Default Destructor. More...
 
- 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)
 Methods for IpoptType. More...
 

Private Types

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

Private Member Functions

InexactDataInexData ()
 Method to easily access Inexact data. More...
 
InexactCqInexCq ()
 Method to easily access Inexact calculated quantities. More...
 
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. More...
 
 InexactSearchDirCalculator (const InexactSearchDirCalculator &)
 Copy Constructor. More...
 
void operator= (const InexactSearchDirCalculator &)
 Overloaded Equals Operator. More...
 

Private Attributes

DecompositionTypeEnum decomposition_type_
 Type of decomposition. More...
 
Algorithmic options
Number local_inf_Ac_tol_
 termination tolerance for local infeasibility More...
 
Strategy objects
SmartPtr
< InexactNormalStepCalculator
normal_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 24 of file IpInexactSearchDirCalc.hpp.

Member Enumeration Documentation

enumeration for decomposition options

Enumerator
ALWAYS 
ADAPTIVE 
SWITCH_ONCE 

Definition at line 102 of file IpInexactSearchDirCalc.hpp.

Constructor & Destructor Documentation

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

Constructor.

virtual Ipopt::InexactSearchDirCalculator::~InexactSearchDirCalculator ( )
virtual

Default destructor.

Ipopt::InexactSearchDirCalculator::InexactSearchDirCalculator ( )
private

Default Constructor.

Ipopt::InexactSearchDirCalculator::InexactSearchDirCalculator ( const InexactSearchDirCalculator )
private

Copy Constructor.

Member Function Documentation

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

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.

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

Methods for IpoptType.

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

Overloaded Equals Operator.

InexactData& Ipopt::InexactSearchDirCalculator::InexData ( )
inlineprivate

Method to easily access Inexact data.

Definition at line 72 of file IpInexactSearchDirCalc.hpp.

InexactCq& Ipopt::InexactSearchDirCalculator::InexCq ( )
inlineprivate

Method to easily access Inexact calculated quantities.

Definition at line 81 of file IpInexactSearchDirCalc.hpp.

Member Data Documentation

Number Ipopt::InexactSearchDirCalculator::local_inf_Ac_tol_
private

termination tolerance for local infeasibility

Definition at line 92 of file IpInexactSearchDirCalc.hpp.

SmartPtr<InexactNormalStepCalculator> Ipopt::InexactSearchDirCalculator::normal_step_calculator_
private

Definition at line 97 of file IpInexactSearchDirCalc.hpp.

SmartPtr<InexactPDSolver> Ipopt::InexactSearchDirCalculator::inexact_pd_solver_
private

Definition at line 98 of file IpInexactSearchDirCalc.hpp.

DecompositionTypeEnum Ipopt::InexactSearchDirCalculator::decomposition_type_
private

Type of decomposition.

Definition at line 109 of file IpInexactSearchDirCalc.hpp.


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