Ipopt  3.12.12
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
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 
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 
42 
46  void AcceptTrialPoint();
48 
52  {
53  normal_x_ = ConstPtr(normal_x);
54  normal_x = NULL;
55  }
57  {
58  normal_s_ = ConstPtr(normal_s);
59  normal_s = NULL;
60  }
62  {
63  return normal_x_;
64  }
66  {
67  return normal_s_;
68  }
70 
74  {
76  tangential_x = NULL;
77  }
79  {
81  tangential_s = NULL;
82  }
84  {
85  return tangential_x_;
86  }
88  {
89  return tangential_s_;
90  }
92 
98  {
100  }
102  {
103  return full_step_accepted_;
104  }
106 
110  {
111  curr_nu_ = nu;
112  }
114  {
115  return curr_nu_;
116  }
118 
122  {
124  }
126  {
127  return compute_normal_;
128  }
130 
134  {
136  }
138  {
139  return next_compute_normal_;
140  }
142 
143  private:
153  InexactData(const InexactData&);
154 
156  void operator=(const InexactData&);
158 
164 
170 
173 
176 
179 
182  };
183 
184 } // namespace Ipopt
185 
186 #endif
SmartPtr< const Vector > tangential_s_
bool next_compute_normal_
next iteration normal step computation flag
void set_curr_nu(Number nu)
SmartPtr< const Vector > tangential_x()
SmartPtr< const Vector > normal_s()
SmartPtr< const Vector > tangential_s()
bool InitializeDataStructures()
Initialize Data Structures at the beginning.
Number curr_nu_
current value of penalty parameter
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
void set_normal_s(SmartPtr< Vector > &normal_s)
void operator=(const InexactData &)
Overloaded Equals Operator.
bool full_step_accepted_
Flag indicating if most recent step has been fully accepted.
SmartPtr< const Vector > normal_x()
void set_full_step_accepted(bool full_step_accepted)
void set_tangential_s(SmartPtr< const Vector > &tangential_s)
void set_next_compute_normal(bool next_compute_normal)
SmartPtr< const Vector > tangential_x_
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
This class stores a list of user set options.
SmartPtr< const Vector > normal_x_
SmartPtr< const Vector > normal_s_
void set_compute_normal(bool compute_normal)
InexactData()
Constructor.
void set_tangential_x(SmartPtr< const Vector > &tangential_x)
bool Initialize(const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
This method must be called to initialize the global algorithmic parameters.
Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm...
SmartPtr< const U > ConstPtr(const SmartPtr< U > &smart_ptr)
Definition: IpSmartPtr.hpp:572
Class responsible for all message output.
bool compute_normal_
current normal step computation flag
~InexactData()
Default destructor.
void set_normal_x(SmartPtr< Vector > &normal_x)
Base class for additional data that is special to a particular type of algorithm, such as the CG pena...
Definition: IpIpoptData.hpp:28
void AcceptTrialPoint()
Do whatever is necessary to accept a trial point as current iterate.