ClpPdcoBase Class Reference

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

#include <ClpPdcoBase.hpp>

Inheritance diagram for ClpPdcoBase:
Inheritance graph
[legend]

List of all members.

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 ClpPdcoBaseclone () const =0
 Returns type.
int type () const
 Returns type.
void setType (int type)
 Sets type.
int sizeD1 () const
 Returns size of d1.
double getD1 () const
 Returns d1 as scalar.
int sizeD2 () const
 Returns size of d2.
double getD2 () const
 Returns d2 as scalar.

Protected Attributes

Data members

The data members are protected to allow access for derived classes.



double d1_
 Should be dense vectors.
double d2_
 Should be dense vectors.
int type_
 type (may be useful)

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).
 ClpPdcoBase ()
 Default constructor.
 ClpPdcoBase (const ClpPdcoBase &)
 Destructor (has to be public).
ClpPdcoBaseoperator= (const ClpPdcoBase &)
 Destructor (has to be public).

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

void ClpPdcoBase::setType ( int  type  )  [inline]

Sets type.

Definition at line 46 of file ClpPdcoBase.hpp.

int ClpPdcoBase::sizeD1 (  )  const [inline]

Returns size of d1.

Definition at line 48 of file ClpPdcoBase.hpp.

double ClpPdcoBase::getD1 (  )  const [inline]

Returns d1 as scalar.

Definition at line 51 of file ClpPdcoBase.hpp.

int ClpPdcoBase::sizeD2 (  )  const [inline]

Returns size of d2.

Definition at line 54 of file ClpPdcoBase.hpp.

double ClpPdcoBase::getD2 (  )  const [inline]

Returns d2 as scalar.

Definition at line 57 of file ClpPdcoBase.hpp.

ClpPdcoBase& ClpPdcoBase::operator= ( const ClpPdcoBase  )  [protected]

Destructor (has to be public).

Reimplemented in myPdco.


Member Data Documentation

double ClpPdcoBase::d1_ [protected]

Should be dense vectors.

Definition at line 86 of file ClpPdcoBase.hpp.

double ClpPdcoBase::d2_ [protected]

Should be dense vectors.

Definition at line 87 of file ClpPdcoBase.hpp.

int ClpPdcoBase::type_ [protected]

type (may be useful)

Definition at line 89 of file ClpPdcoBase.hpp.


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

Generated on 15 Mar 2015 for Coin-All by  doxygen 1.6.1