115 int combineWithDenseCoreRow(
double *dr,
const int nels,
const int *inds,
const double *dels,
double *dest_dels,
int *dest_indx);
155 return this->
strt_[istart+1] - this->
strt_[istart];
247 SmiCoreData(
CoinMpsIO *cMps,
int nstag,
int *cstag,
int *rstag,
int *integerIndices = 0,
int integerLength = 0,
int *binaryIndices = 0,
int binaryLength = 0);
248 SmiCoreData(
OsiSolverInterface *osi,
int nstag,
int *cstag,
int *rstag,
int *integerIndices = 0,
int integerLength = 0,
int *binaryIndices = 0,
int binaryLength = 0);
264 void gutsOfConstructor(
int nrow,
int ncol,
int nstag,
int *cstag,
int *rstag,
CoinPackedMatrix *matrix,
CoinPackedVector *dclo,
CoinPackedVector *dcup,
CoinPackedVector *dobj,
CoinPackedVector *drlo,
CoinPackedVector *drup,
int* integerIndices = 0,
int integerLength = 0,
int* binaryIndices = 0,
int binaryLength = 0);
303 #endif //#define SmiScnData_HPP
const double * getRowUpperElements()
void copyColUpper(double *dcup)
const int getLength(int istart)
void setCoreCombineRule(SmiCoreCombineRule *r)
const int * getRowIndices(int irow)
int getRowStart(SmiStageIndex t)
int * getIntegerIndices()
const int * getRowStarts(int irow)
void copyColLower(double *dclo)
const double * getRowElements(int irow)
int getRowExternalIndex(int i)
const int * getColLowerIndices()
void combineWithCoreDoubleArray(double *d_out, const CoinPackedVector &cpv, int o)
const int * getRowUpperIndices()
void copyObjective(double *dobj)
const double * getObjectiveElements()
SmiCoreCombineRule * getCoreCombineRule()
SmiCoreData(CoinMpsIO *cMps, int nstag, int *cstag, int *rstag, int *integerIndices=0, int integerLength=0, int *binaryIndices=0, int binaryLength=0)
const int getObjectiveLength()
SmiNodeData(SmiStageIndex stg, SmiCoreData *core, const CoinPackedMatrix *const matrix, CoinPackedVector *dclo, CoinPackedVector *dcup, CoinPackedVector *dobj, CoinPackedVector *drlo, CoinPackedVector *drup)
std::vector< int > getIntCols(int stage)
const double * getDenseColUpper(SmiStageIndex t)
const double * getDenseRowLower(SmiStageIndex t)
double * getDenseRow(int i)
const double * getDenseObjCoefficients(SmiStageIndex t)
const int * getColUpperIndices()
int * getMutableRowIndices(int irow)
int getNumRows(SmiStageIndex t)
const int getNumMatrixElements()
Sparse Matrix Base Class.
std::vector< std::vector< int > > intColsStagewise
void addQuadraticObjectiveToCore(int *starts, int *indx, double *dels)
Adds QP data after the constructor has been called.
const int * getIndices(int istart)
char ** getColumnNames(bool strictFormat=true)
const double * getColLowerElements()
const int * getObjectiveIndices()
CoinPackedVector * combineWithCoreRow(CoinPackedVector *cr, CoinPackedVector *nr)
void copyRowLower(double *drlo, SmiStageIndex t)
const int getRowLowerLength()
SmiCoreCombineRule * combineRule_
SmiQuadraticData * getQdata()
const double * getDenseRowUpper(SmiStageIndex t)
int getColExternalIndex(int i)
const double * getElements(int istart)
void copyRowLower(double *drlo)
std::vector< SmiNodeData * > nodes_
void addQuadraticObjective(int stage, SmiCoreData *smicore, SmiQuadraticData *sqdata)
void copyRowUpper(double *drup, SmiStageIndex t)
const int * getRowLowerIndices()
OsiSolverInterface * generateCoreProblem(OsiSolverInterface *osi)
int getColInternalIndex(int i)
Abstract Base Class for describing an interface to a solver.
void gutsOfConstructor(int nrow, int ncol, int nstag, int *cstag, int *rstag, CoinPackedMatrix *matrix, CoinPackedVector *dclo, CoinPackedVector *dcup, CoinPackedVector *dobj, CoinPackedVector *drlo, CoinPackedVector *drup, int *integerIndices=0, int integerLength=0, int *binaryIndices=0, int binaryLength=0)
const double * getRowLowerElements()
This deals with combining Core and Stochastic data.
int getColStart(SmiStageIndex t)
int combineWithDenseCoreRow(double *dr, CoinPackedVector *cpv, double *dels, int *indx)
const double * getDenseColLower(SmiStageIndex t)
void copyColLower(double *dclo, SmiStageIndex t)
const double * getColUpperElements()
std::vector< double * > pDenseRow_
SmiQuadraticDataDC * nqdata_
int getNumCols(SmiStageIndex t)
const int getColLowerLength()
SmiNodeData * getNode(SmiStageIndex t)
std::map< int, CoinPackedVector * > SmiRowMap
int getRowInternalIndex(int i)
void copyObjective(double *dobj, SmiStageIndex t)
void copyColUpper(double *dcup, SmiStageIndex t)
void copyRowUpper(double *drup)
const int getRowUpperLength()
const int getRowLength(int irow)
const int getColUpperLength()
double * getMutableRowElements(int irow)
std::map< int, double * > SmiDenseRowMap
void setColumnNames(char **namesStrict, char **namesFree)