Abstract base class for tailoring everything for Pcdo. More...
#include <ClpPdcoBase.hpp>

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. | |
| 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) | |
| ClpPdcoBase & | operator= (const ClpPdcoBase &) |
| Destructor (has to be public) | |
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 23 of file ClpPdcoBase.hpp.
| ClpPdcoBase::ClpPdcoBase | ( | ) | [protected] |
Default constructor.
| virtual ClpPdcoBase::~ClpPdcoBase | ( | ) | [virtual] |
Destructor (has to be public)
| ClpPdcoBase::ClpPdcoBase | ( | const ClpPdcoBase & | ) | [protected] |
Destructor (has to be public)
| 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 44 of file ClpPdcoBase.hpp.
| void ClpPdcoBase::setType | ( | int | type | ) | [inline] |
Sets type.
Definition at line 48 of file ClpPdcoBase.hpp.
| int ClpPdcoBase::sizeD1 | ( | ) | const [inline] |
Returns size of d1.
Definition at line 52 of file ClpPdcoBase.hpp.
| double ClpPdcoBase::getD1 | ( | ) | const [inline] |
Returns d1 as scalar.
Definition at line 56 of file ClpPdcoBase.hpp.
| int ClpPdcoBase::sizeD2 | ( | ) | const [inline] |
Returns size of d2.
Definition at line 60 of file ClpPdcoBase.hpp.
| double ClpPdcoBase::getD2 | ( | ) | const [inline] |
Returns d2 as scalar.
Definition at line 64 of file ClpPdcoBase.hpp.
| ClpPdcoBase& ClpPdcoBase::operator= | ( | const ClpPdcoBase & | ) | [protected] |
Destructor (has to be public)
double ClpPdcoBase::d1_ [protected] |
Should be dense vectors.
Definition at line 94 of file ClpPdcoBase.hpp.
double ClpPdcoBase::d2_ [protected] |
Should be dense vectors.
Definition at line 95 of file ClpPdcoBase.hpp.
int ClpPdcoBase::type_ [protected] |
type (may be useful)
Definition at line 97 of file ClpPdcoBase.hpp.
1.7.6.1