|
Command line interface of SoPlex LP solver.
More...
#include <assert.h>
#include <math.h>
#include <string.h>
#include <iostream>
#include <iomanip>
#include <fstream>
#include "soplex.h"
#include "spxgithash.h"
#include "timerfactory.h"
Go to the source code of this file.
Command line interface of SoPlex LP solver.
Definition in file soplexmain.cpp.
#define EGlpNumClear |
( |
| ) |
{} |
#define EGlpNumStart |
( |
| ) |
{} |
static void checkSolution |
( |
SoPlex & |
soplex | ) |
|
|
static |
static void checkSolutionRational |
( |
SoPlex & |
soplex | ) |
|
|
static |
performs external feasibility check with rational type
- Todo:
- implement external check; currently we use the internal methods for convenience
Definition at line 183 of file soplexmain.cpp.
References SoPlex::FEASTOL, SoPlex::getBoundViolationRational(), SoPlex::getDualViolationRational(), SoPlex::getRedCostViolationRational(), SoPlex::getRowViolationRational(), SoPlex::hasDual(), SoPlex::hasPrimal(), MSG_INFO1, SoPlex::OPTTOL, soplex::rationalToString(), SoPlex::realParam(), and SoPlex::spxout.
Referenced by checkSolution().
static void checkSolutionReal |
( |
SoPlex & |
soplex | ) |
|
|
static |
performs external feasibility check with real type
- Todo:
- implement external check; currently we use the internal methods for convenience
Definition at line 129 of file soplexmain.cpp.
References SoPlex::FEASTOL, SoPlex::getBoundViolationReal(), SoPlex::getDualViolationReal(), SoPlex::getRedCostViolationReal(), SoPlex::getRowViolationReal(), SoPlex::hasDual(), SoPlex::hasPrimal(), MSG_INFO1, SoPlex::OPTTOL, SoPlex::realParam(), and SoPlex::spxout.
Referenced by checkSolution().
static void freeStrings |
( |
char *& |
s1, |
|
|
char *& |
s2, |
|
|
char *& |
s3, |
|
|
char *& |
s4, |
|
|
char *& |
s5 |
|
) |
| |
|
static |
int main |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
runs SoPlex command line
- Todo:
- the EGlib version info should be printed after the SoPlex version info
Definition at line 253 of file soplexmain.cpp.
References SPxSolver::ABORT_CYCLING, SPxSolver::ABORT_ITER, SPxSolver::ABORT_TIME, SPxSolver::ABORT_VALUE, checkSolution(), VectorBase< R >::clear(), SPxSolver::COLUMN, TimerFactory::createTimer(), SPxOut::DEBUG, DEFAULT_BND_VIOL, DEFAULT_EPS_FACTOR, DEFAULT_EPS_UPDATE, DEFAULT_EPS_ZERO, Rational::disableListMem(), EGlpNumClear, EGlpNumStart, SPxSolver::ENTER, Param::epsilon(), Param::epsilonFactorization(), Param::epsilonUpdate(), SPxOut::ERROR, SPxSolver::ERROR, SLUFactor::ETA, SoPlex::FEASTOL, SLUFactor::FOREST_TOMLIN, freeStrings(), SoPlex::getDualRational(), SoPlex::getDualReal(), soplex::getGitHash(), SPxRatioTester::getName(), SPxStarter::getName(), SPxScaler::getName(), SPxPricer::getName(), SPxSimplifier::getName(), SoPlex::getPrimalRational(), SoPlex::getPrimalReal(), SPxOut::getStream(), SoPlex::hasBasis(), SPxSolver::INFEASIBLE, soplex::infinity, SPxOut::INFO1, SPxOut::INFO2, SPxOut::INFO3, SoPlex::intParam(), soplex::isNotZero(), SoPlex::ITERLIMIT, SPxSolver::LEAVE, SoPlex::loadSettingsFile(), SPxLPBase< Real >::MINIMIZE, MSG_ERROR, MSG_INFO1, MSG_WARNING, SoPlex::numColsRational(), SoPlex::numColsReal(), SoPlex::numNonzerosReal(), SoPlex::numRowsRational(), SoPlex::numRowsReal(), SPxSolver::OPTIMAL, SoPlex::OPTTOL, SoPlex::parseSettingsString(), SPxOut::precision(), SoPlex::PRICER, SoPlex::printStatistics(), printUsage(), SoPlex::printUserSettings(), SoPlex::printVersion(), SoPlex::RATIOTESTER, SoPlex::readBasisFile(), SoPlex::readFile(), SoPlex::READMODE, SoPlex::READMODE_RATIONAL, SoPlex::READMODE_REAL, SPxSolver::ROW, SoPlex::saveSettingsFile(), SoPlex::SCALER, Param::setEpsilon(), Param::setEpsilonFactorization(), Param::setEpsilonUpdate(), SoPlex::setIntParam(), SoPlex::setRealParam(), SPxOut::setStream(), SPxOut::setVerbosity(), SoPlex::SIMPLIFIER, SPxSolver::SINGULAR, SoPlex::solve(), SoPlex::SOLVEMODE, SoPlex::SOLVEMODE_REAL, SOPLEX_SUBVERSION, SOPLEX_VERSION, soplex::spx_alloc(), soplex::spx_free(), SoPlex::spxout, UserTimer::start(), Timer::start(), UserTimer::stop(), Timer::stop(), SoPlex::SYNCMODE, SoPlex::SYNCMODE_AUTO, SoPlex::SYNCMODE_MANUAL, UserTimer::time(), Timer::time(), SoPlex::TIMELIMIT, SPxSolver::UNBOUNDED, Timer::USER_TIME, SoPlex::VERBOSITY, SPxOut::WARNING, SPxException::what(), SoPlex::writeBasisFile(), SoPlex::writeFileReal(), SoPlex::~SoPlex(), and Timer::~Timer().
static void printUsage |
( |
const char *const |
argv[], |
|
|
int |
idx |
|
) |
| |
|
static |
|