// Copyright (C) 2002, International Business Machines // Corporation and others. All Rights Reserved. #include "ClpSimplex.hpp" #include "ClpPrimalColumnSteepest.hpp" #include "ClpDualRowSteepest.hpp" #include int main (int argc, const char *argv[]) { ClpSimplex model; int status; // Keep names if (argc<2) status=model.readMps("Personal.mps",true); else status=model.readMps(argv[1],true); /* This driver is similar to minimum.cpp, but it sets all parameter values to their defaults. The purpose of this is to give a list of most of the methods that the end user will need. There are also some more methods as for OsiSolverInterface e.g. some loadProblem methods and deleteRows and deleteColumns. Often two methods do the same thing, one having a name I like while the other adheres to OsiSolverInterface standards */ // Use exact devex ( a variant of steepest edge) ClpPrimalColumnSteepest primalSteepest; model.setPrimalColumnPivotAlgorithm(primalSteepest); int integerValue; double value; // Infeasibility cost value = model.infeasibilityCost(); std::cout<<"Default value of infeasibility cost is "< * rowNames = model2.rowNames(); int iRow; std::cout<<" Primal Dual Lower Upper (Cost)" < * columnNames = model2.columnNames(); int iColumn; std::cout<<" Primal Dual Lower Upper Cost" <getElements(); const int * row = matrix->getIndices(); const int * start = matrix->getVectorStarts(); const int * length = matrix->getVectorLengths(); for (iColumn=0;iColumn