Scippy

SoPlex

Sequential object-oriented simPlex

LPColSetBase< R > Class Template Reference

Set of LP columns.Class LPColSetBase implements a set of LPColBase%s. Unless for memory limitations, any number of LPColBases may be added to an LPColSetBase. Single or multiple LPColBases may be added to an LPColSetBase, where each method add() comes with two different signatures. One with and one without a parameter, used for returning the DataKeys assigned to the new LPColBases by the set. See DataKey for a more detailed description of the concept of keys. For the concept of renumbering LPColBases within an LPColSetBase after removal of some LPColBases, see DataSet. More...

#include <lpcolsetbase.h>

Public Member Functions

Inquiry
int num () const
 Returns the number of LPColBases currently in LPColSetBase. More...
 
int max () const
 Returns maximum number of LPColBases currently fitting into LPColSetBase. More...
 
const VectorBase< R > & maxObj () const
 
VectorBase< R > & maxObj_w ()
 Returns vector of objective values w.r.t. maximization. More...
 
const R & maxObj (int i) const
 
R & maxObj_w (int i)
 Returns objective value (w.r.t. maximization) of i 'th LPColBase in LPColSetBase. More...
 
const R & maxObj (const DataKey &k) const
 
R & maxObj_w (const DataKey &k)
 Returns objective value (w.r.t. maximization) of LPColBase with DataKey k in LPColSetBase. More...
 
const VectorBase< R > & lower () const
 
VectorBase< R > & lower_w ()
 Returns vector of lower bound values. More...
 
const R & lower (int i) const
 
R & lower_w (int i)
 Returns lower bound of i 'th LPColBase in LPColSetBase. More...
 
const R & lower (const DataKey &k) const
 
R & lower_w (const DataKey &k)
 Returns lower bound of LPColBase with DataKey k in LPColSetBase. More...
 
const VectorBase< R > & upper () const
 
VectorBase< R > & upper_w ()
 Returns vector of upper bound values. More...
 
const R & upper (int i) const
 
R & upper_w (int i)
 Returns upper bound of i 'th LPColBase in LPColSetBase. More...
 
const R & upper (const DataKey &k) const
 
R & upper_w (const DataKey &k)
 Returns upper bound of LPColBase with DataKey k in LPColSetBase. More...
 
SVectorBase< R > & colVector_w (int i)
 
const SVectorBase< R > & colVector (int i) const
 Returns colVector of i 'th LPColBase in LPColSetBase. More...
 
SVectorBase< R > & colVector_w (const DataKey &k)
 Returns writeable colVector of LPColBase with DataKey k in LPColSetBase. More...
 
const SVectorBase< R > & colVector (const DataKey &k) const
 Returns colVector of LPColBase with DataKey k in LPColSetBase. More...
 
DataKey key (int i) const
 Returns DataKey of i 'th LPColBase in LPColSetBase. More...
 
int number (const DataKey &k) const
 Returns number of LPColBase with DataKey k in LPColSetBase. More...
 
bool has (const DataKey &k) const
 Does DataKey k belong to LPColSetBase ? More...
 
Extension

All extension methods come with two signatures, one of which providing a parameter to return the assigned DataKey(s). See DataSet for a more detailed description. All extension methods are designed to automatically reallocate memory if required.

void add (const LPColBase< R > &pcol)
 
void add (DataKey &pkey, const LPColBase< R > &pcol)
 Adds p pcol to LPColSetBase. More...
 
void add (const R &pobj, const R &plower, const SVectorBase< R > &pcolVector, const R &pupper, const int &pscaleExp=0)
 
void add (DataKey &newkey, const R &obj, const R &newlower, const SVectorBase< R > &newcolVector, const R &newupper, const int &newscaleExp=0)
 Adds LPColBase consisting of objective value obj, lower bound lower, column vector colVector and upper bound upper to LPColSetBase. More...
 
template<class S >
void add (const S *obj, const S *lowerValue, const S *colValues, const int *colIndices, int colSize, const S *upperValue)
 Adds LPColBase consisting of left hand side lhs, column vector colVector, and right hand side rhs to LPColSetBase. More...
 
template<class S >
void add (DataKey &newkey, const S *objValue, const S *lowerValue, const S *colValues, const int *colIndices, int colSize, const S *upperValue)
 Adds LPColBase consisting of left hand side lhs, column vector colVector, and right hand side rhs to LPColSetBase, with DataKey key. More...
 
void add (const LPColSetBase< R > &newset)
 
void add (DataKey keys[], const LPColSetBase< R > &newset)
 Adds all LPColBases of set to LPColSetBase. More...
 
void xtend (int n, int newmax)
 Extends column n to fit newmax nonzeros. More...
 
void xtend (const DataKey &pkey, int pnewmax)
 Extends column with DataKey key to fit newmax nonzeros. More...
 
void add2 (const DataKey &k, int n, const int idx[], const R val[])
 
void add2 (int i, int n, const int idx[], const R val[])
 Adds n nonzero (idx, val)-pairs to i 'th colVector. More...
 
template<class S >
void add2 (int i, int n, const int idx[], const S val[])
 Adds n nonzero (idx, val)-pairs to i 'th colVector. More...
 
SVectorBase< R > & create (int pnonzeros=0, const R &pobj=1, const R &plw=0, const R &pupp=1, const int &pscaleExp=0)
 
SVectorBase< R > & create (DataKey &newkey, int nonzeros=0, const R &obj=1, const R &newlow=0, const R &newup=1, const int &newscaleExp=0)
 Creates new LPColBase with specified arguments and returns a reference to its column vector. More...
 
Shrinking

See DataSet for a description of the renumbering of the remaining LPColBases in a LPColSetBase after the call of a removal method.

void remove (int i)
 Removes i 'th LPColBase. More...
 
void remove (const DataKey &k)
 Removes LPColBase with DataKey k. More...
 
void remove (int perm[])
 Removes multiple elements. More...
 
void remove (const int nums[], int n)
 Removes LPColBases with numbers nums, where n is the length of the array nums. More...
 
void remove (const int nums[], int n, int *perm)
 Removes LPColBases with numbers nums, where n is the length of the array nums, and stores the index permutation in array perm. More...
 
void clear ()
 Removes all LPColBases from the set. More...
 
Memory Management

See SVSet for a description of the memory management methods.

void reMax (int newmax=0)
 Reallocates memory to be able to store newmax LPColBases. More...
 
int memSize () const
 Returns used nonzero memory. More...
 
int memMax () const
 Returns length of nonzero memory. More...
 
void memRemax (int newmax)
 Resets length of nonzero memory. More...
 
void memPack ()
 Garbage collection in nonzero memory. More...
 
Miscellaneous
bool isConsistent () const
 Checks consistency. More...
 
Constructors / Destructors
 LPColSetBase (int pmax=-1, int pmemmax=-1)
 Default constructor. More...
 
LPColSetBase< R > & operator= (const LPColSetBase< R > &rs)
 Assignment operator. More...
 
template<class S >
LPColSetBase< R > & operator= (const LPColSetBase< S > &rs)
 Assignment operator. More...
 
 LPColSetBase (const LPColSetBase< R > &rs)
 Copy constructor. More...
 
template<class S >
 LPColSetBase (const LPColSetBase< S > &rs)
 Copy constructor. More...
 
virtual ~LPColSetBase ()
 Destructor. More...
 

Protected Member Functions

Protected helpers
const SVSetBase< R > * colSet () const
 Returns the complete SVSetBase. More...
 
- Protected Member Functions inherited from SVSetBase< R >
void add (const SVectorBase< R > &svec)
 Adds svec to the set. More...
 
void add (DataKey &nkey, const SVectorBase< R > &svec)
 Adds svec to SVSetBase. More...
 
template<class S >
void add (DataKey &nkey, const S *rowValues, const int *rowIndices, int rowSize)
 Adds svec to SVSetBase. More...
 
void add (const SVectorBase< R > svec[], int n)
 Adds all n SVectorBases in the array svec to the set. More...
 
void add (DataKey nkey[], const SVectorBase< R > svec[], int n)
 Adds n SVectorBases to SVSetBase. More...
 
template<class S >
void add (const SVSetBase< S > &pset)
 Adds all SVectorBases in pset to SVSetBase. More...
 
template<class S >
void add (DataKey nkey[], const SVSetBase< S > &pset)
 Adds all SVectorBases of pset to SVSetBase. More...
 
SVectorBase< R > * create (int idxmax=0)
 Creates new SVectorBase in set. More...
 
SVectorBase< R > * create (DataKey &nkey, int idxmax=-1)
 Creates new SVectorBase in set. More...
 
void xtend (SVectorBase< R > &svec, int newmax)
 Extends svec to fit newmax nonzeros. More...
 
void add2 (SVectorBase< R > &svec, int idx, R val)
 Adds nonzero (idx, val) to svec of this SVSetBase. More...
 
void add2 (SVectorBase< R > &svec, int n, const int idx[], const R val[])
 Adds n nonzeros to svec of this SVSetBase. More...
 
template<class S >
void add2 (SVectorBase< R > &svec, int n, const int idx[], const S val[])
 Adds n nonzeros to svec of this SVSetBase. More...
 
void remove (const DataKey &removekey)
 Removes the vector with key removekey from the set. More...
 
void remove (int removenum)
 Removes the vector with number removenum from the set. More...
 
void remove (const SVectorBase< R > *svec)
 Removes one SVectorBase from set. More...
 
void remove (int perm[])
 Removes multiple elements. More...
 
void remove (const DataKey keys[], int n)
 Removes n SVectorBases from set. More...
 
void remove (const int nums[], int n)
 Removes n SVectorBases from set. More...
 
void remove (const DataKey keys[], int n, int *perm)
 
void remove (const int nums[], int n, int *perm)
 
void clear (int minNewSize=-1)
 Removes all SVectorBases from set. More...
 
SVectorBase< R > & operator[] (int n)
 Gets SVectorBase by number, writeable. More...
 
const SVectorBase< R > & operator[] (int n) const
 Gets SVectorBase by number. More...
 
SVectorBase< R > & operator[] (const DataKey &k)
 Gets SVectorBase by DataKey, writeable. More...
 
const SVectorBase< R > & operator[] (const DataKey &k) const
 Gets SVectorBase by DataKey. More...
 
int num () const
 Current number of SVectorBases. More...
 
int max () const
 Current maximum number of SVectorBases. More...
 
DataKey key (int n) const
 Gets DataKey of vector number. More...
 
DataKey key (const SVectorBase< R > *svec) const
 Gets DataKey of SVectorBase. More...
 
int number (const DataKey &k) const
 Gets vector number of DataKey. More...
 
int number (const SVectorBase< R > *svec) const
 Gets vector number of SVectorBase. More...
 
bool has (const DataKey &k) const
 True iff SVSetBase contains a SVectorBase for DataKey k. More...
 
bool has (int n) const
 True iff SVSetBase contains a SVectorBase for vector number n. More...
 
bool has (const SVectorBase< R > *svec) const
 Is an SVectorBase in the set? More...
 
int memSize () const
 Used nonzero memory. More...
 
int memMax () const
 Length of nonzero memory. More...
 
void memRemax (int newmax)
 Reset length of nonzero memory. More...
 
void memPack ()
 Garbage collection in nonzero memory. More...
 
void reMax (int newmax=0)
 Resets maximum number of SVectorBases. More...
 
bool isConsistent () const
 Consistency check. More...
 
 SVSetBase (int pmax=-1, int pmemmax=-1, double pfac=1.1, double pmemFac=1.2)
 Default constructor. More...
 
virtual ~SVSetBase ()
 Destructor. More...
 
SVSetBase< R > & operator= (const SVSetBase< R > &rhs)
 Assignment operator. More...
 
template<class S >
SVSetBase< R > & operator= (const SVSetBase< S > &rhs)
 Assignment operator. More...
 
 SVSetBase (const SVSetBase< R > &old)
 Copy constructor. More...
 
template<class S >
 SVSetBase (const SVSetBase< S > &old)
 Copy constructor. More...
 
- Protected Member Functions inherited from ClassArray< Nonzero< R > >
Nonzero< R > & operator[] (int n)
 Reference to n 'th element. More...
 
const Nonzero< R > & operator[] (int n) const
 Reference to n 'th const element. More...
 
Nonzero< R > & last ()
 Reference to last element. More...
 
const Nonzero< R > & last () const
 Reference to last const element. More...
 
Nonzero< R > * get_ptr ()
 Gets a C pointer to the data. More...
 
const Nonzero< R > * get_const_ptr () const
 Gets a const C pointer to the data. More...
 
void append (const Nonzero< R > &t)
 Appends element t. More...
 
void append (int n, const Nonzero< R > t[])
 Appends n elements from t. More...
 
void append (const ClassArray< Nonzero< R > > &t)
 Appends all elements from t. More...
 
void insert (int i, int n)
 Inserts n uninitialized elements before i 'th element. More...
 
void insert (int i, int n, const Nonzero< R > t[])
 Inserts n elements from t before i 'the element. More...
 
void insert (int i, const ClassArray< Nonzero< R > > &t)
 Inserts all elements from t before i 'th element. More...
 
void remove (int n=0, int m=1)
 Removes m elements starting at n. More...
 
void removeLast (int m=1)
 Removes m last elements. More...
 
void clear ()
 Removes all elements. More...
 
int size () const
 Returns number of elements. More...
 
void reSize (int newsize)
 Resets size to newsize. More...
 
int max () const
 Returns maximum number of elements. More...
 
ptrdiff_t reMax (int newMax=1, int newSize=-1)
 Resets maximum number of elements. More...
 
ClassArrayoperator= (const ClassArray &rhs)
 Assignment operator. More...
 
bool isConsistent () const
 Consistency check. More...
 
 ClassArray (const ClassArray &old)
 Copy constructor. More...
 
 ClassArray (int p_size=0, int p_max=0, double p_fac=1.2)
 Default constructor. More...
 
virtual ~ClassArray ()
 Destructor. More...
 

Protected Attributes

DataArray< int > scaleExp
 column scaling factors (stored as bitshift) More...
 
- Protected Attributes inherited from ClassArray< Nonzero< R > >
int thesize
 number of used elements in array data More...
 
int themax
 the length of array data and More...
 
Nonzero< R > * data
 the array of elements More...
 
double memFactor
 memory extension factor. More...
 

Private Attributes

Data
VectorBase< R > low
 vector of lower bounds. More...
 
VectorBase< R > up
 vector of upper bounds. More...
 
VectorBase< R > object
 vector of objective coefficients. More...
 

Friends

template<class S >
class LPColSetBase
 

Detailed Description

template<class R>
class soplex::LPColSetBase< R >

Set of LP columns.

Class LPColSetBase implements a set of LPColBase%s. Unless for memory limitations, any number of LPColBases may be added to an LPColSetBase. Single or multiple LPColBases may be added to an LPColSetBase, where each method add() comes with two different signatures. One with and one without a parameter, used for returning the DataKeys assigned to the new LPColBases by the set. See DataKey for a more detailed description of the concept of keys. For the concept of renumbering LPColBases within an LPColSetBase after removal of some LPColBases, see DataSet.

See also
DataSet, DataKey

Definition at line 52 of file lpcolsetbase.h.

Constructor & Destructor Documentation

◆ LPColSetBase() [1/3]

LPColSetBase ( int  pmax = -1,
int  pmemmax = -1 
)
explicit

Default constructor.

The user can specify the initial maximum number of columns max and the initial maximum number of nonzero entries memmax. If these parameters are omitted, a default size is used. However, one can add an arbitrary number of columns to the LPColSetBase, which may result in automated memory realllocation.

Definition at line 603 of file lpcolsetbase.h.

◆ LPColSetBase() [2/3]

LPColSetBase ( const LPColSetBase< R > &  rs)

Copy constructor.

Definition at line 645 of file lpcolsetbase.h.

◆ LPColSetBase() [3/3]

LPColSetBase ( const LPColSetBase< S > &  rs)

Copy constructor.

Definition at line 657 of file lpcolsetbase.h.

◆ ~LPColSetBase()

virtual ~LPColSetBase ( )
virtual

Destructor.

Definition at line 668 of file lpcolsetbase.h.

Member Function Documentation

◆ add() [1/8]

◆ add() [2/8]

void add ( DataKey pkey,
const LPColBase< R > &  pcol 
)

Adds p pcol to LPColSetBase.

Definition at line 271 of file lpcolsetbase.h.

◆ add() [3/8]

void add ( const R &  pobj,
const R &  plower,
const SVectorBase< R > &  pcolVector,
const R &  pupper,
const int &  pscaleExp = 0 
)

Definition at line 277 of file lpcolsetbase.h.

◆ add() [4/8]

void add ( DataKey newkey,
const R &  obj,
const R &  newlower,
const SVectorBase< R > &  newcolVector,
const R &  newupper,
const int &  newscaleExp = 0 
)

Adds LPColBase consisting of objective value obj, lower bound lower, column vector colVector and upper bound upper to LPColSetBase.

Definition at line 285 of file lpcolsetbase.h.

◆ add() [5/8]

void add ( const S *  obj,
const S *  lowerValue,
const S *  colValues,
const int *  colIndices,
int  colSize,
const S *  upperValue 
)

Adds LPColBase consisting of left hand side lhs, column vector colVector, and right hand side rhs to LPColSetBase.

Definition at line 306 of file lpcolsetbase.h.

◆ add() [6/8]

void add ( DataKey newkey,
const S *  objValue,
const S *  lowerValue,
const S *  colValues,
const int *  colIndices,
int  colSize,
const S *  upperValue 
)

Adds LPColBase consisting of left hand side lhs, column vector colVector, and right hand side rhs to LPColSetBase, with DataKey key.

Definition at line 316 of file lpcolsetbase.h.

◆ add() [7/8]

void add ( const LPColSetBase< R > &  newset)

Definition at line 334 of file lpcolsetbase.h.

◆ add() [8/8]

void add ( DataKey  keys[],
const LPColSetBase< R > &  newset 
)

Adds all LPColBases of set to LPColSetBase.

Definition at line 358 of file lpcolsetbase.h.

◆ add2() [1/3]

void add2 ( const DataKey k,
int  n,
const int  idx[],
const R  val[] 
)

◆ add2() [2/3]

void add2 ( int  i,
int  n,
const int  idx[],
const R  val[] 
)

Adds n nonzero (idx, val)-pairs to i 'th colVector.

Definition at line 387 of file lpcolsetbase.h.

◆ add2() [3/3]

void add2 ( int  i,
int  n,
const int  idx[],
const S  val[] 
)

Adds n nonzero (idx, val)-pairs to i 'th colVector.

Definition at line 394 of file lpcolsetbase.h.

◆ clear()

void clear ( )

Removes all LPColBases from the set.

Definition at line 514 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::clear().

◆ colSet()

const SVSetBase<R>* colSet ( ) const
protected

Returns the complete SVSetBase.

Definition at line 77 of file lpcolsetbase.h.

◆ colVector() [1/2]

const SVectorBase<R>& colVector ( int  i) const

Returns colVector of i 'th LPColBase in LPColSetBase.

Definition at line 217 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::colVector().

◆ colVector() [2/2]

const SVectorBase<R>& colVector ( const DataKey k) const

Returns colVector of LPColBase with DataKey k in LPColSetBase.

Definition at line 229 of file lpcolsetbase.h.

◆ colVector_w() [1/2]

SVectorBase<R>& colVector_w ( int  i)

◆ colVector_w() [2/2]

SVectorBase<R>& colVector_w ( const DataKey k)

Returns writeable colVector of LPColBase with DataKey k in LPColSetBase.

Definition at line 223 of file lpcolsetbase.h.

◆ create() [1/2]

SVectorBase<R>& create ( int  pnonzeros = 0,
const R &  pobj = 1,
const R &  plw = 0,
const R &  pupp = 1,
const int &  pscaleExp = 0 
)

Definition at line 400 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::create().

◆ create() [2/2]

SVectorBase<R>& create ( DataKey newkey,
int  nonzeros = 0,
const R &  obj = 1,
const R &  newlow = 0,
const R &  newup = 1,
const int &  newscaleExp = 0 
)

Creates new LPColBase with specified arguments and returns a reference to its column vector.

Definition at line 408 of file lpcolsetbase.h.

◆ has()

bool has ( const DataKey k) const

Does DataKey k belong to LPColSetBase ?

Definition at line 247 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::has().

◆ isConsistent()

bool isConsistent ( ) const

◆ key()

DataKey key ( int  i) const

Returns DataKey of i 'th LPColBase in LPColSetBase.

Definition at line 235 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::add().

◆ lower() [1/3]

const VectorBase<R>& lower ( ) const

Definition at line 139 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::add(), and SPxLPBase< BP >::lower().

◆ lower() [2/3]

const R& lower ( int  i) const

Definition at line 151 of file lpcolsetbase.h.

◆ lower() [3/3]

const R& lower ( const DataKey k) const

Definition at line 163 of file lpcolsetbase.h.

◆ lower_w() [1/3]

VectorBase<R>& lower_w ( )

◆ lower_w() [2/3]

R& lower_w ( int  i)

Returns lower bound of i 'th LPColBase in LPColSetBase.

Definition at line 157 of file lpcolsetbase.h.

◆ lower_w() [3/3]

R& lower_w ( const DataKey k)

Returns lower bound of LPColBase with DataKey k in LPColSetBase.

Definition at line 169 of file lpcolsetbase.h.

◆ max()

int max ( ) const

Returns maximum number of LPColBases currently fitting into LPColSetBase.

Definition at line 97 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::reMax().

◆ maxObj() [1/3]

const VectorBase<R>& maxObj ( ) const

◆ maxObj() [2/3]

const R& maxObj ( int  i) const

Definition at line 115 of file lpcolsetbase.h.

◆ maxObj() [3/3]

const R& maxObj ( const DataKey k) const

Definition at line 127 of file lpcolsetbase.h.

◆ maxObj_w() [1/3]

◆ maxObj_w() [2/3]

R& maxObj_w ( int  i)

Returns objective value (w.r.t. maximization) of i 'th LPColBase in LPColSetBase.

Definition at line 121 of file lpcolsetbase.h.

◆ maxObj_w() [3/3]

R& maxObj_w ( const DataKey k)

Returns objective value (w.r.t. maximization) of LPColBase with DataKey k in LPColSetBase.

Definition at line 133 of file lpcolsetbase.h.

◆ memMax()

int memMax ( ) const

Returns length of nonzero memory.

Definition at line 548 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::added2Set().

◆ memPack()

void memPack ( )

Garbage collection in nonzero memory.

Definition at line 560 of file lpcolsetbase.h.

◆ memRemax()

void memRemax ( int  newmax)

Resets length of nonzero memory.

Definition at line 554 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::addCols().

◆ memSize()

int memSize ( ) const

Returns used nonzero memory.

Definition at line 542 of file lpcolsetbase.h.

◆ num()

◆ number()

◆ operator=() [1/2]

LPColSetBase<R>& operator= ( const LPColSetBase< R > &  rs)

Assignment operator.

Definition at line 610 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::operator=().

◆ operator=() [2/2]

LPColSetBase<R>& operator= ( const LPColSetBase< S > &  rs)

Assignment operator.

Definition at line 628 of file lpcolsetbase.h.

◆ reMax()

void reMax ( int  newmax = 0)

Reallocates memory to be able to store newmax LPColBases.

Definition at line 532 of file lpcolsetbase.h.

◆ remove() [1/5]

void remove ( int  i)

Removes i 'th LPColBase.

Definition at line 439 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::doRemoveCol(), and SPxLPBase< BP >::doRemoveCols().

◆ remove() [2/5]

void remove ( const DataKey k)

Removes LPColBase with DataKey k.

Definition at line 453 of file lpcolsetbase.h.

◆ remove() [3/5]

void remove ( int  perm[])

Removes multiple elements.

Definition at line 459 of file lpcolsetbase.h.

◆ remove() [4/5]

void remove ( const int  nums[],
int  n 
)

Removes LPColBases with numbers nums, where n is the length of the array nums.

Definition at line 483 of file lpcolsetbase.h.

◆ remove() [5/5]

void remove ( const int  nums[],
int  n,
int *  perm 
)

Removes LPColBases with numbers nums, where n is the length of the array nums, and stores the index permutation in array perm.

Definition at line 490 of file lpcolsetbase.h.

◆ upper() [1/3]

const VectorBase<R>& upper ( ) const

Definition at line 175 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::add(), and SPxLPBase< BP >::upper().

◆ upper() [2/3]

const R& upper ( int  i) const

Definition at line 187 of file lpcolsetbase.h.

◆ upper() [3/3]

const R& upper ( const DataKey k) const

Definition at line 199 of file lpcolsetbase.h.

◆ upper_w() [1/3]

VectorBase<R>& upper_w ( )

◆ upper_w() [2/3]

R& upper_w ( int  i)

Returns upper bound of i 'th LPColBase in LPColSetBase.

Definition at line 193 of file lpcolsetbase.h.

◆ upper_w() [3/3]

R& upper_w ( const DataKey k)

Returns upper bound of LPColBase with DataKey k in LPColSetBase.

Definition at line 205 of file lpcolsetbase.h.

◆ xtend() [1/2]

void xtend ( int  n,
int  newmax 
)

Extends column n to fit newmax nonzeros.

Definition at line 369 of file lpcolsetbase.h.

Referenced by SPxLPBase< BP >::addRows(), and SPxLPBase< BP >::doAddRows().

◆ xtend() [2/2]

void xtend ( const DataKey pkey,
int  pnewmax 
)

Extends column with DataKey key to fit newmax nonzeros.

Definition at line 375 of file lpcolsetbase.h.

Friends And Related Function Documentation

◆ LPColSetBase

friend class LPColSetBase
friend

Definition at line 54 of file lpcolsetbase.h.

Member Data Documentation

◆ low

VectorBase<R> low
private

◆ object

VectorBase<R> object
private

vector of objective coefficients.

Definition at line 64 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::maxObj(), LPColSetBase< Rational >::maxObj_w(), and LPColSetBase< Rational >::operator=().

◆ scaleExp

DataArray< int > scaleExp
protected

column scaling factors (stored as bitshift)

Definition at line 70 of file lpcolsetbase.h.

Referenced by LPColSetBase< Rational >::add(), and LPColSetBase< Rational >::operator=().

◆ up

VectorBase<R> up
private