IpInexactPDTerminationTester.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: IpInexactPDTerminationTester.hpp 2073 2012-02-12 15:54:34Z stefan $
6 //
7 // Authors: Andreas Waechter IBM 2008-09-19
8 
9 #ifndef __IPINEXACTPDTERMINATIONTESTER_HPP__
10 #define __IPINEXACTPDTERMINATIONTESTER_HPP__
11 
13 
14 namespace Ipopt
15 {
16 
21  {
22  public:
28 
32 
33  /* overloaded from AlgorithmStrategyObject */
34  virtual bool InitializeImpl(const OptionsList& options,
35  const std::string& prefix);
36 
39  static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
41 
44  virtual bool InitializeSolve();
45 
52  virtual ETerminationTest TestTermination(Index ndim, const Number* sol,
53  const Number* resid, Index iter,
54  Number norm2_rhs);
55 
58  virtual void Clear();
59 
62  virtual Index GetSolverIterations() const
63  {
64  return last_iter_;
65  }
66 
67  private:
79 
109 
129  SmartPtr<const Vector> curr_Wv_s_; // in original space
130  bool try_tt2_;
132 
139 
142  };
143 
144 } // namespace Ipopt
145 
146 #endif