|
SoPlex Doxygen Documentation
|
Go to the documentation of this file.
30 #define INIT_COLS 10000
31 #define INIT_NZOS 100000
56 if (!strcmp(mps. field0(), "ROWS"))
58 else if (!strncmp(mps. field0(), "OBJSEN", 6))
60 else if (!strcmp(mps. field0(), "OBJNAME"))
81 if (!strcmp(mps. field1(), "MIN"))
83 else if (!strcmp(mps. field1(), "MAX"))
92 if (!strcmp(mps. field0(), "ROWS"))
94 else if (!strcmp(mps. field0(), "OBJNAME"))
121 if (strcmp(mps. field0(), "ROWS"))
147 if (strcmp(mps. field0(), "COLUMNS"))
185 assert((*mps. field1() == 'N')
213 if (strcmp(mps. field0(), "RHS"))
216 if (colname[0] != '\0')
218 col.setColVector(vec);
228 if (strcmp(colname, mps. field1()))
231 if (colname[0] != '\0')
233 col.setColVector(vec);
247 assert(cnames. number(colname) == cset. num());
270 assert(mps. field4() != 0);
307 if (!strcmp(mps. field0(), "RANGES"))
309 else if (!strcmp(mps. field0(), "BOUNDS"))
311 else if (!strcmp(mps. field0(), "ENDATA"))
325 if (*rhsname == '\0')
326 strcpy(rhsname, mps. field1());
328 if (strcmp(rhsname, mps. field1()))
330 if (strcmp(addname, mps. field1()))
333 strcpy(addname, mps. field1());
348 rset. rhs_w(idx) = val;
351 rset. lhs_w(idx) = val;
363 rset. rhs_w(idx) = val;
366 rset. lhs_w(idx) = val;
391 if (!strcmp(mps. field0(), "BOUNDS"))
393 else if (!strcmp(mps. field0(), "ENDATA"))
407 if (*rngname == '\0')
410 strcpy(rngname, mps. field1());
422 if (!strcmp(rngname, mps. field1()))
434 assert(rset. lhs(idx) == rset. rhs(idx));
437 rset. rhs_w(idx) += val;
439 rset. lhs_w(idx) += val;
445 rset. rhs_w(idx) = rset. lhs(idx) + fabs(val);
447 rset. lhs_w(idx) = rset. rhs(idx) - fabs(val);
462 assert(rset. lhs(idx) == rset. rhs(idx));
465 rset. rhs_w(idx) += val;
467 rset. lhs_w(idx) += val;
473 rset. rhs_w(idx) = rset. lhs(idx) + fabs(val);
475 rset. lhs_w(idx) = rset. rhs(idx) - fabs(val);
502 if (strcmp(mps. field0(), "ENDATA"))
509 if ( (!strcmp(mps. field1(), "LO"))
510 || (!strcmp(mps. field1(), "UP"))
511 || (!strcmp(mps. field1(), "FX"))
512 || (!strcmp(mps. field1(), "LI"))
513 || (!strcmp(mps. field1(), "UI")))
527 if (*bndname == '\0')
530 strcpy(bndname, mps. field2());
534 if (!strcmp(bndname, mps. field2()))
548 if ((intvars != 0) && (mps. field1()[1] == 'I'))
555 if ((intvars != 0) && (mps. field1()[1] == 'I'))
559 if (mps. field1()[1] == 'X')
612 std::istream& p_input,
622 cnames = (p_cnames != 0)
629 rnames = (p_rnames != 0)
631 } catch(std::bad_alloc& x)
661 readCols(mps, rset, *rnames, cset, *cnames, p_intvars);
682 spxout << "IMPSRD06 Objective sense: "
688 *(reinterpret_cast<SVSet*>(static_cast<LPRowSet*>( this))),
|