Clp 1.17.6

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
ClpPdcoBase Class Referenceabstract

Abstract base class for tailoring everything for Pcdo. More...

`#include <ClpPdcoBase.hpp>`

Inheritance diagram for ClpPdcoBase:
[legend]

## Public Member Functions
Virtual methods that the derived classes must provide
virtual void | matVecMult (ClpInterior *model, int mode, double *x, double *y) const =0
virtual void | getGrad (ClpInterior *model, CoinDenseVector< double > &x, CoinDenseVector< double > &grad) const =0
virtual void | getHessian (ClpInterior *model, CoinDenseVector< double > &x, CoinDenseVector< double > &H) const =0
virtual double | getObj (ClpInterior *model, CoinDenseVector< double > &x) const =0
virtual void | matPrecon (ClpInterior *model, double delta, double *x, double *y) const =0
Other
Clone
virtual ClpPdcoBase * | clone () const =0
int | type () const
| Returns type. More...
void | setType (int type)
| Sets type. More...
int | sizeD1 () const
| Returns size of d1. More...
double | getD1 () const
| Returns d1 as scalar. More...
int | sizeD2 () const
| Returns size of d2. More...
double | getD2 () const
| Returns d2 as scalar. More...

## Protected Attributes
Data members
The data members are protected to allow access for derived classes.
double | d1_
| Should be dense vectors. More...
double | d2_
int | type_
| type (may be useful) More...

## Constructors, destructor<br>
NOTE: All constructors are protected. There's no need to expose them, after all, this is an abstract class.
virtual | ~ClpPdcoBase ()
| Destructor (has to be public) More...
| ClpPdcoBase ()
| Default constructor. More...
| ClpPdcoBase (const ClpPdcoBase &)
ClpPdcoBase & | operator= (const ClpPdcoBase &)

## Detailed Description

Abstract base class for tailoring everything for Pcdo.

Since this class is abstract, no object of this type can be created.

If a derived class provides all methods then all ClpPcdo algorithms should work.

Eventually we should be able to use ClpObjective and ClpMatrixBase.

Definition at line 25 of file ClpPdcoBase.hpp.

## Constructor & Destructor Documentation

ClpPdcoBase::ClpPdcoBase | ( |  | ) |
| protected

Default constructor.

virtual ClpPdcoBase::~ClpPdcoBase | ( |  | ) |
| virtual

Destructor (has to be public)

ClpPdcoBase::ClpPdcoBase | ( | const ClpPdcoBase & |  | ) |
| protected

## Member Function Documentation

virtual void ClpPdcoBase::matVecMult | ( | ClpInterior * | model,
|  | int | mode,
|  | double * | x,
|  | double * | y
| ) |  | const
| pure virtual

Implemented in myPdco.

virtual void ClpPdcoBase::getGrad | ( | ClpInterior * | model,
|  | CoinDenseVector< double > & | x,
|  | CoinDenseVector< double > & | grad
| ) |  | const
| pure virtual

Implemented in myPdco.

virtual void ClpPdcoBase::getHessian | ( | ClpInterior * | model,
|  | CoinDenseVector< double > & | x,
|  | CoinDenseVector< double > & | H
| ) |  | const
| pure virtual

Implemented in myPdco.

virtual double ClpPdcoBase::getObj | ( | ClpInterior * | model,
|  | CoinDenseVector< double > & | x
| ) |  | const
| pure virtual

Implemented in myPdco.

virtual void ClpPdcoBase::matPrecon | ( | ClpInterior * | model,
|  | double | delta,
|  | double * | x,
|  | double * | y
| ) |  | const
| pure virtual

Implemented in myPdco.

virtual ClpPdcoBase* ClpPdcoBase::clone | ( |  | ) | const
| pure virtual

Implemented in myPdco.

int ClpPdcoBase::type | ( |  | ) | const
| inline

Returns type.

Definition at line 46 of file ClpPdcoBase.hpp.

void ClpPdcoBase::setType | ( | int | type | ) |
| inline

Sets type.

Definition at line 51 of file ClpPdcoBase.hpp.

int ClpPdcoBase::sizeD1 | ( |  | ) | const
| inline

Returns size of d1.

Definition at line 56 of file ClpPdcoBase.hpp.

double ClpPdcoBase::getD1 | ( |  | ) | const
| inline

Returns d1 as scalar.

Definition at line 61 of file ClpPdcoBase.hpp.

int ClpPdcoBase::sizeD2 | ( |  | ) | const
| inline

Returns size of d2.

Definition at line 66 of file ClpPdcoBase.hpp.

double ClpPdcoBase::getD2 | ( |  | ) | const
| inline

Returns d2 as scalar.

Definition at line 71 of file ClpPdcoBase.hpp.

ClpPdcoBase& ClpPdcoBase::operator= | ( | const ClpPdcoBase & |  | ) |
| protected

## Member Data Documentation

double ClpPdcoBase::d1_
| protected

Should be dense vectors.

Definition at line 100 of file ClpPdcoBase.hpp.

double ClpPdcoBase::d2_
| protected

Definition at line 101 of file ClpPdcoBase.hpp.

int ClpPdcoBase::type_
| protected

type (may be useful)

Definition at line 103 of file ClpPdcoBase.hpp.

The documentation for this class was generated from the following file:

- /tmp/Clp-1.17.6/Clp/src/ClpPdcoBase.hpp