Ipopt  3.12.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IpLineSearch.hpp
Go to the documentation of this file.
1 // Copyright (C) 2004, 2006 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpLineSearch.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Carl Laird, Andreas Waechter IBM 2004-08-13
8 
9 #ifndef __IPLINESEARCH_HPP__
10 #define __IPLINESEARCH_HPP__
11 
12 #include "IpAlgStrategy.hpp"
14 
15 namespace Ipopt
16 {
17 
21  {
22  public:
27  {}
28 
30  virtual ~LineSearch()
31  {}
33 
37  virtual void FindAcceptableTrialPoint() = 0;
38 
45  virtual void Reset() = 0;
46 
58  virtual void SetRigorousLineSearch(bool rigorous) = 0;
59 
64  virtual bool CheckSkippedLineSearch() = 0;
65 
74  virtual bool ActivateFallbackMechanism() = 0;
75 
76  private:
86  LineSearch(const LineSearch&);
87 
89  void operator=(const LineSearch&);
91 
92  };
93 
94 } // namespace Ipopt
95 
96 #endif
void operator=(const LineSearch &)
Overloaded Equals Operator.
This is the base class for all algorithm strategy objects.
virtual void FindAcceptableTrialPoint()=0
Perform the line search.
virtual void Reset()=0
Reset the line search.
virtual ~LineSearch()
Default destructor.
LineSearch()
Default Constructor.
virtual bool CheckSkippedLineSearch()=0
Check if the line search procedure didn't accept a new iterate during the last call of FindAcceptable...
Base class for line search objects.
virtual bool ActivateFallbackMechanism()=0
This method should be called if the optimization process requires the line search object to switch to...
virtual void SetRigorousLineSearch(bool rigorous)=0
Set flag indicating whether a very rigorous line search should be performed.