reader_mps.c File Reference Detailed Description(extended) MPS file reader This reader/writer handles MPS files in extended MPS format, as it is used by CPLEX. In the extended format the limits on variable name lengths and coefficients are considerably relaxed. The columns in the format are then separated by whitespaces. Definition in file reader_mps.c. #include <assert.h> #include <string.h> #include <ctype.h> #include "scip/reader_mps.h" #include "scip/cons_knapsack.h" #include "scip/cons_indicator.h" #include "scip/cons_linear.h" #include "scip/cons_logicor.h" #include "scip/cons_setppc.h" #include "scip/cons_varbound.h" #include "scip/cons_and.h" #include "scip/cons_sos1.h" #include "scip/cons_sos2.h" #include "scip/cons_quadratic.h" #include "scip/cons_soc.h" #include "scip/cons_bounddisjunction.h" #include "scip/pub_misc.h" Go to the source code of this file.
Macro Definition Documentation
Definition at line 54 of file reader_mps.c. Referenced by SCIP_DECL_READERCOPY(), SCIP_DECL_READERFREE(), SCIP_DECL_READERREAD(), SCIP_DECL_READERWRITE(), and SCIPincludeReaderMps().
Definition at line 55 of file reader_mps.c. Referenced by SCIPincludeReaderMps().
Definition at line 56 of file reader_mps.c. Referenced by SCIPincludeReaderMps().
should possible "and" constraint be linearized when writing the mps file? Definition at line 58 of file reader_mps.c. Referenced by SCIPincludeReaderMps().
should an aggregated linearization for and constraints be used? Definition at line 61 of file reader_mps.c. Referenced by SCIPincludeReaderMps().
Definition at line 67 of file reader_mps.c. Referenced by mpsinputReadLine().
Definition at line 68 of file reader_mps.c. Referenced by checkConsnames(), checkVarnames(), mpsinputSetObjname(), mpsinputSetProbname(), printRecord(), printStart(), readBounds(), readCols(), readIndicators(), readRanges(), readRhs(), readSOS(), and SCIP_DECL_READERWRITE().
Definition at line 69 of file reader_mps.c. Referenced by printBoundSection(), printEntry(), printRecord(), and SCIP_DECL_READERWRITE().
Definition at line 70 of file reader_mps.c. Referenced by computeFieldWidth().
Definition at line 72 of file reader_mps.c. Referenced by patchField().
Definition at line 73 of file reader_mps.c. Referenced by clearFrom(), mpsinputReadLine(), and patchField(). Typedef Documentation
Definition at line 102 of file reader_mps.c.
Definition at line 128 of file reader_mps.c.
Definition at line 139 of file reader_mps.c. Enumeration Type Documentation
enum containing all mps sections
Definition at line 83 of file reader_mps.c. Function Documentation
creates the mps input structure
Definition at line 143 of file reader_mps.c. References FALSE, MPS_NAME, mpsinputFree(), NULL, SCIP_CALL, SCIP_OBJSENSE_MINIMIZE, SCIP_OKAY, SCIPallocMemory, and SCIPgetBoolParam(). Referenced by readMps(). free the mps input structure
Definition at line 181 of file reader_mps.c. References mpsinputSection(), and SCIPfreeMemory. Referenced by mpsinputCreate(), and readMps().
returns the current section
Definition at line 191 of file reader_mps.c. References mpsinputField0(), and NULL. Referenced by mpsinputFree(), readMps(), and readRows().
return the current value of field 0
Definition at line 202 of file reader_mps.c. References mpsinputField1(), and NULL. Referenced by mpsinputSection(), readBounds(), readCols(), readIndicators(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
return the current value of field 1
Definition at line 213 of file reader_mps.c. References mpsinputField2(), and NULL. Referenced by mpsinputField0(), readBounds(), readCols(), readIndicators(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
return the current value of field 2
Definition at line 224 of file reader_mps.c. References mpsinputField3(), and NULL. Referenced by mpsinputField1(), readBounds(), readCols(), readIndicators(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
return the current value of field 3
Definition at line 235 of file reader_mps.c. References mpsinputField4(), and NULL. Referenced by mpsinputField2(), readBounds(), readCols(), readIndicators(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), and readSOS().
return the current value of field 4
Definition at line 246 of file reader_mps.c. References mpsinputField5(), and NULL. Referenced by mpsinputField3(), readBounds(), readCols(), readIndicators(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), and readSOS().
return the current value of field 5
Definition at line 257 of file reader_mps.c. References mpsinputObjname(), and NULL. Referenced by mpsinputField4(), readCols(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), and readSOS().
returns the objective name
Definition at line 281 of file reader_mps.c. References mpsinputObjsense(), and NULL. Referenced by mpsinputField5(), readCols(), readRhs(), and readRows().
returns the objective sense
Definition at line 292 of file reader_mps.c. References mpsinputHasError(), NULL, and SCIP_Bool. Referenced by mpsinputObjname(), readMps(), and readQMatrix(). returns if an error was detected
Definition at line 303 of file reader_mps.c. References mpsinputIsInteger(), NULL, and SCIP_Bool. Referenced by mpsinputObjsense(), and readMps(). returns the value of the Bool "is integer" in the mps input
Definition at line 314 of file reader_mps.c. References mpsinputSetSection(), and NULL. Referenced by mpsinputHasError(), and readCols().
set the section in the mps input structure to given section
Definition at line 325 of file reader_mps.c. References mpsinputSetProbname(), and NULL. Referenced by mpsinputIsInteger(), readBounds(), readCols(), readIndicators(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
set the problem name in the mps input structure to given problem name
Definition at line 337 of file reader_mps.c. References MPS_MAX_NAMELEN, mpsinputSetObjname(), NULL, and SCIPmemccpy(). Referenced by mpsinputSetSection(), and readName().
set the objective name in the mps input structure to given objective name
Definition at line 351 of file reader_mps.c. References MPS_MAX_NAMELEN, mpsinputSetObjsense(), NULL, and SCIPmemccpy(). Referenced by mpsinputSetProbname(), readObjname(), and readRows().
set the objective sense in the mps input structure to given objective sense
Definition at line 365 of file reader_mps.c. References mpsinputSyntaxerror(), and NULL. Referenced by mpsinputSetObjname(), and readObjsen().
Definition at line 376 of file reader_mps.c. References MPS_ENDATA, mpsinputEntryIgnored(), NULL, SCIPerrorMessage, and TRUE. Referenced by mpsinputSetObjsense(), readBounds(), readCols(), readIndicators(), readMps(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
method post a ignore message
Definition at line 389 of file reader_mps.c. References clearFrom(), NULL, and SCIPverbMessage(). Referenced by mpsinputSyntaxerror(), readBounds(), readCols(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
fill the line from
Definition at line 411 of file reader_mps.c. References BLANK, and patchField(). Referenced by mpsinputEntryIgnored(), and mpsinputReadLine().
change all blanks inside a field to PATCH_CHAR.
Definition at line 425 of file reader_mps.c. References BLANK, mpsinputReadLine(), PATCH_CHAR, and SCIP_Bool. Referenced by clearFrom(), and mpsinputReadLine(). read a mps format data line and parse the fields.
Definition at line 446 of file reader_mps.c. References BLANK, clearFrom(), FALSE, MPS_BOUNDS, MPS_COLUMNS, MPS_MAX_LINELEN, MPS_RANGES, MPS_RHS, mpsinputInsertField4(), NULL, patchField(), SCIP_Bool, SCIPdebugMessage, SCIPfgets(), SCIPstrtok(), and TRUE. Referenced by patchField(), readBounds(), readCols(), readIndicators(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), and readSOS().
Insert
Definition at line 622 of file reader_mps.c. References mpsinputInsertName(), and NULL. Referenced by mpsinputReadLine(), and readBounds(). Insert
Definition at line 636 of file reader_mps.c. References NULL, and readName(). Referenced by mpsinputInsertField4(), readBounds(), readRanges(), and readRhs().
Process NAME section.
Definition at line 660 of file reader_mps.c. References MPS_LAZYCONS, MPS_OBJNAME, MPS_OBJSEN, MPS_ROWS, MPS_USERCUTS, mpsinputField0(), mpsinputField1(), mpsinputReadLine(), mpsinputSetProbname(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readObjsen(), SCIP_OKAY, and SCIPdebugMessage. Referenced by mpsinputInsertName(), and readMps().
Process OBJSEN section. This Section is a CPLEX extension.
Definition at line 707 of file reader_mps.c. References MPS_LAZYCONS, MPS_OBJNAME, MPS_ROWS, MPS_USERCUTS, mpsinputField0(), mpsinputField1(), mpsinputReadLine(), mpsinputSetObjsense(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readObjname(), SCIP_OBJSENSE_MAXIMIZE, SCIP_OBJSENSE_MINIMIZE, SCIP_OKAY, and SCIPdebugMessage. Referenced by readMps(), and readName().
Process OBJNAME section. This Section is a CPLEX extension.
Definition at line 759 of file reader_mps.c. References MPS_LAZYCONS, MPS_ROWS, MPS_USERCUTS, mpsinputField0(), mpsinputField1(), mpsinputReadLine(), mpsinputSetObjname(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readRows(), SCIP_OKAY, and SCIPdebugMessage. Referenced by readMps(), and readObjsen().
Process ROWS, USERCUTS, or LAZYCONS section.
Definition at line 797 of file reader_mps.c. References FALSE, MPS_COLUMNS, MPS_LAZYCONS, MPS_ROWS, MPS_USERCUTS, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputObjname(), mpsinputReadLine(), mpsinputSection(), mpsinputSetObjname(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readCols(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_VERBLEVEL_NORMAL, SCIPaddCons(), SCIPcreateConsLinear(), SCIPdebugMessage, SCIPfindCons(), SCIPinfinity(), SCIPreleaseCons(), and TRUE. Referenced by readMps(), and readObjname().
Process COLUMNS section.
Definition at line 885 of file reader_mps.c. References MPS_MAX_NAMELEN, MPS_RHS, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputIsInteger(), mpsinputObjname(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readRhs(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_BINARY, SCIP_VARTYPE_CONTINUOUS, SCIP_VERBLEVEL_FULL, SCIPaddCoefLinear(), SCIPaddVar(), SCIPchgVarObj(), SCIPcreateVar(), SCIPdebugMessage, SCIPfindCons(), SCIPinfinity(), SCIPisZero(), SCIPmemccpy(), and SCIPreleaseVar(). Referenced by readMps(), and readRows().
Process RHS section.
Definition at line 992 of file reader_mps.c. References FALSE, MPS_BOUNDS, MPS_ENDATA, MPS_INDICATORS, MPS_MAX_NAMELEN, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, MPS_RANGES, MPS_SOS, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputInsertName(), mpsinputObjname(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readRanges(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VERBLEVEL_NORMAL, SCIPaddOrigObjoffset(), SCIPchgLhsLinear(), SCIPchgRhsLinear(), SCIPdebugMessage, SCIPfindCons(), SCIPgetLhsLinear(), SCIPgetRhsLinear(), SCIPisInfinity(), SCIPisZero(), SCIPmemccpy(), and SCIPwarningMessage(). Referenced by readCols(), and readMps().
Process RANGES section
Definition at line 1139 of file reader_mps.c. References FALSE, MPS_BOUNDS, MPS_ENDATA, MPS_INDICATORS, MPS_MAX_NAMELEN, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, MPS_SOS, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputInsertName(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readBounds(), REALABS, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VERBLEVEL_NORMAL, SCIPchgLhsLinear(), SCIPchgRhsLinear(), SCIPdebugMessage, SCIPfindCons(), SCIPgetLhsLinear(), SCIPgetRhsLinear(), SCIPisEQ(), SCIPisInfinity(), SCIPmemccpy(), and SCIPwarningMessage().
Process BOUNDS section.
Definition at line 1279 of file reader_mps.c. References FALSE, MPS_ENDATA, MPS_INDICATORS, MPS_MAX_NAMELEN, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, MPS_SOS, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputInsertField4(), mpsinputInsertName(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readSOS(), SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_BINARY, SCIP_VARTYPE_CONTINUOUS, SCIP_VARTYPE_IMPLINT, SCIP_VARTYPE_INTEGER, SCIP_VERBLEVEL_NORMAL, SCIPaddCons(), SCIPaddVar(), SCIPallocBufferArray, SCIPcalcMemGrowSize(), SCIPchgVarLb(), SCIPchgVarType(), SCIPchgVarUb(), SCIPcreateConsBounddisjunction(), SCIPcreateVar(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPfindVar(), SCIPfreeBufferArrayNull, SCIPinfinity(), SCIPisFeasEQ(), SCIPisFeasIntegral(), SCIPisGT(), SCIPisInfinity(), SCIPisLT(), SCIPisZero(), SCIPmemccpy(), SCIPreallocBufferArray, SCIPreleaseCons(), SCIPreleaseVar(), SCIPsnprintf(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetType(), SCIPvarGetUbGlobal(), SCIPwarningMessage(), and TRUE. Referenced by readMps(), and readRanges().
Process SOS section. We read the SOS section, which is a nonstandard section introduced by CPLEX.
Definition at line 1658 of file reader_mps.c. References FALSE, MPS_ENDATA, MPS_INDICATORS, MPS_MAX_NAMELEN, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readQMatrix(), SCIP_Bool, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIP_VERBLEVEL_NORMAL, SCIPABORT, SCIPaddCons(), SCIPaddVarSOS1(), SCIPaddVarSOS2(), SCIPconsGetName(), SCIPcreateConsSOS1(), SCIPcreateConsSOS2(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPerrorMessage, SCIPfindVar(), SCIPmemccpy(), SCIPreleaseCons(), SCIPsnprintf(), SCIPvarGetName(), SCIPwarningMessage(), and TRUE. Referenced by readBounds(), and readMps().
Process QMATRIX or QUADOBJ section.
Definition at line 1846 of file reader_mps.c. References FALSE, MPS_ENDATA, MPS_INDICATORS, MPS_QCMATRIX, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputObjsense(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readQCMatrix(), SCIP_Bool, SCIP_CALL, SCIP_OBJSENSE_MINIMIZE, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_CONTINUOUS, SCIP_VERBLEVEL_NORMAL, SCIPaddCons(), SCIPaddVar(), SCIPallocBufferArray, SCIPcalcMemGrowSize(), SCIPconsGetName(), SCIPcreateConsQuadratic(), SCIPcreateVar(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPerrorMessage, SCIPfindVar(), SCIPfreeBufferArray, SCIPinfinity(), SCIPreallocBufferArray, SCIPreleaseCons(), SCIPreleaseVar(), SCIPvarGetName(), SCIPwarningMessage(), and TRUE.
Process QCMATRIX section. We read the QCMATRIX section, which is a nonstandard section introduced by CPLEX. We replace the corresponding linear constraint by a quadratic constraint which contains the original linear constraint plus the quadratic part specified in the QCMATRIX.
Definition at line 2048 of file reader_mps.c. References MPS_ENDATA, MPS_INDICATORS, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, mpsinputEntryIgnored(), mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputField5(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readIndicators(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VERBLEVEL_NORMAL, SCIPaddCons(), SCIPallocBufferArray, SCIPcalcMemGrowSize(), SCIPconsGetName(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPcreateConsQuadratic(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPdelCons(), SCIPerrorMessage, SCIPfindCons(), SCIPfindVar(), SCIPfreeBufferArray, SCIPgetLhsLinear(), SCIPgetNVarsLinear(), SCIPgetRhsLinear(), SCIPgetValsLinear(), SCIPgetVarsLinear(), SCIPreallocBufferArray, SCIPreleaseCons(), SCIPvarGetName(), and SCIPwarningMessage(). Referenced by readMps(), and readQMatrix().
Process INDICATORS section. We read the INDICATORS section, which is a nonstandard section introduced by CPLEX. Note that CPLEX does not allow ranged rows. If the linear constraints are equations or ranged rows, we generate two indicator constraints. The section has to come after the QMATRIX* sections.
Definition at line 2223 of file reader_mps.c. References FALSE, MPS_ENDATA, MPS_MAX_NAMELEN, mpsinputField0(), mpsinputField1(), mpsinputField2(), mpsinputField3(), mpsinputField4(), mpsinputReadLine(), mpsinputSetSection(), mpsinputSyntaxerror(), NULL, readMps(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_BINARY, SCIP_VARTYPE_CONTINUOUS, SCIP_VARTYPE_IMPLINT, SCIPaddCoefLinear(), SCIPaddCons(), SCIPaddVar(), SCIPallocBufferArray, SCIPchgLhsLinear(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconshdlrGetName(), SCIPcreateConsIndicator(), SCIPcreateConsIndicatorLinCons(), SCIPcreateVar(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPerrorMessage, SCIPfindCons(), SCIPfindVar(), SCIPfreeBufferArray, SCIPgetLhsLinear(), SCIPgetNegatedVar(), SCIPgetNVarsLinear(), SCIPgetRhsLinear(), SCIPgetValsLinear(), SCIPgetVarsLinear(), SCIPinfinity(), SCIPisInfinity(), SCIPisIntegral(), SCIPreleaseCons(), SCIPsnprintf(), SCIPvarGetType(), SCIPvarIsIntegral(), sign(), and TRUE. Referenced by readMps(), and readQCMatrix().
Read LP in "MPS File Format". A specification of the MPS format can be found at http://plato.asu.edu/ftp/mps_format.txt, ftp://ftp.caam.rice.edu/pub/people/bixby/miplib/mps_format, and in the CPLEX Reference Manual This routine should read all valid MPS format files. What it will not do, is to find all cases where a file is ill formed. If this happens it may complain and read nothing or read "something".
Definition at line 2459 of file reader_mps.c. References FALSE, MPS_BOUNDS, MPS_COLUMNS, MPS_ENDATA, MPS_INDICATORS, MPS_LAZYCONS, MPS_OBJNAME, MPS_OBJSEN, MPS_QCMATRIX, MPS_QMATRIX, MPS_QUADOBJ, MPS_RANGES, MPS_RHS, MPS_ROWS, MPS_SOS, MPS_USERCUTS, mpsinputCreate(), mpsinputFree(), mpsinputHasError(), mpsinputObjsense(), mpsinputSection(), mpsinputSyntaxerror(), NULL, readBounds(), readCols(), readIndicators(), readName(), readObjname(), readObjsen(), readQCMatrix(), readQMatrix(), readRanges(), readRhs(), readRows(), readSOS(), SCIP_Bool, SCIP_CALL, SCIP_CALL_TERMINATE, SCIP_DECL_HASHGETKEY(), SCIP_NOFILE, SCIP_OKAY, SCIP_READERROR, SCIPcreateProb(), SCIPerrorMessage, SCIPfclose(), SCIPfopen(), SCIPprintSysError(), SCIPsetObjsense(), and TRUE. Referenced by readIndicators(), and SCIP_DECL_READERREAD().
hash key retrieval function for variables Definition at line 2567 of file reader_mps.c. References SCIP_DECL_HASHKEYEQ(). Referenced by readMps().
returns TRUE iff the indices of both variables are equal Definition at line 2574 of file reader_mps.c. References FALSE, SCIP_DECL_HASHKEYVAL(), and TRUE. Referenced by SCIP_DECL_HASHGETKEY().
returns the hash value of the key Definition at line 2583 of file reader_mps.c. References computeFieldWidth(), and SCIPvarGetIndex(). Referenced by SCIP_DECL_HASHKEYEQ().
computes the field width such that the output file is nicely arranged
Definition at line 2592 of file reader_mps.c. References MAX, MIN, MPS_MAX_FIELDLEN, and printRecord(). Referenced by printRecord(), printStart(), and SCIP_DECL_HASHKEYVAL().
output two strings in columns 1 and 2 with computed widths
Definition at line 2603 of file reader_mps.c. References computeFieldWidth(), MPS_MAX_NAMELEN, MPS_MAX_VALUELEN, NULL, printStart(), SCIPinfoMessage(), and SCIPsnprintf(). Referenced by computeFieldWidth(), printBoundSection(), printColumnSection(), printEntry(), and SCIP_DECL_READERWRITE().
output two strings in columns 1 (width 2) and 2 (width 8)
Definition at line 2629 of file reader_mps.c. References computeFieldWidth(), MPS_MAX_NAMELEN, NULL, printEntry(), SCIPinfoMessage(), and SCIPsnprintf(). Referenced by printBoundSection(), printColumnSection(), printEntry(), printRecord(), printRowType(), and SCIP_DECL_READERWRITE().
prints the given data as column entry
Definition at line 2663 of file reader_mps.c. References MPS_MAX_VALUELEN, NULL, printRecord(), printRowType(), printStart(), SCIPinfoMessage(), and SCIPsnprintf(). Referenced by printColumnSection(), printRangeSection(), printRhsSection(), and printStart().
prints the constraint type to file stream
Definition at line 2701 of file reader_mps.c. References initializeMatrix(), NULL, printStart(), SCIPinfoMessage(), SCIPisEQ(), SCIPisGT(), SCIPisInfinity(), and SCIPsnprintf(). Referenced by printEntry(), and SCIP_DECL_READERWRITE().
initializes the sparse matrix
Definition at line 2740 of file reader_mps.c. References checkSparseMatrixCapacity(), SCIP_CALL, SCIP_OKAY, SCIPallocBuffer, and SCIPallocBufferArray. Referenced by printRowType(), and SCIP_DECL_READERWRITE().
this method takes care that the required capacity is available in the sparse matrix
Definition at line 2758 of file reader_mps.c. References freeMatrix(), SCIP_CALL, SCIP_OKAY, and SCIPreallocBufferArray. Referenced by getLinearCoeffs(), initializeMatrix(), and SCIP_DECL_READERWRITE().
frees the sparse matrix
Definition at line 2776 of file reader_mps.c. References getLinearCoeffs(), SCIPfreeBuffer, and SCIPfreeBufferArray. Referenced by checkSparseMatrixCapacity(), and SCIP_DECL_READERWRITE().
computes the coefficient for the given variables and linear constraint information
Definition at line 2791 of file reader_mps.c. References checkSparseMatrixCapacity(), collectAggregatedVars(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPduplicateBufferArray, SCIPfreeBufferArray, SCIPgetProbvarLinearSum(), SCIPisInfinity(), SCIPreallocBufferArray, SCIPvarGetOrigvarSum(), and TRUE. Referenced by freeMatrix(), and SCIP_DECL_READERWRITE().
check whether given variables are aggregated and put them into an array without duplication
Definition at line 2884 of file reader_mps.c. References checkVarnames(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIPcalcMemGrowSize(), SCIPhashtableExists(), SCIPhashtableInsert(), SCIPreallocBlockMemoryArray, and SCIPvarGetStatus(). Referenced by getLinearCoeffs(), and SCIP_DECL_READERWRITE().
method check if the variable names are not longer than MPS_MAX_NAMELEN - 1
Definition at line 2941 of file reader_mps.c. References checkConsnames(), MAX, MPS_MAX_NAMELEN, NULL, SCIP_CALL, SCIP_OKAY, SCIPallocBufferArray, SCIPblkmem(), SCIPcalcHashtableSize(), SCIPhashmapCreate(), SCIPhashmapExists(), SCIPhashmapInsert(), SCIPsnprintf(), SCIPvarGetName(), and SCIPwarningMessage(). Referenced by collectAggregatedVars(), and SCIP_DECL_READERWRITE().
method check if the constraint names are not longer than MPS_MAX_NAMELEN - 1
Definition at line 3005 of file reader_mps.c. References FALSE, MAX, MPS_MAX_NAMELEN, NULL, printColumnSection(), SCIP_CALL, SCIP_OKAY, SCIPallocBufferArray, SCIPconsGetName(), SCIPconsIsEnabled(), SCIPfreeBufferArray, SCIPsnprintf(), SCIPwarningMessage(), and TRUE. Referenced by checkVarnames(), and SCIP_DECL_READERWRITE().
outputs the COLUMNS section of the MPS format
Definition at line 3083 of file reader_mps.c. References FALSE, NULL, printEntry(), printRecord(), printRhsSection(), printStart(), SCIP_Bool, SCIP_Real, SCIP_VARTYPE_CONTINUOUS, SCIPdebugMessage, SCIPhashmapExists(), SCIPhashmapGetImage(), SCIPhashtableExists(), SCIPinfoMessage(), SCIPsortPtrPtrReal(), SCIPvarGetName(), SCIPvarGetType(), and TRUE. Referenced by checkConsnames(), and SCIP_DECL_READERWRITE().
outputs the right hand side section
Definition at line 3175 of file reader_mps.c. References NULL, printEntry(), printRangeSection(), SCIPdebugMessage, SCIPinfoMessage(), and SCIPisInfinity(). Referenced by printColumnSection(), and SCIP_DECL_READERWRITE().
outputs the range section
Definition at line 3213 of file reader_mps.c. References NULL, printBoundSectionName(), printEntry(), SCIP_Real, SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPconsIsEnabled(), SCIPdebugMessage, SCIPgetLhsLinear(), SCIPgetLhsVarbound(), SCIPgetRhsLinear(), SCIPgetRhsVarbound(), SCIPinfoMessage(), SCIPisEQ(), SCIPisGT(), and SCIPisInfinity(). Referenced by printRhsSection(), and SCIP_DECL_READERWRITE().
print bound section name
Definition at line 3281 of file reader_mps.c. References printBoundSection(), SCIPdebugMessage, and SCIPinfoMessage(). Referenced by printBoundSection(), and printRangeSection().
output bound section
Definition at line 3292 of file reader_mps.c. References FALSE, MPS_MAX_VALUELEN, NULL, printBoundSectionName(), printRecord(), printStart(), SCIP_Bool, SCIP_DECL_READERCOPY(), SCIP_Real, SCIP_VARSTATUS_FIXED, SCIP_VARTYPE_BINARY, SCIPhashtableExists(), SCIPinfoMessage(), SCIPisEQ(), SCIPisFeasEQ(), SCIPisFeasZero(), SCIPisInfinity(), SCIPisZero(), SCIPsnprintf(), SCIPvarGetLbLocal(), SCIPvarGetLbOriginal(), SCIPvarGetName(), SCIPvarGetStatus(), SCIPvarGetType(), SCIPvarGetUbLocal(), SCIPvarGetUbOriginal(), and TRUE. Referenced by printBoundSectionName(), and SCIP_DECL_READERWRITE().
copy method for reader plugins (called when SCIP copies plugins) Definition at line 3551 of file reader_mps.c. References NULL, READER_NAME, SCIP_CALL, SCIP_DECL_READERFREE(), SCIP_OKAY, SCIPincludeReaderMps(), and SCIPreaderGetName(). Referenced by printBoundSection().
destructor of reader to free user data (called when SCIP is exiting) Definition at line 3565 of file reader_mps.c. References NULL, READER_NAME, SCIP_DECL_READERREAD(), SCIP_OKAY, SCIPfreeMemory, SCIPreaderGetData(), and SCIPreaderGetName(). Referenced by SCIP_DECL_READERCOPY().
problem reading method of reader Definition at line 3579 of file reader_mps.c. References NULL, READER_NAME, readMps(), SCIP_CALL, SCIP_DECL_READERWRITE(), SCIP_NOFILE, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_READERROR, SCIP_SUCCESS, and SCIPreaderGetName(). Referenced by SCIP_DECL_READERFREE().
problem writing method of reader Definition at line 3606 of file reader_mps.c. References checkConsnames(), checkSparseMatrixCapacity(), checkVarnames(), collectAggregatedVars(), FALSE, freeMatrix(), getLinearCoeffs(), initializeMatrix(), SCIP_QuadVarTerm::lincoef, MAX, MPS_MAX_NAMELEN, MPS_MAX_VALUELEN, NULL, printBoundSection(), printColumnSection(), printRangeSection(), printRecord(), printRhsSection(), printRowType(), printStart(), READER_NAME, SCIP_Bool, SCIP_CALL, SCIP_Longint, SCIP_OBJSENSE_MAXIMIZE, SCIP_OKAY, SCIP_Real, SCIP_SETPPCTYPE_COVERING, SCIP_SETPPCTYPE_PACKING, SCIP_SETPPCTYPE_PARTITIONING, SCIP_SUCCESS, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_FIXED, SCIP_VARTYPE_IMPLINT, SCIPallocBlockMemoryArray, SCIPallocBufferArray, SCIPblkmem(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconshdlrGetName(), SCIPconsIsEnabled(), SCIPdebugMessage, SCIPfindConshdlr(), SCIPfreeBlockMemoryArray, SCIPfreeBufferArray, SCIPgetBilinTermsQuadratic(), SCIPgetBinaryVarIndicator(), SCIPgetCapacityKnapsack(), SCIPgetCoefsLinearVarsQuadratic(), SCIPgetLhsCoefsSOC(), SCIPgetLhsConstantSOC(), SCIPgetLhsLinear(), SCIPgetLhsOffsetsSOC(), SCIPgetLhsQuadratic(), SCIPgetLhsVarbound(), SCIPgetLhsVarsSOC(), SCIPgetLinearConsIndicator(), SCIPgetLinearVarsQuadratic(), SCIPgetNBilinTermsQuadratic(), SCIPgetNLhsVarsSOC(), SCIPgetNLinearVarsQuadratic(), SCIPgetNQuadVarTermsQuadratic(), SCIPgetNVarsAnd(), SCIPgetNVarsKnapsack(), SCIPgetNVarsLinear(), SCIPgetNVarsLogicor(), SCIPgetNVarsSetppc(), SCIPgetNVarsSOS1(), SCIPgetNVarsSOS2(), SCIPgetQuadVarTermsQuadratic(), SCIPgetResultantAnd(), SCIPgetRhsCoefSOC(), SCIPgetRhsLinear(), SCIPgetRhsOffsetSOC(), SCIPgetRhsQuadratic(), SCIPgetRhsVarbound(), SCIPgetRhsVarSOC(), SCIPgetSlackVarIndicator(), SCIPgetTypeSetppc(), SCIPgetValsLinear(), SCIPgetVarsAnd(), SCIPgetVarsKnapsack(), SCIPgetVarsLinear(), SCIPgetVarsLogicor(), SCIPgetVarsSetppc(), SCIPgetVarsSOS1(), SCIPgetVarsSOS2(), SCIPgetVarVarbound(), SCIPgetVbdcoefVarbound(), SCIPgetVbdvarVarbound(), SCIPgetWeightsKnapsack(), SCIPgetWeightsSOS1(), SCIPgetWeightsSOS2(), SCIPhashmapExists(), SCIPhashmapFree(), SCIPhashmapGetImage(), SCIPhashmapInsert(), SCIPhashtableCreate(), SCIPhashtableExists(), SCIPhashtableFree(), SCIPhashtableInsert(), SCIPincludeReaderMps(), SCIPinfinity(), SCIPinfoMessage(), SCIPisEQ(), SCIPisInfinity(), SCIPisZero(), SCIPprintOrigProblem(), SCIPprintTransProblem(), SCIPreaderGetData(), SCIPreaderGetName(), SCIPreallocBufferArray, SCIPsnprintf(), SCIPvarGetName(), SCIPvarGetNegatedVar(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), SCIPvarGetObj(), SCIPvarGetStatus(), SCIPvarGetType(), SCIPvarIsNegated(), SCIPwarningMessage(), TRUE, and SCIP_QuadVarTerm::var. Referenced by SCIP_DECL_READERREAD().
includes the mps file reader in SCIP
Definition at line 4726 of file reader_mps.c. References DEFAULT_AGGRLINEARIZATION_ANDS, DEFAULT_LINEARIZE_ANDS, NULL, READER_DESC, READER_EXTENSION, READER_NAME, SCIP_CALL, SCIP_OKAY, SCIPaddBoolParam(), SCIPallocMemory, SCIPincludeReaderBasic(), SCIPsetReaderCopy(), SCIPsetReaderFree(), SCIPsetReaderRead(), SCIPsetReaderWrite(), and TRUE. Referenced by SCIP_DECL_READERCOPY(), SCIP_DECL_READERWRITE(), and SCIPincludeDefaultPlugins(). |