Ipopt
3.11.8
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Algorithm
LinearSolvers
IpGenKKTSolverInterface.hpp
Go to the documentation of this file.
1
// Copyright (C) 2007 International Business Machines and others.
2
// All Rights Reserved.
3
// This code is published under the Eclipse Public License.
4
//
5
// $Id: IpGenKKTSolverInterface.hpp 2201 2013-04-13 11:58:50Z stefan $
6
//
7
// Authors: Andreas Waechter IBM 2007-03-01
8
9
#ifndef __IPGENKKTSOLVERINTERFACE_HPP__
10
#define __IPGENKKTSOLVERINTERFACE_HPP__
11
12
#include "
IpUtils.hpp
"
13
#include "
IpAlgStrategy.hpp
"
14
#include "
IpSymLinearSolver.hpp
"
15
16
namespace
Ipopt
17
{
20
class
GenKKTSolverInterface
:
public
AlgorithmStrategyObject
21
{
22
public
:
25
GenKKTSolverInterface
()
26
{}
27
28
virtual
~GenKKTSolverInterface
()
29
{}
31
33
virtual
bool
InitializeImpl
(
const
OptionsList
& options,
34
const
std::string& prefix) = 0;
35
73
virtual
ESymSolverStatus
MultiSolve
(
74
bool
new_matrix
75
,
Index
n_x
76
,
Index
n_c
77
,
Index
n_d
78
,
SmartPtr<const SymMatrix>
W
79
,
SmartPtr<const Matrix>
Jac_c
80
,
SmartPtr<const Matrix>
Jac_d
81
,
const
Number
* D_x
82
,
const
Number
* D_s
83
,
const
Number
* D_c
84
,
const
Number
* D_d
85
,
Number
delta_x
86
,
Number
delta_s
87
,
Number
delta_c
88
,
Number
delta_d
89
,
Index
n_rhs
90
,
Number
* rhssol
91
,
bool
check_NegEVals
92
,
Index
numberOfNegEVals
93
)=0;
94
101
virtual
Index
NumberOfNegEVals
()
const
=0;
103
104
//* @name Options of Linear solver */
106
112
virtual
bool
IncreaseQuality
() =0;
113
117
virtual
bool
ProvidesInertia
()
const
=0;
119
};
120
121
}
// namespace Ipopt
122
123
#endif
Generated by
1.8.3.1