16 #ifndef DECOMP_CUTOSI_HPP
17 #define DECOMP_CUTOSI_HPP
46 char sense(
double infinity)
const {
52 }
else if ( lb_ == -infinity && ub_ == infinity ) {
54 }
else if ( lb_ == -infinity ) {
56 }
else if ( ub_ == infinity ) {
63 double rhs(
double infinity)
const {
69 }
else if ( lb_ == -infinity && ub_ == infinity ) {
71 }
else if ( lb_ == -infinity ) {
73 }
else if ( ub_ == infinity ) {
121 void print(std::ostream* os = &std::cout)
const {
128 (*os) <<
" + " << els[i] <<
" x[" << ind[i] <<
"]";
132 (*os) <<
" lb: -INF";
#define DECOMP_TEST_DUPINDEX
double getUpperBound() const
virtual const int * getIndices() const
Get indices of elements.
virtual const double * getElements() const
Get element values.
void setVector(int size, const int *inds, const double *elems, bool testForDuplicateIndex=COIN_DEFAULT_VALUE_FOR_DUPLICATE)
Set vector size, indices, and elements.
DecompCutOsi(const DecompVar &)
OsiRowCut_inline double lb() const
Get lower bound.
virtual int getNumElements() const
Get the size.
OsiRowCut_inline const CoinPackedVector & row() const
Get row elements.
DecompCutOsi(OsiRowCut &osiCut)
OsiRowCut_inline double ub() const
Get upper bound.
void print(std::ostream *os=&std::cout) const
void setUpperBound(const double ub)
void setStringHash(double infinity)
char sense(double infinity) const
void expandCutToRow(CoinPackedVector *row)
double getLowerBound() const
DecompCutOsi & operator=(const DecompVar &)
void setStringHash(CoinPackedVector *row, double infinity)
double rhs(double infinity) const
void setLowerBound(const double lb)
string UtilCreateStringHash(const int len, const double *els, const int precision=6)
double getViolation() const