Clp
1.17.11
Toggle main menu visibility
Loading...
Searching...
No Matches
Clp
src
ClpPdcoBase.hpp
Go to the documentation of this file.
1
/* $Id$ */
2
// Copyright (C) 2003, International Business Machines
3
// Corporation and others. All Rights Reserved.
4
// This code is licensed under the terms of the Eclipse Public License (EPL).
5
6
#ifndef ClpPdcoBase_H
7
#define ClpPdcoBase_H
8
9
#include "CoinPragma.hpp"
10
11
#include "CoinPackedMatrix.hpp"
12
#include "CoinDenseVector.hpp"
13
class
ClpInterior
;
14
24
25
class
ClpPdcoBase
{
26
27
public
:
30
virtual
void
matVecMult
(
ClpInterior
*model,
int
mode,
double
*x,
double
*y)
const
= 0;
31
32
virtual
void
getGrad
(
ClpInterior
*model, CoinDenseVector< double > &x, CoinDenseVector< double > &grad)
const
= 0;
33
34
virtual
void
getHessian
(
ClpInterior
*model, CoinDenseVector< double > &x, CoinDenseVector< double > &H)
const
= 0;
35
36
virtual
double
getObj
(
ClpInterior
*model, CoinDenseVector< double > &x)
const
= 0;
37
38
virtual
void
matPrecon
(
ClpInterior
*model,
double
delta,
double
*x,
double
*y)
const
= 0;
39
41
42
44
virtual
ClpPdcoBase
*
clone
()
const
= 0;
46
inline
int
type
()
const
47
{
48
return
type_
;
49
};
50
51
inline
void
setType
(
int
type
)
52
{
53
type_
=
type
;
54
};
55
56
inline
int
sizeD1
()
const
57
{
58
return
1;
59
};
60
61
inline
double
getD1
()
const
62
{
63
return
d1_
;
64
};
65
66
inline
int
sizeD2
()
const
67
{
68
return
1;
69
};
70
71
inline
double
getD2
()
const
72
{
73
return
d2_
;
74
};
75
76
77
protected
:
82
83
ClpPdcoBase
();
85
public
:
86
virtual
~ClpPdcoBase
();
87
88
protected
:
89
// Copy
90
ClpPdcoBase
(
const
ClpPdcoBase
&);
91
// Assignment
92
ClpPdcoBase
&
operator=
(
const
ClpPdcoBase
&);
94
95
protected
:
99
100
double
d1_
;
101
double
d2_
;
103
int
type_
;
105
};
106
107
#endif
108
109
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
110
*/
ClpInterior
This solves LPs using interior point methods.
Definition
ClpInterior.hpp:72
ClpPdcoBase::setType
void setType(int type)
Sets type.
Definition
ClpPdcoBase.hpp:51
ClpPdcoBase::type
int type() const
Returns type.
Definition
ClpPdcoBase.hpp:46
ClpPdcoBase::ClpPdcoBase
ClpPdcoBase()
Default constructor.
ClpPdcoBase::ClpPdcoBase
ClpPdcoBase(const ClpPdcoBase &)
ClpPdcoBase::getHessian
virtual void getHessian(ClpInterior *model, CoinDenseVector< double > &x, CoinDenseVector< double > &H) const =0
ClpPdcoBase::~ClpPdcoBase
virtual ~ClpPdcoBase()
Destructor (has to be public).
ClpPdcoBase::d1_
double d1_
Should be dense vectors.
Definition
ClpPdcoBase.hpp:100
ClpPdcoBase::clone
virtual ClpPdcoBase * clone() const =0
ClpPdcoBase::type_
int type_
type (may be useful)
Definition
ClpPdcoBase.hpp:103
ClpPdcoBase::operator=
ClpPdcoBase & operator=(const ClpPdcoBase &)
ClpPdcoBase::sizeD1
int sizeD1() const
Returns size of d1.
Definition
ClpPdcoBase.hpp:56
ClpPdcoBase::getGrad
virtual void getGrad(ClpInterior *model, CoinDenseVector< double > &x, CoinDenseVector< double > &grad) const =0
ClpPdcoBase::getD1
double getD1() const
Returns d1 as scalar.
Definition
ClpPdcoBase.hpp:61
ClpPdcoBase::matVecMult
virtual void matVecMult(ClpInterior *model, int mode, double *x, double *y) const =0
ClpPdcoBase::sizeD2
int sizeD2() const
Returns size of d2.
Definition
ClpPdcoBase.hpp:66
ClpPdcoBase::getObj
virtual double getObj(ClpInterior *model, CoinDenseVector< double > &x) const =0
ClpPdcoBase::d2_
double d2_
Definition
ClpPdcoBase.hpp:101
ClpPdcoBase::getD2
double getD2() const
Returns d2 as scalar.
Definition
ClpPdcoBase.hpp:71
ClpPdcoBase::matPrecon
virtual void matPrecon(ClpInterior *model, double delta, double *x, double *y) const =0
Generated by
1.17.0