Ipopt 3.11.9
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"
15
16namespace 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
48
49 protected:
51 virtual bool PerformRestoration();
52
53 private:
62
65
69
75
80
99
103
110 const Vector& curr_z,
111 const Vector& curr_slack,
112 const Vector& trial_slack);
114 };
115
116} // namespace Ipopt
117
118#endif
The main ipopt algorithm class.
Definition: IpIpoptAlg.hpp:46
Restoration Phase that minimizes the 1-norm of the constraint violation - using the interior point me...
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Overloaded from AlgorithmStrategy case class.
Number resto_failure_feasibility_threshold_
Primal infeasibility tolerance for declaring failure of restoration phase when the non-regular termin...
MinC_1NrmRestorationPhase(const MinC_1NrmRestorationPhase &)
Copy Constructor.
void ComputeBoundMultiplierStep(Vector &delta_z, const Vector &curr_z, const Vector &curr_slack, const Vector &trial_slack)
Method for computing "primal-dual" step in bound multipliers, given step in slacks.
MinC_1NrmRestorationPhase(IpoptAlgorithm &resto_alg, const SmartPtr< EqMultiplierCalculator > &eq_mult_calculator)
Constructor, taking strategy objects.
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.
bool expect_infeasible_problem_
Indicates whether problem can be expected to be infeasible.
virtual bool PerformRestoration()
Overloaded method from RestorationPhase.
MinC_1NrmRestorationPhase()
Default Constructor.
Number constr_viol_tol_
Constraint violation tolerance.
SmartPtr< EqMultiplierCalculator > eq_mult_calculator_
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Methods for IpoptType.
virtual ~MinC_1NrmRestorationPhase()
Default destructor.
SmartPtr< IpoptAlgorithm > resto_alg_
Index count_restorations_
Counter for the number of time that PerformRestoration is called.
void operator=(const MinC_1NrmRestorationPhase &)
Overloaded Equals Operator.
This class stores a list of user set options.
Base class for different restoration phases.
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:183
Vector Base Class.
Definition: IpVector.hpp:48
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:19
double Number
Type of all numbers.
Definition: IpTypes.hpp:17