esolver.c File Reference

#include <signal.h>
#include "qs_config.h"
#include "QSopt_ex.h"

Include dependency graph for esolver.c:

Go to the source code of this file.

static parameters for the main program

static int dstrategy = QS_PRICE_DSTEEP
static char * fname = 0
static int lpfile = 0
static double max_rtime = INT_MAX
 maximum running time
static unsigned long memlimit = UINT_MAX
 maximum memory usage
static unsigned precision = 128
static int printsol = 0
static int pstrategy = QS_PRICE_PSTEEP
static char * readbasis = 0
static int showversion = 0
static int simplexalgo = PRIMAL_SIMPLEX
static char * solname = 0
static int usescaling = 1
static char * writebasis = 0

Functions

static void get_ftype (char const *const name, int *ftype)
 decide if a given file is mps or lp (only by extension)
int main (int ac, char **av)
 main function, here we build the LP, execute the options and exit
static int mem_limits (void)
 function to handle resource usage limits
static int parseargs (int ac, char **av)
 parssing options for the program
static void sighandler (int s)
 signal handler for time-limit reached
static void usage (char *s)
 Display options to the screen.


Function Documentation

static void get_ftype ( char const *const   name,
int *  ftype 
) [static]

decide if a given file is mps or lp (only by extension)

Definition at line 79 of file esolver.c.

Referenced by main(), and solver_main().

int main ( int  ac,
char **  av 
)

main function, here we build the LP, execute the options and exit

Definition at line 240 of file esolver.c.

References dstrategy, fname, get_ftype(), ILL_CLEANUP, ILL_CLEANUP_IF, ILLutil_init_timer(), ILLutil_start_timer(), ILLutil_stop_timer(), lpfile, mpq_QSfree(), mpq_QSfree_basis(), mpq_QSfree_prob(), mpq_QSget_basis(), mpq_QSread_and_load_basis(), mpq_QSread_prob(), mpq_QSset_param(), mpq_QSversion(), mpq_QSwrite_basis(), mpq_ILLlpdata::ncols, mpq_ILLlpdata::nrows, parseargs(), precision, printsol, pstrategy, QS_LP_INFEASIBLE, QS_LP_OPTIMAL, QS_LP_UNBOUNDED, QS_PARAM_DUAL_PRICING, QS_PARAM_PRIMAL_PRICING, QS_PARAM_SIMPLEX_DISPLAY, QS_PARAM_SIMPLEX_SCALING, QSexact_print_sol(), QSexact_set_precision, QSexact_solver(), QSexactClear(), QSexactStart(), mpq_qsdata::qslp, QSopt_ex_version(), readbasis, showversion, simplexalgo, solname, usescaling, and writebasis.

Here is the call graph for this function:

static int mem_limits ( void   )  [static]

function to handle resource usage limits

Definition at line 117 of file esolver.c.

References max_rtime, memlimit, and sighandler().

Referenced by parseargs().

Here is the call graph for this function:

static int parseargs ( int  ac,
char **  av 
) [static]

parssing options for the program

Definition at line 164 of file esolver.c.

References dstrategy, DUAL_SIMPLEX, fname, ILLutil_bix_getopt(), lpfile, max_rtime, mem_limits(), memlimit, mpq_QSfree(), mpq_QSversion(), precision, PRIMAL_SIMPLEX, printsol, pstrategy, readbasis, showversion, simplexalgo, solname, usage(), usescaling, and writebasis.

Referenced by dbl_solver_main(), float128_solver_main(), fp20_solver_main(), ldbl_solver_main(), main(), mpf_solver_main(), mpq_solver_main(), reader_main(), and solver_main().

Here is the call graph for this function:

static void sighandler ( int  s  )  [static]

signal handler for time-limit reached

Definition at line 103 of file esolver.c.

Referenced by mem_limits().

static void usage ( char *  s  )  [static]

Display options to the screen.

Definition at line 47 of file esolver.c.

References max_rtime, memlimit, QS_PRICE_DDANTZIG, QS_PRICE_DDEVEX, QS_PRICE_DMULTPARTIAL, QS_PRICE_DSTEEP, QS_PRICE_PDANTZIG, QS_PRICE_PDEVEX, QS_PRICE_PMULTPARTIAL, and QS_PRICE_PSTEEP.

Referenced by parseargs().


Variable Documentation

int dstrategy = QS_PRICE_DSTEEP [static]

Definition at line 34 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

char* fname = 0 [static]

Definition at line 28 of file esolver.c.

Referenced by main(), parseargs(), reader_main(), and solver_main().

int lpfile = 0 [static]

Definition at line 29 of file esolver.c.

Referenced by main(), parseargs(), reader_main(), and solver_main().

double max_rtime = INT_MAX [static]

maximum running time

Definition at line 41 of file esolver.c.

Referenced by mem_limits(), parseargs(), and usage().

unsigned long memlimit = UINT_MAX [static]

maximum memory usage

Definition at line 43 of file esolver.c.

Referenced by mem_limits(), parseargs(), and usage().

unsigned precision = 128 [static]

Definition at line 35 of file esolver.c.

Referenced by main(), parseargs(), QSexact_solver(), and solver_main().

int printsol = 0 [static]

Definition at line 36 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

int pstrategy = QS_PRICE_PSTEEP [static]

Definition at line 33 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

char* readbasis = 0 [static]

Definition at line 38 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

int showversion = 0 [static]

Definition at line 31 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

int simplexalgo = PRIMAL_SIMPLEX [static]

Definition at line 32 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

char* solname = 0 [static]

Definition at line 37 of file esolver.c.

Referenced by main(), and parseargs().

int usescaling = 1 [static]

Definition at line 30 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().

char* writebasis = 0 [static]

Definition at line 39 of file esolver.c.

Referenced by main(), parseargs(), and solver_main().


Generated on Thu Mar 29 09:35:13 2012 for QSopt_ex by  doxygen 1.4.7