Ipopt 3.12.10

- Main Page
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IpInexactDoglegNormal.hpp
Go to the documentation of this file.
1 // Copyright (C) 2008 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpInexactDoglegNormal.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Andreas Waechter IBM 2008-08-31
8
9 #ifndef __IPINEXACTDOGLEGNORMAL_HPP__
10 #define __IPINEXACTDOGLEGNORMAL_HPP__
11
12 #include "IpInexactNormalStepCalc.hpp"
13 #include "IpInexactNewtonNormal.hpp"
14 #include "IpInexactNormalTerminationTester.hpp"
15
16 namespace Ipopt
17 {
20 class InexactDoglegNormalStep : public InexactNormalStepCalculator
21 {
22 public:
26 InexactDoglegNormalStep(SmartPtr<InexactNewtonNormalStep> newton_step,
27 SmartPtr<InexactNormalTerminationTester> normal_tester = NULL);
28
30 virtual ~InexactDoglegNormalStep();
32
34 virtual bool InitializeImpl(const OptionsList& options,
35 const std::string& prefix);
36
41 virtual bool ComputeNormalStep(SmartPtr<Vector>& normal_x,
42 SmartPtr<Vector>& normal_s);
43
46 static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
48
49 private:
59 InexactDoglegNormalStep();
60
62 InexactDoglegNormalStep(const InexactDoglegNormalStep&);
63
65 void operator=(const InexactDoglegNormalStep&);
67
70 SmartPtr<InexactNewtonNormalStep> newton_step_;
71
77 SmartPtr<InexactNormalTerminationTester> normal_tester_;
78
81 Number omega_max_;
83
85 Number curr_omega_;
86
88 bool last_tr_inactive_;
89 };
90
91 } // namespace Ipopt
92
93 #endif
Ipopt::InexactDoglegNormalStep::curr_omega_
Number curr_omega_
Current value of the trust region factor.
Definition: IpInexactDoglegNormal.hpp:85
Ipopt::InexactDoglegNormalStep::ComputeNormalStep
virtual bool ComputeNormalStep(SmartPtr< Vector > &normal_x, SmartPtr< Vector > &normal_s)
Method for computing the normal step.
Ipopt::InexactDoglegNormalStep::operator=
void operator=(const InexactDoglegNormalStep &)
Overloaded Equals Operator.
Ipopt::Number
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
Ipopt::InexactDoglegNormalStep::InitializeImpl
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
overloaded from AlgorithmStrategyObject
Ipopt::InexactNormalStepCalculator
Base class for computing the normal step for the inexact step calculation algorithm.
Definition: IpInexactNormalStepCalc.hpp:20
Ipopt::SmartPtr
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
Ipopt::OptionsList
This class stores a list of user set options.
Definition: IpOptionsList.hpp:32
Ipopt::InexactDoglegNormalStep
Compute the normal step using a dogleg approach.
Definition: IpInexactDoglegNormal.hpp:20
IpInexactNormalTerminationTester.hpp
Ipopt::InexactDoglegNormalStep::normal_tester_
SmartPtr< InexactNormalTerminationTester > normal_tester_
Pointer to object that is used by the newton_step computation object to determine if iterative solver...
Definition: IpInexactDoglegNormal.hpp:77
Ipopt::InexactDoglegNormalStep::last_tr_inactive_
bool last_tr_inactive_
Flag indicating if trust region was active in last iteration.
Definition: IpInexactDoglegNormal.hpp:88
Ipopt::InexactDoglegNormalStep::InexactDoglegNormalStep
InexactDoglegNormalStep()
Default onstructor.
IpInexactNormalStepCalc.hpp
Ipopt::InexactDoglegNormalStep::RegisterOptions
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Methods for IpoptType.
Ipopt::InexactDoglegNormalStep::newton_step_
SmartPtr< InexactNewtonNormalStep > newton_step_
Pointer to object for computing the &quot;Newton&quot; step in the dogleg method.
Definition: IpInexactDoglegNormal.hpp:70
Ipopt::InexactDoglegNormalStep::~InexactDoglegNormalStep
virtual ~InexactDoglegNormalStep()
Default destructor.
Ipopt::InexactDoglegNormalStep::omega_max_
Number omega_max_
Definition: IpInexactDoglegNormal.hpp:81
IpInexactNewtonNormal.hpp