Ipopt  3.12.12
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IpRestoMinC_1Nrm.hpp
Go to the documentation of this file.
1 // Copyright (C) 2004, 2010 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpRestoMinC_1Nrm.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Carl Laird, Andreas Waechter IBM 2004-08-13
8 
9 #ifndef __IPRESTOC_1NRM_HPP__
10 #define __IPRESTOC_1NRM_HPP__
11 
12 #include "IpRestoPhase.hpp"
13 #include "IpIpoptAlg.hpp"
14 #include "IpEqMultCalculator.hpp"
15 
16 namespace Ipopt
17 {
18 
23  {
24  public:
34  const SmartPtr<EqMultiplierCalculator>& eq_mult_calculator);
35 
39 
41  virtual bool InitializeImpl(const OptionsList& options,
42  const std::string& prefix);
43 
46  static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
48 
49  protected:
51  virtual bool PerformRestoration();
52 
53  private:
62 
65 
69 
75 
80 
99 
103 
109  void ComputeBoundMultiplierStep(Vector& delta_z,
110  const Vector& curr_z,
111  const Vector& curr_slack,
112  const Vector& trial_slack);
114  };
115 
116 } // namespace Ipopt
117 
118 #endif
bool expect_infeasible_problem_
Indicates whether problem can be expected to be infeasible.
SmartPtr< EqMultiplierCalculator > eq_mult_calculator_
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Methods for IpoptType.
void ComputeBoundMultiplierStep(Vector &delta_z, const Vector &curr_z, const Vector &curr_slack, const Vector &trial_slack)
Method for computing &quot;primal-dual&quot; step in bound multipliers, given step in slacks.
SmartPtr< IpoptAlgorithm > resto_alg_
Index count_restorations_
Counter for the number of time that PerformRestoration is called.
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
Vector Base Class.
Definition: IpVector.hpp:47
SmartPtr< OptionsList > resto_options_
Copy of original options, which is required to initialize the Ipopt algorithm strategy object before ...
Number bound_mult_reset_threshold_
Maximal allowed value of a bound multiplier after restoration phase.
MinC_1NrmRestorationPhase()
Default Constructor.
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
Number constr_viol_tol_
Constraint violation tolerance.
This class stores a list of user set options.
Restoration Phase that minimizes the 1-norm of the constraint violation - using the interior point me...
virtual ~MinC_1NrmRestorationPhase()
Default destructor.
Base class for different restoration phases.
virtual bool PerformRestoration()
Overloaded method from RestorationPhase.
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:19
void operator=(const MinC_1NrmRestorationPhase &)
Overloaded Equals Operator.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Overloaded from AlgorithmStrategy case class.
The main ipopt algorithm class.
Definition: IpIpoptAlg.hpp:45
Number resto_failure_feasibility_threshold_
Primal infeasibility tolerance for declaring failure of restoration phase when the non-regular termin...