Main Page
Namespaces
Classes
Files
File List
File Members
tmp
buildd
coinor-ipopt-3.10.2
Ipopt
src
Algorithm
Inexact
IpInexactData.hpp
Go to the documentation of this file.
1
// Copyright (C) 2008, 2009 International Business Machines and others.
2
// All Rights Reserved.
3
// This code is published under the Eclipse Public License.
4
//
5
// $Id: IpInexactData.hpp 1861 2010-12-21 21:34:47Z andreasw $
6
//
7
// Authors: Andreas Waechter IBM 2008-08-31
8
9
#ifndef __IPINEXACTDATA_HPP__
10
#define __IPINEXACTDATA_HPP__
11
12
#include "
IpIpoptData.hpp
"
13
14
namespace
Ipopt
15
{
16
19
class
InexactData
:
public
IpoptAdditionalData
20
{
21
public
:
25
InexactData
();
26
28
~InexactData
();
30
36
bool
Initialize
(
const
Journalist
& jnlst,
37
const
OptionsList
& options,
38
const
std::string& prefix);
39
41
bool
InitializeDataStructures
();
42
46
void
AcceptTrialPoint
();
48
51
void
set_normal_x
(
SmartPtr<Vector>
&
normal_x
)
52
{
53
normal_x_
=
ConstPtr
(normal_x);
54
normal_x = NULL;
55
}
56
void
set_normal_s
(
SmartPtr<Vector>
&
normal_s
)
57
{
58
normal_s_
=
ConstPtr
(normal_s);
59
normal_s = NULL;
60
}
61
SmartPtr<const Vector>
normal_x
()
62
{
63
return
normal_x_
;
64
}
65
SmartPtr<const Vector>
normal_s
()
66
{
67
return
normal_s_
;
68
}
70
73
void
set_tangential_x
(
SmartPtr<const Vector>
&
tangential_x
)
74
{
75
tangential_x_
=
tangential_x
;
76
tangential_x = NULL;
77
}
78
void
set_tangential_s
(
SmartPtr<const Vector>
&
tangential_s
)
79
{
80
tangential_s_
=
tangential_s
;
81
tangential_s = NULL;
82
}
83
SmartPtr<const Vector>
tangential_x
()
84
{
85
return
tangential_x_
;
86
}
87
SmartPtr<const Vector>
tangential_s
()
88
{
89
return
tangential_s_
;
90
}
92
97
void
set_full_step_accepted
(
bool
full_step_accepted
)
98
{
99
full_step_accepted_
=
full_step_accepted
;
100
}
101
bool
full_step_accepted
()
102
{
103
return
full_step_accepted_
;
104
}
106
109
void
set_curr_nu
(
Number
nu)
110
{
111
curr_nu_
= nu;
112
}
113
Number
curr_nu
()
114
{
115
return
curr_nu_
;
116
}
118
121
void
set_compute_normal
(
bool
compute_normal
)
122
{
123
compute_normal_
=
compute_normal
;
124
}
125
bool
compute_normal
()
126
{
127
return
compute_normal_
;
128
}
130
133
void
set_next_compute_normal
(
bool
next_compute_normal
)
134
{
135
next_compute_normal_
=
next_compute_normal
;
136
}
137
bool
next_compute_normal
()
138
{
139
return
next_compute_normal_
;
140
}
142
143
private
:
153
InexactData
(
const
InexactData
&);
154
156
void
operator=
(
const
InexactData
&);
158
161
SmartPtr<const Vector>
normal_x_
;
162
SmartPtr<const Vector>
normal_s_
;
164
167
SmartPtr<const Vector>
tangential_x_
;
168
SmartPtr<const Vector>
tangential_s_
;
170
172
bool
full_step_accepted_
;
173
175
Number
curr_nu_
;
176
178
bool
compute_normal_
;
179
181
bool
next_compute_normal_
;
182
};
183
184
}
// namespace Ipopt
185
186
#endif
Generated on Tue Jun 26 2012 17:01:43 by
1.8.1.1