Ipopt
3.11.4
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
contrib
sIPOPT
src
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
12
namespace
Ipopt
13
{
14
/* Forward declarations */
15
class
PColumn;
16
17
class
IndexPCalculator
:
public
PCalculator
18
{
22
public
:
23
24
IndexPCalculator
(
SmartPtr<SensBacksolver>
backsolver,
25
SmartPtr<SchurData>
A_data);
26
27
virtual
~IndexPCalculator
();
28
30
virtual
bool
InitializeImpl
(
const
OptionsList
& options,
31
const
std::string& prefix);
32
33
virtual
bool
ComputeP
();
34
35
virtual
bool
GetSchurMatrix
(
const
SmartPtr<const SchurData>
& B,
SmartPtr<Matrix>
& S);
36
37
virtual
void
PrintImpl
(
const
Journalist
& jnlst,
38
EJournalLevel
level,
39
EJournalCategory
category,
40
const
std::string& name,
41
Index
indent,
42
const
std::string& prefix)
const
;
43
44
private
:
45
47
Index
nrows_
;
48
50
Index
ncols_
;
51
52
std::map< Index, SmartPtr<PColumn> >
cols_
;
53
54
};
55
56
class
PColumn
:
public
ReferencedObject
57
{
61
public
:
62
PColumn
(
Index
nrows,
Number
* values);
63
64
virtual
~PColumn
();
65
66
virtual
void
GetSchurMatrixRows
(
const
std::vector<Index>* row_idx_B,
Number
* S)
const
;
67
68
virtual
const
Number
*
Values
()
const
;
69
70
private
:
71
72
Index
nrows_
;
73
Number
*
val_
;
74
};
75
76
}
77
78
#endif
Generated on Mon Oct 21 2013 19:08:14 for Ipopt by
1.8.4