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

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

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
| Returns type. More...
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_
| Should be dense vectors. More...
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 &)
| Destructor (has to be public) More...
ClpPdcoBase & | operator= (const ClpPdcoBase &)
| Destructor (has to be public) More...

## 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

Destructor (has to be public)

## 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

Returns type.

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 50 of file ClpPdcoBase.hpp.

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

Returns size of d1.

Definition at line 54 of file ClpPdcoBase.hpp.

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

Returns d1 as scalar.

Definition at line 58 of file ClpPdcoBase.hpp.

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

Returns size of d2.

Definition at line 62 of file ClpPdcoBase.hpp.

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

Returns d2 as scalar.

Definition at line 66 of file ClpPdcoBase.hpp.

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

Destructor (has to be public)

## Member Data Documentation

double ClpPdcoBase::d1_
| protected

Should be dense vectors.

Definition at line 96 of file ClpPdcoBase.hpp.

double ClpPdcoBase::d2_
| protected

Should be dense vectors.

Definition at line 97 of file ClpPdcoBase.hpp.

int ClpPdcoBase::type_
| protected

type (may be useful)

Definition at line 99 of file ClpPdcoBase.hpp.

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

- /tmp/CHiPPS-Blis-0.94.3/Clp/src/ClpPdcoBase.hpp