Ipopt 3.12.10

- Main Page
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
SensStdStepCalc.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-05-16
6
7 #ifndef __ASSTDSTEPCALC_HPP__
8 #define __ASSTDSTEPCALC_HPP__
9
10 #include "SensBacksolver.hpp"
11 #include "SensStepCalc.hpp"
12 #include "IpDenseVector.hpp"
13 #include "IpIteratesVector.hpp"
14
15 #include <vector>
16
17
18
19 namespace Ipopt
20 {
21
22 class StdStepCalculator : public SensitivityStepCalculator
23 {
24 public:
25 StdStepCalculator(SmartPtr<SchurData> ift_data,
26 SmartPtr<SensBacksolver> backsolver);
27
28 virtual ~StdStepCalculator();
29
30 virtual bool InitializeImpl(const OptionsList& options,
31 const std::string& prefix);
32
35 virtual bool Step(DenseVector& delta_u, IteratesVector& sol);
36
37 bool BoundCheck(IteratesVector& sol,
38 std::vector<Index>& x_bound_violations_idx,
39 std::vector<Number>& x_bound_violations_du);
40
42 virtual SmartPtr<IteratesVector> GetSensitivityVector(void) { return SensitivityVector ; } ;
43
44 private:
45 SmartPtr<SchurData> ift_data_;
46 SmartPtr<SensBacksolver> backsolver_;
47 Number bound_eps_;
48 bool kkt_residuals_;
49
50 SmartPtr<IteratesVector> SensitivityVector ;
51 };
52 }
53
54 #endif
Ipopt::StdStepCalculator::InitializeImpl
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...
Ipopt::SensitivityStepCalculator
Definition: SensStepCalc.hpp:20
Ipopt::IteratesVector
Specialized CompoundVector class specifically for the algorithm iterates.
Definition: IpIteratesVector.hpp:27
Ipopt::StdStepCalculator::SensitivityVector
SmartPtr< IteratesVector > SensitivityVector
Definition: SensStdStepCalc.hpp:50
Ipopt::StdStepCalculator::Step
virtual bool Step(DenseVector &delta_u, IteratesVector &sol)
This is the main algorithmic function of this class; It calculates a step using its SchurDriver...
Ipopt::StdStepCalculator::backsolver_
SmartPtr< SensBacksolver > backsolver_
Definition: SensStdStepCalc.hpp:46
IpIteratesVector.hpp
Ipopt::Number
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
Ipopt::StdStepCalculator::ift_data_
SmartPtr< SchurData > ift_data_
Definition: SensStdStepCalc.hpp:42
Ipopt::StdStepCalculator::StdStepCalculator
StdStepCalculator(SmartPtr< SchurData > ift_data, SmartPtr< SensBacksolver > backsolver)
Ipopt::DenseVector
Dense Vector Implementation.
Definition: IpDenseVector.hpp:40
Ipopt::StdStepCalculator::~StdStepCalculator
virtual ~StdStepCalculator()
Ipopt::SmartPtr
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
Ipopt::OptionsList
This class stores a list of user set options.
Definition: IpOptionsList.hpp:32
SensBacksolver.hpp
Ipopt::StdStepCalculator::bound_eps_
Number bound_eps_
Definition: SensStdStepCalc.hpp:47
SensStepCalc.hpp
IpDenseVector.hpp
Ipopt::StdStepCalculator
Definition: SensStdStepCalc.hpp:22
Ipopt::StdStepCalculator::GetSensitivityVector
virtual SmartPtr< IteratesVector > GetSensitivityVector(void)
return the sensitivity vector
Definition: SensStdStepCalc.hpp:42
Ipopt::StdStepCalculator::BoundCheck
bool BoundCheck(IteratesVector &sol, std::vector< Index > &x_bound_violations_idx, std::vector< Number > &x_bound_violations_du)
Ipopt::StdStepCalculator::kkt_residuals_
bool kkt_residuals_
Definition: SensStdStepCalc.hpp:48