Ipopt  3.11.9
SensReducedHessianCalculator.hpp
Go to the documentation of this file.
1 // Copyright 2009, 2011 Hans Pirnay
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Date : 2009-08-01
6 
7 #ifndef __ASREDUCEDHESSIANCALCULATOR_HPP__
8 #define __ASREDUCEDHESSIANCALCULATOR_HPP__
9 
10 #include "IpAlgStrategy.hpp"
11 #include "SensSchurData.hpp"
12 #include "SensPCalculator.hpp"
13 
14 namespace Ipopt
15 {
16 
18  {
21  public:
23  SmartPtr<PCalculator> pcalc);
24 
26 
27  virtual bool InitializeImpl(const OptionsList& options,
28  const std::string& prefix);
29 
30  /* This function computes the unscaled reduced hessian matrix */
31  virtual bool ComputeReducedHessian();
32 
33  private:
34 
37 
40 
43  };
44 
45 }
46 
47 #endif
This is the base class for all algorithm strategy objects.
This class stores a list of user set options.
SmartPtr< PCalculator > pcalc_
Pointer to the P Calculator object that returns the reduced hessian matrix.
ReducedHessianCalculator(SmartPtr< SchurData > hess_data, SmartPtr< PCalculator > pcalc)
This is the interface for the actual controller.
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.
SmartPtr< SchurData > hess_data_
Pointer to Schurdata object holding the indices for selecting the free variables.
virtual bool ComputeReducedHessian()
bool compute_eigenvalues_
True, if option rh_eigendecomp was set to yes.
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:183