| 
             | 
            
               
               
  
  
 
 
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   | 
   
 
 
 
 
 |