Ipopt Documentation  
IpRestoIterateInitializer.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 // Authors: Carl Laird, Andreas Waechter IBM 2004-09-24
6 
7 #ifndef __IPRESTOITERATEINITIALIZER_HPP__
8 #define __IPRESTOITERATEINITIALIZER_HPP__
9 
10 #include "IpIterateInitializer.hpp"
11 #include "IpEqMultCalculator.hpp"
12 
13 namespace Ipopt
14 {
22 {
23 public:
25 
33  const SmartPtr<EqMultiplierCalculator>& eq_mult_calculator
34  );
35 
38  { }
40 
41  virtual bool InitializeImpl(
42  const OptionsList& options,
43  const std::string& prefix
44  );
45 
49  virtual bool SetInitialIterates();
50 
51  static void RegisterOptions(
53  );
54 
55 private:
65 
68 
72  );
73 
75  void operator=(
77  );
79 
81 
88 
93 
95 
97  void solve_quadratic(
98  const Vector& a,
99  const Vector& b,
100  Vector& v
101  );
103 };
104 
105 } // namespace Ipopt
106 
107 #endif
Number constr_mult_init_max_
If max-norm of the initial equality constraint multiplier estimate is larger than this...
void operator=(const RestoIterateInitializer &)
Default Assignment Operator.
Vector Base Class.
Definition: IpVector.hpp:47
Base class for all methods for initializing the iterates.
This file contains a base class for all exceptions and a set of macros to help with exceptions...
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:164
This class stores a list of user set options.
RestoIterateInitializer()
Default Constructor.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Implementation of the initialization method that has to be overloaded by for each derived class...
ipnumber Number
Type of all numbers.
Definition: IpTypes.hpp:17
Class implementing the default initialization procedure (based on user options) for the iterates...
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
SmartPtr< EqMultiplierCalculator > resto_eq_mult_calculator_
object to be used for the initialization of the equality constraint multipliers.
void solve_quadratic(const Vector &a, const Vector &b, Vector &v)
Method for solving the quadratic vector equation v^2 + 2a*v - b = 0.
virtual bool SetInitialIterates()
Compute the initial iterates and set the into the curr field of the ip_data object.