Main Page
Namespaces
Classes
Files
File List
File Members
var
build
temp
tmp.niCloInx4p
4.0-0-0
coinor-ipopt
coinor-ipopt-3.10.2
Ipopt
src
Algorithm
Inexact
IpInexactNewtonNormal.hpp
Go to the documentation of this file.
1
// Copyright (C) 2008, 2011 International Business Machines and others.
2
// All Rights Reserved.
3
// This code is published under the Eclipse Public License.
4
//
5
// $Id: IpInexactNewtonNormal.hpp 1886 2011-01-27 23:11:16Z andreasw $
6
//
7
// Authors: Andreas Waechter IBM 2008-09-05
8
9
#ifndef __IPINEXACTNEWTONNORMAL_HPP__
10
#define __IPINEXACTNEWTONNORMAL_HPP__
11
12
#include "
IpAlgStrategy.hpp
"
13
#include "
IpAugSystemSolver.hpp
"
14
#include "
IpInexactCq.hpp
"
15
16
namespace
Ipopt
17
{
21
class
InexactNewtonNormalStep
:
public
AlgorithmStrategyObject
22
{
23
public
:
27
InexactNewtonNormalStep
(
SmartPtr<AugSystemSolver>
aug_solver);
28
30
virtual
~InexactNewtonNormalStep
();
32
34
virtual
bool
InitializeImpl
(
const
OptionsList
& options,
35
const
std::string& prefix);
36
42
virtual
bool
ComputeNewtonNormalStep
(
Vector
& newton_x,
Vector
& newton_s);
43
46
static
void
RegisterOptions
(
SmartPtr<RegisteredOptions>
roptions);
48
49
protected
:
51
InexactData
&
InexData
()
52
{
53
InexactData
& inexact_data =
54
static_cast<
InexactData
&
>
(
IpData
().
AdditionalData
());
55
DBG_ASSERT
(dynamic_cast<InexactData*>(&
IpData
().AdditionalData()));
56
return
inexact_data;
57
}
58
60
InexactCq
&
InexCq
()
61
{
62
InexactCq
& inexact_cq =
63
static_cast<
InexactCq
&
>
(
IpCq
().
AdditionalCq
());
64
DBG_ASSERT
(dynamic_cast<InexactCq*>(&
IpCq
().AdditionalCq()));
65
return
inexact_cq;
66
}
67
68
private
:
78
InexactNewtonNormalStep
();
79
81
InexactNewtonNormalStep
(
const
InexactNewtonNormalStep
&);
82
84
void
operator=
(
const
InexactNewtonNormalStep
&);
86
88
SmartPtr<AugSystemSolver>
aug_solver_
;
89
};
90
91
}
// namespace Ipopt
92
93
#endif
Generated on Mon Mar 17 2014 19:49:12 by
1.8.1.2