Ipopt
3.11.8
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Algorithm
Inexact
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
Generated by
1.8.3.1