Bcp 1.4.4
Loading...
Searching...
No Matches
List of all members
BCP_lp_relax Class Reference

An object of type BCP_lp_relax holds the description of an lp relaxation. More...

#include <BCP_matrix.hpp>

+ Inheritance diagram for BCP_lp_relax:
+ Collaboration diagram for BCP_lp_relax:

Public Member Functions

Query methods
size_t colnum () const
 The number of columns.
 
size_t rownum () const
 The number of rows.
 
const BCP_vec< double > & Objective () const
 A const reference to the vector of objective coefficients.
 
const BCP_vec< double > & ColLowerBound () const
 A const reference to the vector of lower bounds on the variables.
 
const BCP_vec< double > & ColUpperBound () const
 A const reference to the vector of upper bounds on the variables.
 
const BCP_vec< double > & RowLowerBound () const
 A const reference to the vector of lower bounds on the cuts.
 
const BCP_vec< double > & RowUpperBound () const
 A const reference to the vector of upper bounds on the cuts.
 
Methods modifying the whole LP relaxation.
BCP_lp_relaxoperator= (const BCP_lp_relax &mat)
 Copy the content of x into the LP relaxation.
 
void reserve (const int MaxColNum, const int MaxRowNum, const int MaxNonzeros)
 Reserve space in the LP relaxation for at least MaxColNum columns, MaxRowNum rows and MaxNonzeros nonzero entries.
 
void clear ()
 Clear the LP relaxation.
 
void copyOf (const CoinPackedMatrix &m, const double *OBJ, const double *CLB, const double *CUB, const double *RLB, const double *RUB)
 Set up the LP relaxation by making a copy of the arguments.
 
void assign (CoinPackedMatrix &m, double *&OBJ, double *&CLB, double *&CUB, double *&RLB, double *&RUB)
 Set up the LP relaxation by taking over the pointers in the arguments.
 
Methods for expanding/shrinking the LP relaxation.
void erase_col_set (const BCP_vec< int > &pos)
 Remove the columns whose indices are listed in pos from the LP relaxation.
 
void erase_row_set (const BCP_vec< int > &pos)
 Remove the rows whose indices are listed in pos from the LP relaxation.
 
Packing/unpacking
void pack (BCP_buffer &buf) const
 Pack the LP relaxation into the buffer.
 
void unpack (BCP_buffer &buf)
 Unpack the LP relaxation from the buffer.
 
Constructors and destructor
 BCP_lp_relax (const bool colordered=true)
 Create an empty LP relaxation with given ordering.
 
 BCP_lp_relax (const BCP_lp_relax &mat)
 The copy constructor makes a copy of the argument LP relaxation.
 
 BCP_lp_relax (BCP_vec< BCP_row * > &rows, BCP_vec< double > &CLB, BCP_vec< double > &CUB, BCP_vec< double > &OBJ)
 Create a row major ordered LP relaxation by assigning the content of the arguments to the LP relaxation.
 
 BCP_lp_relax (BCP_vec< BCP_row * > &rows, BCP_vec< double > &CLB, BCP_vec< double > &CUB, BCP_vec< double > &OBJ, double extra_gap, double extra_major)
 Same as the previous method except that this method allows extra_gap and extra_major to be specified.
 
 BCP_lp_relax (BCP_vec< BCP_col * > &cols, BCP_vec< double > &RLB, BCP_vec< double > &RUB)
 Create a column major ordered LP relaxation by assigning the content of the arguments to the LP relaxation.
 
 BCP_lp_relax (BCP_vec< BCP_col * > &cols, BCP_vec< double > &RLB, BCP_vec< double > &RUB, double extra_gap, double extra_major)
 Same as the previous method except that this method allows extra_gap and extra_major to be specified.
 
 BCP_lp_relax (const bool colordered, const BCP_vec< int > &VB, const BCP_vec< int > &EI, const BCP_vec< double > &EV, const BCP_vec< double > &OBJ, const BCP_vec< double > &CLB, const BCP_vec< double > &CUB, const BCP_vec< double > &RLB, const BCP_vec< double > &RUB)
 Create an LP relaxation of the given ordering by copying the content of the arguments to the LP relaxation.
 
 BCP_lp_relax (const bool colordered, const int rownum, const int colnum, const int nznum, int *&VB, int *&EI, double *&EV, double *&OBJ, double *&CLB, double *&CUB, double *&RLB, double *&RUB)
 Create an LP relaxation of the given ordering by assigning the content of the arguments to the LP relaxation.
 
 ~BCP_lp_relax ()
 The destructor deletes the data members.
 
- Public Member Functions inherited from CoinPackedMatrix
double getExtraGap () const
 
double getExtraMajor () const
 
void reserve (const int newMaxMajorDim, const CoinBigIndex newMaxSize, bool create=false)
 
void clear ()
 
bool isColOrdered () const
 
bool hasGaps () const
 
CoinBigIndex getNumElements () const
 
int getNumCols () const
 
int getNumRows () const
 
const double * getElements () const
 
const int * getIndices () const
 
int getSizeVectorStarts () const
 
int getSizeVectorLengths () const
 
const CoinBigIndexgetVectorStarts () const
 
const int * getVectorLengths () const
 
CoinBigIndex getVectorFirst (const int i) const
 
CoinBigIndex getVectorLast (const int i) const
 
int getVectorSize (const int i) const
 
const CoinShallowPackedVector getVector (int i) const
 
int * getMajorIndices () const
 
void setDimensions (int numrows, int numcols)
 
void setExtraGap (const double newGap)
 
void setExtraMajor (const double newMajor)
 
void appendCol (const CoinPackedVectorBase &vec)
 
void appendCol (const int vecsize, const int *vecind, const double *vecelem)
 
void appendCols (const int numcols, const CoinPackedVectorBase *const *cols)
 
int appendCols (const int numcols, const CoinBigIndex *columnStarts, const int *row, const double *element, int numberRows=-1)
 
void appendRow (const CoinPackedVectorBase &vec)
 
void appendRow (const int vecsize, const int *vecind, const double *vecelem)
 
void appendRows (const int numrows, const CoinPackedVectorBase *const *rows)
 
int appendRows (const int numrows, const CoinBigIndex *rowStarts, const int *column, const double *element, int numberColumns=-1)
 
void rightAppendPackedMatrix (const CoinPackedMatrix &matrix)
 
void bottomAppendPackedMatrix (const CoinPackedMatrix &matrix)
 
void deleteCols (const int numDel, const int *indDel)
 
void deleteRows (const int numDel, const int *indDel)
 
void replaceVector (const int index, const int numReplace, const double *newElements)
 
void modifyCoefficient (int row, int column, double newElement, bool keepZero=false)
 
double getCoefficient (int row, int column) const
 
CoinBigIndex compress (double threshold)
 
CoinBigIndex eliminateDuplicates (double threshold)
 
void orderMatrix ()
 
CoinBigIndex cleanMatrix (double threshold=1.0e-20)
 
void removeGaps (double removeValue=-1.0)
 
void submatrixOf (const CoinPackedMatrix &matrix, const int numMajor, const int *indMajor)
 
void submatrixOfWithDuplicates (const CoinPackedMatrix &matrix, const int numMajor, const int *indMajor)
 
void copyOf (const CoinPackedMatrix &rhs)
 
void copyOf (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len, const double extraMajor=0.0, const double extraGap=0.0)
 
void copyReuseArrays (const CoinPackedMatrix &rhs)
 
void reverseOrderedCopyOf (const CoinPackedMatrix &rhs)
 
void assignMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, double *&elem, int *&ind, CoinBigIndex *&start, int *&len, const int maxmajor=-1, const CoinBigIndex maxsize=-1)
 
CoinPackedMatrixoperator= (const CoinPackedMatrix &rhs)
 
void reverseOrdering ()
 
void transpose ()
 
void swap (CoinPackedMatrix &matrix)
 
void times (const double *x, double *y) const
 
void times (const CoinPackedVectorBase &x, double *y) const
 
void transposeTimes (const double *x, double *y) const
 
void transposeTimes (const CoinPackedVectorBase &x, double *y) const
 
int * countOrthoLength () const
 
void countOrthoLength (int *counts) const
 
int getMajorDim () const
 
void setMajorDim (int value)
 
int getMinorDim () const
 
void setMinorDim (int value)
 
int getMaxMajorDim () const
 
void dumpMatrix (const char *fname=NULL) const
 
void printMatrixElement (const int row_val, const int col_val) const
 
void appendMajorVector (const CoinPackedVectorBase &vec)
 
void appendMajorVector (const int vecsize, const int *vecind, const double *vecelem)
 
void appendMajorVectors (const int numvecs, const CoinPackedVectorBase *const *vecs)
 
void appendMinorVector (const CoinPackedVectorBase &vec)
 
void appendMinorVector (const int vecsize, const int *vecind, const double *vecelem)
 
void appendMinorVectors (const int numvecs, const CoinPackedVectorBase *const *vecs)
 
void appendMinorFast (const int number, const CoinBigIndex *starts, const int *index, const double *element)
 
void majorAppendSameOrdered (const CoinPackedMatrix &matrix)
 
void minorAppendSameOrdered (const CoinPackedMatrix &matrix)
 
void majorAppendOrthoOrdered (const CoinPackedMatrix &matrix)
 
void minorAppendOrthoOrdered (const CoinPackedMatrix &matrix)
 
void deleteMajorVectors (const int numDel, const int *indDel)
 
void deleteMinorVectors (const int numDel, const int *indDel)
 
void timesMajor (const double *x, double *y) const
 
void timesMajor (const CoinPackedVectorBase &x, double *y) const
 
void timesMinor (const double *x, double *y) const
 
void timesMinor (const CoinPackedVectorBase &x, double *y) const
 
bool isEquivalent (const CoinPackedMatrix &rhs, const FloatEqual &eq) const
 
bool isEquivalent2 (const CoinPackedMatrix &rhs) const
 
bool isEquivalent (const CoinPackedMatrix &rhs) const
 
double * getMutableElements () const
 
int * getMutableIndices () const
 
CoinBigIndexgetMutableVectorStarts () const
 
int * getMutableVectorLengths () const
 
void setNumElements (CoinBigIndex value)
 
void nullElementArray ()
 
void nullStartArray ()
 
void nullLengthArray ()
 
void nullIndexArray ()
 
 CoinPackedMatrix ()
 
 CoinPackedMatrix (const bool colordered, const double extraMajor, const double extraGap)
 
 CoinPackedMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len, const double extraMajor, const double extraGap)
 
 CoinPackedMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len)
 
 CoinPackedMatrix (const bool colordered, const int *rowIndices, const int *colIndices, const double *elements, CoinBigIndex numels)
 
 CoinPackedMatrix (const CoinPackedMatrix &m)
 
 CoinPackedMatrix (const CoinPackedMatrix &m, int extraForMajor, int extraElements, bool reverseOrdering=false)
 
 CoinPackedMatrix (const CoinPackedMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns)
 
virtual ~CoinPackedMatrix ()
 
double getExtraGap () const
 
double getExtraMajor () const
 
void reserve (const int newMaxMajorDim, const CoinBigIndex newMaxSize, bool create=false)
 
void clear ()
 
bool isColOrdered () const
 
bool hasGaps () const
 
CoinBigIndex getNumElements () const
 
int getNumCols () const
 
int getNumRows () const
 
const double * getElements () const
 
const int * getIndices () const
 
int getSizeVectorStarts () const
 
int getSizeVectorLengths () const
 
const CoinBigIndexgetVectorStarts () const
 
const int * getVectorLengths () const
 
CoinBigIndex getVectorFirst (const int i) const
 
CoinBigIndex getVectorLast (const int i) const
 
int getVectorSize (const int i) const
 
const CoinShallowPackedVector getVector (int i) const
 
int * getMajorIndices () const
 
void setDimensions (int numrows, int numcols)
 
void setExtraGap (const double newGap)
 
void setExtraMajor (const double newMajor)
 
void appendCol (const CoinPackedVectorBase &vec)
 
void appendCol (const int vecsize, const int *vecind, const double *vecelem)
 
void appendCols (const int numcols, const CoinPackedVectorBase *const *cols)
 
int appendCols (const int numcols, const CoinBigIndex *columnStarts, const int *row, const double *element, int numberRows=-1)
 
void appendRow (const CoinPackedVectorBase &vec)
 
void appendRow (const int vecsize, const int *vecind, const double *vecelem)
 
void appendRows (const int numrows, const CoinPackedVectorBase *const *rows)
 
int appendRows (const int numrows, const CoinBigIndex *rowStarts, const int *column, const double *element, int numberColumns=-1)
 
void rightAppendPackedMatrix (const CoinPackedMatrix &matrix)
 
void bottomAppendPackedMatrix (const CoinPackedMatrix &matrix)
 
void deleteCols (const int numDel, const int *indDel)
 
void deleteRows (const int numDel, const int *indDel)
 
void replaceVector (const int index, const int numReplace, const double *newElements)
 
void modifyCoefficient (int row, int column, double newElement, bool keepZero=false)
 
double getCoefficient (int row, int column) const
 
CoinBigIndex compress (double threshold)
 
CoinBigIndex eliminateDuplicates (double threshold)
 
void orderMatrix ()
 
CoinBigIndex cleanMatrix (double threshold=1.0e-20)
 
void removeGaps (double removeValue=-1.0)
 
void submatrixOf (const CoinPackedMatrix &matrix, const int numMajor, const int *indMajor)
 
void submatrixOfWithDuplicates (const CoinPackedMatrix &matrix, const int numMajor, const int *indMajor)
 
void copyOf (const CoinPackedMatrix &rhs)
 
void copyOf (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len, const double extraMajor=0.0, const double extraGap=0.0)
 
void copyReuseArrays (const CoinPackedMatrix &rhs)
 
void reverseOrderedCopyOf (const CoinPackedMatrix &rhs)
 
void assignMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, double *&elem, int *&ind, CoinBigIndex *&start, int *&len, const int maxmajor=-1, const CoinBigIndex maxsize=-1)
 
CoinPackedMatrixoperator= (const CoinPackedMatrix &rhs)
 
void reverseOrdering ()
 
void transpose ()
 
void swap (CoinPackedMatrix &matrix)
 
void times (const double *x, double *y) const
 
void times (const CoinPackedVectorBase &x, double *y) const
 
void transposeTimes (const double *x, double *y) const
 
void transposeTimes (const CoinPackedVectorBase &x, double *y) const
 
int * countOrthoLength () const
 
void countOrthoLength (int *counts) const
 
int getMajorDim () const
 
void setMajorDim (int value)
 
int getMinorDim () const
 
void setMinorDim (int value)
 
int getMaxMajorDim () const
 
void dumpMatrix (const char *fname=NULL) const
 
void printMatrixElement (const int row_val, const int col_val) const
 
void appendMajorVector (const CoinPackedVectorBase &vec)
 
void appendMajorVector (const int vecsize, const int *vecind, const double *vecelem)
 
void appendMajorVectors (const int numvecs, const CoinPackedVectorBase *const *vecs)
 
void appendMinorVector (const CoinPackedVectorBase &vec)
 
void appendMinorVector (const int vecsize, const int *vecind, const double *vecelem)
 
void appendMinorVectors (const int numvecs, const CoinPackedVectorBase *const *vecs)
 
void appendMinorFast (const int number, const CoinBigIndex *starts, const int *index, const double *element)
 
void majorAppendSameOrdered (const CoinPackedMatrix &matrix)
 
void minorAppendSameOrdered (const CoinPackedMatrix &matrix)
 
void majorAppendOrthoOrdered (const CoinPackedMatrix &matrix)
 
void minorAppendOrthoOrdered (const CoinPackedMatrix &matrix)
 
void deleteMajorVectors (const int numDel, const int *indDel)
 
void deleteMinorVectors (const int numDel, const int *indDel)
 
void timesMajor (const double *x, double *y) const
 
void timesMajor (const CoinPackedVectorBase &x, double *y) const
 
void timesMinor (const double *x, double *y) const
 
void timesMinor (const CoinPackedVectorBase &x, double *y) const
 
bool isEquivalent (const CoinPackedMatrix &rhs, const FloatEqual &eq) const
 
bool isEquivalent2 (const CoinPackedMatrix &rhs) const
 
bool isEquivalent (const CoinPackedMatrix &rhs) const
 
double * getMutableElements () const
 
int * getMutableIndices () const
 
CoinBigIndexgetMutableVectorStarts () const
 
int * getMutableVectorLengths () const
 
void setNumElements (CoinBigIndex value)
 
void nullElementArray ()
 
void nullStartArray ()
 
void nullLengthArray ()
 
void nullIndexArray ()
 
 CoinPackedMatrix ()
 
 CoinPackedMatrix (const bool colordered, const double extraMajor, const double extraGap)
 
 CoinPackedMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len, const double extraMajor, const double extraGap)
 
 CoinPackedMatrix (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len)
 
 CoinPackedMatrix (const bool colordered, const int *rowIndices, const int *colIndices, const double *elements, CoinBigIndex numels)
 
 CoinPackedMatrix (const CoinPackedMatrix &m)
 
 CoinPackedMatrix (const CoinPackedMatrix &m, int extraForMajor, int extraElements, bool reverseOrdering=false)
 
 CoinPackedMatrix (const CoinPackedMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns)
 
virtual ~CoinPackedMatrix ()
 
int verifyMtx (int verbosity=1, bool zeroesAreError=false) const
 

Additional Inherited Members

- Protected Member Functions inherited from CoinPackedMatrix
void gutsOfDestructor ()
 
void gutsOfCopyOf (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len, const double extraMajor=0.0, const double extraGap=0.0)
 
void gutsOfCopyOfNoGaps (const bool colordered, const int minor, const int major, const double *elem, const int *ind, const CoinBigIndex *start)
 
void gutsOfOpEqual (const bool colordered, const int minor, const int major, const CoinBigIndex numels, const double *elem, const int *ind, const CoinBigIndex *start, const int *len)
 
void resizeForAddingMajorVectors (const int numVec, const int *lengthVec)
 
void resizeForAddingMinorVectors (const int *addedEntries)
 
int appendMajor (const int number, const CoinBigIndex *starts, const int *index, const double *element, int numberOther=-1)
 
int appendMinor (const int number, const CoinBigIndex *starts, const int *index, const double *element, int numberOther=-1)
 
- Protected Attributes inherited from CoinPackedMatrix
bool colOrdered_
 
double extraGap_
 
double extraMajor_
 
double * element_
 
int * index_
 
CoinBigIndexstart_
 
int * length_
 
int majorDim_
 
int minorDim_
 
CoinBigIndex size_
 
int maxMajorDim_
 
CoinBigIndex maxSize_
 

Detailed Description

An object of type BCP_lp_relax holds the description of an lp relaxation.

The matrix, lower/upper bounds on the variables and cuts and objective coefficients for the variables.

Definition at line 267 of file BCP_matrix.hpp.

Constructor & Destructor Documentation

◆ BCP_lp_relax() [1/8]

BCP_lp_relax::BCP_lp_relax ( const bool colordered = true)
inline

Create an empty LP relaxation with given ordering.

Definition at line 377 of file BCP_matrix.hpp.

◆ BCP_lp_relax() [2/8]

BCP_lp_relax::BCP_lp_relax ( const BCP_lp_relax & mat)

The copy constructor makes a copy of the argument LP relaxation.

◆ BCP_lp_relax() [3/8]

BCP_lp_relax::BCP_lp_relax ( BCP_vec< BCP_row * > & rows,
BCP_vec< double > & CLB,
BCP_vec< double > & CUB,
BCP_vec< double > & OBJ )

Create a row major ordered LP relaxation by assigning the content of the arguments to the LP relaxation.

When the constructor returns the content of 'rows' doesn't change while that of CLB, CUB and OBJ will be whatever the default constructor for those arguments create.

◆ BCP_lp_relax() [4/8]

BCP_lp_relax::BCP_lp_relax ( BCP_vec< BCP_row * > & rows,
BCP_vec< double > & CLB,
BCP_vec< double > & CUB,
BCP_vec< double > & OBJ,
double extra_gap,
double extra_major )

Same as the previous method except that this method allows extra_gap and extra_major to be specified.

For the description of those see the documentation of CoinPackedMatrix. (extra_gap will be used for adding columns, while extra major for adding rows)

◆ BCP_lp_relax() [5/8]

BCP_lp_relax::BCP_lp_relax ( BCP_vec< BCP_col * > & cols,
BCP_vec< double > & RLB,
BCP_vec< double > & RUB )

Create a column major ordered LP relaxation by assigning the content of the arguments to the LP relaxation.

When the constructor returns the content of 'cols' doesn't change while that of RLB and RUB will be whatever the default constructor for those arguments create.

◆ BCP_lp_relax() [6/8]

BCP_lp_relax::BCP_lp_relax ( BCP_vec< BCP_col * > & cols,
BCP_vec< double > & RLB,
BCP_vec< double > & RUB,
double extra_gap,
double extra_major )

Same as the previous method except that this method allows extra_gap and extra_major to be specified.

For the description of those see the documentation of CoinPackedMatrix. (extra_gap will be used for adding rows, while extra major for adding columns)

◆ BCP_lp_relax() [7/8]

BCP_lp_relax::BCP_lp_relax ( const bool colordered,
const BCP_vec< int > & VB,
const BCP_vec< int > & EI,
const BCP_vec< double > & EV,
const BCP_vec< double > & OBJ,
const BCP_vec< double > & CLB,
const BCP_vec< double > & CUB,
const BCP_vec< double > & RLB,
const BCP_vec< double > & RUB )

Create an LP relaxation of the given ordering by copying the content of the arguments to the LP relaxation.

◆ BCP_lp_relax() [8/8]

BCP_lp_relax::BCP_lp_relax ( const bool colordered,
const int rownum,
const int colnum,
const int nznum,
int *& VB,
int *& EI,
double *& EV,
double *& OBJ,
double *& CLB,
double *& CUB,
double *& RLB,
double *& RUB )

Create an LP relaxation of the given ordering by assigning the content of the arguments to the LP relaxation.

When the constructor returns the content of the arguments will be NULL pointers.

◆ ~BCP_lp_relax()

BCP_lp_relax::~BCP_lp_relax ( )
inline

The destructor deletes the data members.

Definition at line 435 of file BCP_matrix.hpp.

Member Function Documentation

◆ colnum()

size_t BCP_lp_relax::colnum ( ) const
inline

The number of columns.

Definition at line 288 of file BCP_matrix.hpp.

◆ rownum()

size_t BCP_lp_relax::rownum ( ) const
inline

The number of rows.

Definition at line 290 of file BCP_matrix.hpp.

◆ Objective()

const BCP_vec< double > & BCP_lp_relax::Objective ( ) const
inline

A const reference to the vector of objective coefficients.

Definition at line 292 of file BCP_matrix.hpp.

◆ ColLowerBound()

const BCP_vec< double > & BCP_lp_relax::ColLowerBound ( ) const
inline

A const reference to the vector of lower bounds on the variables.

Definition at line 294 of file BCP_matrix.hpp.

◆ ColUpperBound()

const BCP_vec< double > & BCP_lp_relax::ColUpperBound ( ) const
inline

A const reference to the vector of upper bounds on the variables.

Definition at line 296 of file BCP_matrix.hpp.

◆ RowLowerBound()

const BCP_vec< double > & BCP_lp_relax::RowLowerBound ( ) const
inline

A const reference to the vector of lower bounds on the cuts.

Definition at line 298 of file BCP_matrix.hpp.

◆ RowUpperBound()

const BCP_vec< double > & BCP_lp_relax::RowUpperBound ( ) const
inline

A const reference to the vector of upper bounds on the cuts.

Definition at line 300 of file BCP_matrix.hpp.

◆ operator=()

BCP_lp_relax & BCP_lp_relax::operator= ( const BCP_lp_relax & mat)

Copy the content of x into the LP relaxation.

◆ reserve()

void BCP_lp_relax::reserve ( const int MaxColNum,
const int MaxRowNum,
const int MaxNonzeros )

Reserve space in the LP relaxation for at least MaxColNum columns, MaxRowNum rows and MaxNonzeros nonzero entries.

This is useful when columns/rows are added to the LP relaxation in small chunks and to avoid a series of reallocation we reserve sufficient space up front.

◆ clear()

void BCP_lp_relax::clear ( )

Clear the LP relaxation.

◆ copyOf()

void BCP_lp_relax::copyOf ( const CoinPackedMatrix & m,
const double * OBJ,
const double * CLB,
const double * CUB,
const double * RLB,
const double * RUB )

Set up the LP relaxation by making a copy of the arguments.

◆ assign()

void BCP_lp_relax::assign ( CoinPackedMatrix & m,
double *& OBJ,
double *& CLB,
double *& CUB,
double *& RLB,
double *& RUB )

Set up the LP relaxation by taking over the pointers in the arguments.

◆ erase_col_set()

void BCP_lp_relax::erase_col_set ( const BCP_vec< int > & pos)

Remove the columns whose indices are listed in pos from the LP relaxation.

◆ erase_row_set()

void BCP_lp_relax::erase_row_set ( const BCP_vec< int > & pos)

Remove the rows whose indices are listed in pos from the LP relaxation.

◆ pack()

void BCP_lp_relax::pack ( BCP_buffer & buf) const

Pack the LP relaxation into the buffer.

◆ unpack()

void BCP_lp_relax::unpack ( BCP_buffer & buf)

Unpack the LP relaxation from the buffer.


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