Ipopt Documentation  
 
Loading...
Searching...
No Matches
SensIndexPCalculator.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-06
6
7#ifndef __ASINDEXPCALCULATOR_HPP__
8#define __ASINDEXPCALCULATOR_HPP__
9
10#include "SensPCalculator.hpp"
11
12namespace Ipopt
13{
14/* Forward declarations */
15class PColumn;
16
18{
21
22public:
23
25 SmartPtr<SensBacksolver> backsolver,
27 );
28
30
32 virtual bool InitializeImpl(
33 const OptionsList& options,
34 const std::string& prefix
35 );
36
37 virtual bool ComputeP();
38
39 virtual bool GetSchurMatrix(
42 );
43
44 virtual void PrintImpl(
45 const Journalist& jnlst,
46 EJournalLevel level,
47 EJournalCategory category,
48 const std::string& name,
49 Index indent,
50 const std::string& prefix
51 ) const;
52
53private:
56
59
60 std::map<Index, SmartPtr<PColumn> > cols_;
61
62};
63
67{
68public:
70 Number* values
71 );
72
73 virtual ~PColumn();
74
75 virtual void GetSchurMatrixRows(
76 const std::vector<Index>* row_idx_B,
77 Number* S
78 ) const;
79
80 virtual const Number* Values() const;
81
82private:
84};
85
86}
87
88#endif
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Overloaded from PCalculator.
virtual void PrintImpl(const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const
IndexPCalculator(SmartPtr< SensBacksolver > backsolver, SmartPtr< SchurData > A_data)
This class is the implementation of the PCalculator that corresponds to IndexSchurData.
std::map< Index, SmartPtr< PColumn > > cols_
virtual bool ComputeP()
Function to start the computation of P from E_0 and KKT.
Index nrows_
Rows of P = Rows of KKT.
virtual bool GetSchurMatrix(const SmartPtr< const SchurData > &B, SmartPtr< Matrix > &S)
Function to extract a SchurMatrix corresponding to $B K^{-1} A$.
Class responsible for all message output.
This class stores a list of user set options.
PCalculator(SmartPtr< SensBacksolver > backsolver, SmartPtr< SchurData > A_data)
This class provides an easy interface for PCalculators with data where columns are not necessarily in...
virtual void GetSchurMatrixRows(const std::vector< Index > *row_idx_B, Number *S) const
PColumn(Number *values)
virtual ~PColumn()
virtual const Number * Values() const
Template class for Smart Pointers.
This file contains a base class for all exceptions and a set of macros to help with exceptions.
ipindex Index
Type of all indices of vectors, matrices etc.
Definition IpTypes.hpp:20
EJournalCategory
Category Selection Enum.
EJournalLevel
Print Level Enum.
ipnumber Number
Type of all numbers.
Definition IpTypes.hpp:17