mpq_lib.c File Reference

#include "qs_config.h"
#include "mpq_iqsutil.h"
#include "mpq_lpdata.h"
#include "mpq_lpdefs.h"
#include "mpq_simplex.h"
#include "mpq_price.h"
#include "mpq_basis.h"
#include "mpq_lib.h"
#include "mpq_qstruct.h"
#include "mpq_qsopt.h"
#include "mpq_lp.h"
#include "mpq_mps.h"

Include dependency graph for mpq_lib.c:

Go to the source code of this file.

Defines

#define mpq_EXTRA_COLS   (100)
#define mpq_EXTRA_MAT   (1000)
#define mpq_EXTRA_ROWS   (100)
#define mpq_PRINT_TOL   mpq_PFEAS_TOLER
#define mpq_READ_BASIS_LL   2
#define mpq_READ_BASIS_UL   3
#define mpq_READ_BASIS_XL   0
#define mpq_READ_BASIS_XU   1

Functions

static void mpq_check_pinf (mpq_price_info *pinf, int *it_exists)
static int mpq_delcols_work (mpq_lpinfo *lp, char *colmark)
int mpq_ILLlib_addcol (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int cnt, int *ind, mpq_t *val, const mpq_t obj, const mpq_t lower, const mpq_t upper, const char *name, int factorok)
int mpq_ILLlib_addcols (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int num, int *cmatcnt, int *cmatbeg, int *cmatind, mpq_t *cmatval, mpq_t *obj, mpq_t *lower, mpq_t *upper, const char **names, int factorok)
int mpq_ILLlib_addrow (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int cnt, int *ind, const mpq_t *val, const mpq_t rhs, int sense, const mpq_t range, const char *name)
int mpq_ILLlib_addrows (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int num, int *rmatcnt, int *rmatbeg, int *rmatind, const mpq_t *rmatval, const mpq_t *rhs, char *sense, const mpq_t *range, const char **names, int *factorok)
int mpq_ILLlib_basis_order (mpq_lpinfo *lp, int *header)
int mpq_ILLlib_cache_solution (mpq_lpinfo *lp, mpq_ILLlp_cache *C)
int mpq_ILLlib_chgbnd (mpq_lpinfo *lp, int indx, int lu, const mpq_t bnd)
int mpq_ILLlib_chgbnds (mpq_lpinfo *lp, int cnt, int *indx, char *lu, const mpq_t *bnd)
int mpq_ILLlib_chgcoef (mpq_lpinfo *lp, int rowindex, int colindex, mpq_t coef)
int mpq_ILLlib_chgobj (mpq_lpinfo *lp, int indx, mpq_t coef)
int mpq_ILLlib_chgrange (mpq_lpinfo *lp, int indx, mpq_t coef)
int mpq_ILLlib_chgrhs (mpq_lpinfo *lp, int indx, mpq_t coef)
int mpq_ILLlib_chgsense (mpq_lpinfo *lp, int num, int *rowlist, char *sense)
int mpq_ILLlib_colindex (mpq_lpinfo *lp, const char *name, int *colindex)
int mpq_ILLlib_colnames (mpq_lpinfo *lp, char **colnames)
int mpq_ILLlib_delcols (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int num, int *dellist, int *basis_ok)
int mpq_ILLlib_delrows (mpq_lpinfo *lp, mpq_ILLlp_basis *B, mpq_ILLlp_cache *C, int num, int *dellist, int *basis_ok, int *cache_ok)
int mpq_ILLlib_findName (mpq_ILLlpdata *qslp, int forRow, const char *name, int id, char buf[ILL_namebufsize])
int mpq_ILLlib_get_slack (mpq_lpinfo *lp, mpq_ILLlp_cache *C, mpq_t *slack)
int mpq_ILLlib_get_x (mpq_lpinfo *lp, mpq_ILLlp_cache *C, mpq_t *x)
int mpq_ILLlib_getbasis (mpq_lpinfo *lp, char *cstat, char *rstat)
int mpq_ILLlib_getbnd (mpq_lpinfo *lp, int indx, int lu, mpq_t *bnd)
int mpq_ILLlib_getbnds (mpq_lpinfo *lp, mpq_t *lower, mpq_t *upper)
int mpq_ILLlib_getbnds_list (mpq_lpinfo *lp, int num, int *collist, mpq_t *lower, mpq_t *upper)
int mpq_ILLlib_getcoef (mpq_lpinfo *lp, int rowindex, int colindex, mpq_t *coef)
int mpq_ILLlib_getcols (mpq_lpinfo *lp, int num, int *collist, int **colcnt, int **colbeg, int **colind, mpq_t **colval, mpq_t **obj, mpq_t **lower, mpq_t **upper, char ***names)
int mpq_ILLlib_getintflags (mpq_lpinfo *lp, int *intflags)
int mpq_ILLlib_getobj (mpq_lpinfo *lp, mpq_t *obj)
int mpq_ILLlib_getobj_list (mpq_lpinfo *lp, int num, int *collist, mpq_t *obj)
int mpq_ILLlib_getrhs (mpq_lpinfo *lp, mpq_t *rhs)
int mpq_ILLlib_getrownorms (mpq_lpinfo *lp, mpq_price_info *pinf, mpq_t *rownorms)
int mpq_ILLlib_getrows (mpq_lpinfo *lp, int num, int *rowlist, int **rowcnt, int **rowbeg, int **rowind, mpq_t **rowval, mpq_t **rhs, char **sense, mpq_t **range, char ***names)
int mpq_ILLlib_getsenses (mpq_lpinfo *lp, char *senses)
int mpq_ILLlib_iter (mpq_lpinfo *lp)
int mpq_ILLlib_loadbasis (mpq_ILLlp_basis *B, int nstruct, int nrows, char *cstat, char *rstat)
int mpq_ILLlib_loadrownorms (mpq_lpinfo *lp, mpq_price_info *pinf, mpq_t *rownorms)
int mpq_ILLlib_newcol (mpq_lpinfo *lp, mpq_ILLlp_basis *B, const mpq_t obj, const mpq_t lower, const mpq_t upper, const char *name, int factorok)
int mpq_ILLlib_newcols (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int num, mpq_t *obj, mpq_t *lower, mpq_t *upper, const char **names, int factorok)
int mpq_ILLlib_newrow (mpq_lpinfo *lp, mpq_ILLlp_basis *B, const mpq_t rhs, int sense, const mpq_t range, const char *name)
int mpq_ILLlib_newrows (mpq_lpinfo *lp, mpq_ILLlp_basis *B, int num, const mpq_t *rhs, char *sense, const mpq_t *range, const char **names)
int mpq_ILLlib_objval (mpq_lpinfo *lp, mpq_ILLlp_cache *C, mpq_t *val)
int mpq_ILLlib_optimize (mpq_lpinfo *lp, mpq_ILLlp_basis *B, mpq_price_info *pinf, int algo, int *status, int simplex_display, itcnt_t *itcnt)
int mpq_ILLlib_print_x (EGioFile_t *fd, mpq_lpinfo *lp, mpq_ILLlp_cache *C, mpq_t *x, int nonZerosOnly)
int mpq_ILLlib_readbasis (mpq_lpinfo *lp, mpq_ILLlp_basis *B, const char *mpq_fname)
int mpq_ILLlib_recompute_rownorms (mpq_lpinfo *lp, mpq_price_info *pinf)
int mpq_ILLlib_rowindex (mpq_lpinfo *lp, const char *name, int *rowindex)
int mpq_ILLlib_rownames (mpq_lpinfo *lp, char **rownames)
int mpq_ILLlib_solution (mpq_lpinfo *lp, mpq_ILLlp_cache *C, mpq_t *val, mpq_t *x, mpq_t *pi, mpq_t *slack, mpq_t *rc)
int mpq_ILLlib_strongbranch (mpq_lpinfo *lp, mpq_price_info *pinf, int *candidatelist, int ncand, mpq_t *xlist, mpq_t *downpen, mpq_t *uppen, int iterations, mpq_t objbound, itcnt_t *itcnt)
int mpq_ILLlib_tableau (mpq_lpinfo *lp, int row, mpq_t *binv, mpq_t *tabrow)
int mpq_ILLlib_writebasis (mpq_lpinfo *lp, mpq_ILLlp_basis *B, const char *mpq_fname)
int mpq_ILLwrite_lp_file (mpq_ILLlpdata *lp, EGioFile_t *out, mpq_qserror_collector *c)
static int mpq_matrix_addcoef (mpq_lpinfo *lp, mpq_ILLmatrix *A, int row, int col, mpq_t val)
static int mpq_matrix_addcol (mpq_ILLmatrix *A, int colcnt, int *colind, mpq_t *colval)
static int mpq_matrix_addrow (mpq_ILLmatrix *A, int rowcnt, int *rowind, const mpq_t *rowval)
static int mpq_matrix_addrow_end (mpq_ILLmatrix *A, int row, int rowcnt, int *rowind, const mpq_t *rowval)
static int mpq_matrix_getcoef (mpq_ILLmatrix *A, int row, int col, mpq_t *val)
static int mpq_reset_colindex (mpq_lpinfo *lp)
static int mpq_reset_rowindex (mpq_lpinfo *lp)


Define Documentation

#define mpq_EXTRA_COLS   (100)

Definition at line 881 of file mpq_lib.c.

Referenced by mpq_ILLlib_addcol().

#define mpq_EXTRA_MAT   (1000)

Definition at line 882 of file mpq_lib.c.

Referenced by mpq_matrix_addrow_end().

#define mpq_EXTRA_ROWS   (100)

Definition at line 880 of file mpq_lib.c.

Referenced by mpq_ILLlib_addrow().

#define mpq_PRINT_TOL   mpq_PFEAS_TOLER

Definition at line 4153 of file mpq_lib.c.

Referenced by mpq_ILLlib_print_x().

#define mpq_READ_BASIS_LL   2

Definition at line 3716 of file mpq_lib.c.

Referenced by mpq_ILLlib_readbasis().

#define mpq_READ_BASIS_UL   3

Definition at line 3717 of file mpq_lib.c.

Referenced by mpq_ILLlib_readbasis().

#define mpq_READ_BASIS_XL   0

Definition at line 3714 of file mpq_lib.c.

Referenced by mpq_ILLlib_readbasis().

#define mpq_READ_BASIS_XU   1

Definition at line 3715 of file mpq_lib.c.

Referenced by mpq_ILLlib_readbasis().


Function Documentation

static void mpq_check_pinf ( mpq_price_info pinf,
int *  it_exists 
) [static]

Definition at line 4259 of file mpq_lib.c.

References mpq_price_info::dI_price, mpq_price_info::dII_price, mpq_price_info::dsinfo, mpq_d_steep_info::norms, and QS_PRICE_DSTEEP.

Referenced by mpq_ILLlib_getrownorms(), and mpq_ILLlib_strongbranch().

static int mpq_delcols_work ( mpq_lpinfo lp,
char *  colmark 
)

Definition at line 1738 of file mpq_lib.c.

References mpq_ILLlpdata::A, mpq_ILLlpdata::colnames, mpq_ILLlpdata::coltab, ILL_IFFREE, ILL_SAFE_MALLOC, ILLsymboltab_delete(), mpq_ILLlpdata::intmarker, mpq_ILLlpdata::lower, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matcols, mpq_ILLmatrix::matind, mpq_ILLmatrix::matrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::obj, mpq_ILLlpdata::rowmap, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

Here is the call graph for this function:

int mpq_ILLlib_addcol ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  cnt,
int *  ind,
mpq_t *  val,
const mpq_t  obj,
const mpq_t  lower,
const mpq_t  upper,
const char *  name,
int  factorok 
)

Definition at line 2098 of file mpq_lib.c.

References mpq_ILLlpdata::A, mpq_lpinfo::basisid, mpq_ILLlpdata::colnames, mpq_ILLlp_basis::colnorms, mpq_ILLlpdata::colsize, mpq_ILLlpdata::coltab, mpq_ILLlp_basis::cstat, ILL_CLEANUP, ILL_FAILfalse, ILL_FAILtrue, ILL_IFFREE, ILL_namebufsize, ILLsymboltab_register(), mpq_ILLlpdata::intmarker, mpq_ILLlpdata::lower, mpq_EXTRA_COLS, mpq_ILL_MAXDOUBLE, mpq_ILL_MINDOUBLE, mpq_ILLlib_findName(), mpq_ILLlp_rows_clear(), mpq_ILLlp_sinfo_free(), mpq_matrix_addcol(), mpq_lpinfo::nbaz, mpq_ILLlpdata::ncols, mpq_ILLlpdata::nstruct, NULL, mpq_ILLlpdata::nzcount, mpq_lpinfo::O, mpq_ILLlpdata::obj, QS_COL_BSTAT_FREE, QS_COL_BSTAT_LOWER, QS_COL_BSTAT_UPPER, mpq_ILLlpdata::rA, mpq_ILLlpdata::sinfo, STAT_LOWER, STAT_UPPER, STAT_ZERO, mpq_ILLlpdata::structmap, mpq_ILLlpdata::structsize, mpq_ILLlpdata::upper, mpq_lpinfo::vindex, and mpq_lpinfo::vstat.

Here is the call graph for this function:

int mpq_ILLlib_addcols ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  num,
int *  cmatcnt,
int *  cmatbeg,
int *  cmatind,
mpq_t *  cmatval,
mpq_t *  obj,
mpq_t *  lower,
mpq_t *  upper,
const char **  names,
int  factorok 
)

Definition at line 2059 of file mpq_lib.c.

References mpq_ILLlib_addcol().

Here is the call graph for this function:

int mpq_ILLlib_addrow ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  cnt,
int *  ind,
const mpq_t *  val,
const mpq_t  rhs,
int  sense,
const mpq_t  range,
const char *  name 
)

Definition at line 1145 of file mpq_lib.c.

References mpq_ILLlpdata::A, ILL_CLEANUP, ILL_IFFREE, ILL_namebufsize, mpq_EXTRA_ROWS, mpq_ILLlp_rows_clear(), mpq_ILLlp_sinfo_free(), mpq_ILLlpdata::ncols, mpq_ILLlpdata::nrows, mpq_lpinfo::O, mpq_ILLlpdata::rA, mpq_ILLlpdata::rangeval, mpq_ILLlpdata::rhs, mpq_ILLlpdata::rowmap, mpq_ILLlpdata::rownames, mpq_ILLlpdata::rowsize, mpq_ILLlpdata::sense, and mpq_ILLlpdata::sinfo.

Here is the call graph for this function:

int mpq_ILLlib_addrows ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  num,
int *  rmatcnt,
int *  rmatbeg,
int *  rmatind,
const mpq_t *  rmatval,
const mpq_t *  rhs,
char *  sense,
const mpq_t *  range,
const char **  names,
int *  factorok 
)

Definition at line 941 of file mpq_lib.c.

References mpq_ILLlpdata::A, mpq_lpinfo::baz, mpq_ILLlp_basis::colnorms, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLmatrix::matbeg, mpq_lpinfo::matbeg, mpq_ILLmatrix::matcnt, mpq_lpinfo::matcnt, mpq_ILLmatrix::matind, mpq_lpinfo::matind, mpq_ILLmatrix::matval, mpq_lpinfo::matval, mpq_ILLprice_get_new_rownorms(), mpq_ILLlpdata::ncols, mpq_lpinfo::ncols, mpq_ILLlpdata::nrows, mpq_lpinfo::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlp_basis::rownorms, mpq_ILLlp_basis::rownorms_size, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_basis_order ( mpq_lpinfo lp,
int *  header 
)

Definition at line 497 of file mpq_lib.c.

References mpq_lpinfo::baz, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLlpdata::ncols, mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::rowmap, and mpq_ILLlpdata::structmap.

int mpq_ILLlib_cache_solution ( mpq_lpinfo lp,
mpq_ILLlp_cache C 
)

Definition at line 242 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlib_solution(), mpq_ILLlpdata::nrows, mpq_ILLlp_cache::nrows, mpq_ILLlpdata::nstruct, mpq_ILLlp_cache::nstruct, mpq_lpinfo::O, mpq_ILLlp_cache::pi, mpq_ILLlp_cache::rc, mpq_ILLlp_cache::slack, mpq_ILLlp_cache::val, and mpq_ILLlp_cache::x.

Here is the call graph for this function:

int mpq_ILLlib_chgbnd ( mpq_lpinfo lp,
int  indx,
int  lu,
const mpq_t  bnd 
)

Definition at line 532 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, mpq_ILLlpdata::lower, mpq_ILLlp_sinfo_free(), mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::sinfo, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

Here is the call graph for this function:

int mpq_ILLlib_chgbnds ( mpq_lpinfo lp,
int  cnt,
int *  indx,
char *  lu,
const mpq_t *  bnd 
)

Definition at line 586 of file mpq_lib.c.

References ILL_CLEANUP, and mpq_ILLlib_chgbnd().

Here is the call graph for this function:

int mpq_ILLlib_chgcoef ( mpq_lpinfo lp,
int  rowindex,
int  colindex,
mpq_t  coef 
)

Definition at line 1860 of file mpq_lib.c.

References mpq_ILLlpdata::A, ILL_CLEANUP, ILL_IFFREE, mpq_ILLlp_rows_clear(), mpq_ILLlp_sinfo_free(), mpq_matrix_addcoef(), mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::rA, mpq_ILLlpdata::sinfo, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_chgobj ( mpq_lpinfo lp,
int  indx,
mpq_t  coef 
)

Definition at line 3180 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, mpq_ILLlp_sinfo_free(), mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::obj, mpq_ILLlpdata::sinfo, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_chgrange ( mpq_lpinfo lp,
int  indx,
mpq_t  coef 
)

Definition at line 3244 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, mpq_ILLlp_sinfo_free(), mpq_ILLlpdata::nrows, mpq_lpinfo::O, mpq_ILLlpdata::rangeval, mpq_ILLlpdata::rowsize, mpq_ILLlpdata::sense, and mpq_ILLlpdata::sinfo.

Here is the call graph for this function:

int mpq_ILLlib_chgrhs ( mpq_lpinfo lp,
int  indx,
mpq_t  coef 
)

Definition at line 3298 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, mpq_ILLlp_sinfo_free(), mpq_ILLlpdata::nrows, mpq_lpinfo::O, mpq_ILLlpdata::rhs, and mpq_ILLlpdata::sinfo.

Here is the call graph for this function:

int mpq_ILLlib_chgsense ( mpq_lpinfo lp,
int  num,
int *  rowlist,
char *  sense 
)

Definition at line 1913 of file mpq_lib.c.

References mpq_ILLlpdata::A, ILL_CLEANUP, mpq_ILLlpdata::lower, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matval, mpq_ILL_MAXDOUBLE, mpq_lpinfo::O, mpq_ILLlpdata::rowmap, mpq_ILLlpdata::sense, and mpq_ILLlpdata::upper.

int mpq_ILLlib_colindex ( mpq_lpinfo lp,
const char *  name,
int *  colindex 
)

Definition at line 3522 of file mpq_lib.c.

References mpq_ILLlpdata::coltab, ILL_CLEANUP, ILLsymboltab_getindex(), mpq_reset_colindex(), and mpq_lpinfo::O.

Here is the call graph for this function:

int mpq_ILLlib_colnames ( mpq_lpinfo lp,
char **  colnames 
)

Definition at line 3428 of file mpq_lib.c.

References mpq_ILLlpdata::colnames, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLlpdata::nstruct, and mpq_lpinfo::O.

int mpq_ILLlib_delcols ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  num,
int *  dellist,
int *  basis_ok 
)

Definition at line 1597 of file mpq_lib.c.

References mpq_ILLlpdata::A, mpq_ILLlp_basis::colnorms, mpq_ILLlp_basis::cstat, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLmatrix::matcols, mpq_ILLlp_rows_clear(), mpq_ILLlpdata::nstruct, mpq_ILLlp_basis::nstruct, mpq_lpinfo::O, QS_COL_BSTAT_BASIC, mpq_ILLlpdata::rA, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_delrows ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
mpq_ILLlp_cache C,
int  num,
int *  dellist,
int *  basis_ok,
int *  cache_ok 
)

Definition at line 1329 of file mpq_lib.c.

References mpq_ILLlpdata::A, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matcols, mpq_ILLmatrix::matind, mpq_ILLmatrix::matrows, mpq_ILLmatrix::matval, mpq_DFEAS_TOLER, mpq_ILLlp_rows_clear(), mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlp_cache::pi, QS_ROW_BSTAT_LOWER, QS_ROW_BSTAT_UPPER, mpq_ILLlpdata::rA, and mpq_ILLlp_basis::rstat.

Here is the call graph for this function:

int mpq_ILLlib_findName ( mpq_ILLlpdata qslp,
int  forRow,
const char *  name,
int  id,
char  buf[ILL_namebufsize] 
)

Definition at line 4201 of file mpq_lib.c.

References mpq_ILLlpdata::coltab, ILLsymboltab_create(), ILLsymboltab_lookup(), ILLsymboltab_uname(), ILLsymboltab_unique_name(), NULL, mpq_ILLlpdata::rowtab, and ILLsymboltab::tablesize.

Referenced by mpq_get_row_col_name(), and mpq_ILLlib_addcol().

Here is the call graph for this function:

int mpq_ILLlib_get_slack ( mpq_lpinfo lp,
mpq_ILLlp_cache C,
mpq_t *  slack 
)

Definition at line 403 of file mpq_lib.c.

References mpq_ILLlib_solution().

Here is the call graph for this function:

int mpq_ILLlib_get_x ( mpq_lpinfo lp,
mpq_ILLlp_cache C,
mpq_t *  x 
)

Definition at line 388 of file mpq_lib.c.

References mpq_ILLlib_solution().

Here is the call graph for this function:

int mpq_ILLlib_getbasis ( mpq_lpinfo lp,
char *  cstat,
char *  rstat 
)

Definition at line 3582 of file mpq_lib.c.

References mpq_lpinfo::basisid, ILL_CLEANUP, mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, QS_COL_BSTAT_BASIC, QS_COL_BSTAT_FREE, QS_COL_BSTAT_LOWER, QS_COL_BSTAT_UPPER, STAT_BASIC, STAT_LOWER, STAT_UPPER, STAT_ZERO, mpq_ILLlpdata::structmap, and mpq_lpinfo::vstat.

int mpq_ILLlib_getbnd ( mpq_lpinfo lp,
int  indx,
int  lu,
mpq_t *  bnd 
)

Definition at line 608 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::lower, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

int mpq_ILLlib_getbnds ( mpq_lpinfo lp,
mpq_t *  lower,
mpq_t *  upper 
)

Definition at line 690 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::lower, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

int mpq_ILLlib_getbnds_list ( mpq_lpinfo lp,
int  num,
int *  collist,
mpq_t *  lower,
mpq_t *  upper 
)

Definition at line 652 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::lower, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

int mpq_ILLlib_getcoef ( mpq_lpinfo lp,
int  rowindex,
int  colindex,
mpq_t *  coef 
)

Definition at line 1822 of file mpq_lib.c.

References mpq_ILLlpdata::A, ILL_CLEANUP, mpq_matrix_getcoef(), mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_getcols ( mpq_lpinfo lp,
int  num,
int *  collist,
int **  colcnt,
int **  colbeg,
int **  colind,
mpq_t **  colval,
mpq_t **  obj,
mpq_t **  lower,
mpq_t **  upper,
char ***  names 
)

Definition at line 2910 of file mpq_lib.c.

References mpq_ILLlpdata::A, mpq_ILLlpdata::colnames, ILL_CLEANUP, ILL_SAFE_MALLOC, mpq_ILLlpdata::lower, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matind, mpq_ILLmatrix::matval, mpq_lpinfo::O, mpq_ILLlpdata::obj, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

int mpq_ILLlib_getintflags ( mpq_lpinfo lp,
int *  intflags 
)

Definition at line 3384 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::intmarker, mpq_ILLlpdata::nstruct, and mpq_lpinfo::O.

int mpq_ILLlib_getobj ( mpq_lpinfo lp,
mpq_t *  obj 
)

Definition at line 3151 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::obj, and mpq_ILLlpdata::structmap.

int mpq_ILLlib_getobj_list ( mpq_lpinfo lp,
int  num,
int *  collist,
mpq_t *  obj 
)

Definition at line 3111 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::obj, and mpq_ILLlpdata::structmap.

int mpq_ILLlib_getrhs ( mpq_lpinfo lp,
mpq_t *  rhs 
)

Definition at line 3216 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::nrows, mpq_lpinfo::O, and mpq_ILLlpdata::rhs.

int mpq_ILLlib_getrownorms ( mpq_lpinfo lp,
mpq_price_info pinf,
mpq_t *  rownorms 
)

Definition at line 4057 of file mpq_lib.c.

References mpq_price_info::dsinfo, ILL_CLEANUP, mpq_check_pinf(), mpq_d_steep_info::norms, mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, STAT_BASIC, mpq_ILLlpdata::structmap, mpq_lpinfo::vindex, and mpq_lpinfo::vstat.

Here is the call graph for this function:

int mpq_ILLlib_getrows ( mpq_lpinfo lp,
int  num,
int *  rowlist,
int **  rowcnt,
int **  rowbeg,
int **  rowind,
mpq_t **  rowval,
mpq_t **  rhs,
char **  sense,
mpq_t **  range,
char ***  names 
)

Definition at line 2700 of file mpq_lib.c.

References ILL_CLEANUP, ILL_SAFE_MALLOC, mpq_ILLlp_rows_init(), mpq_lpinfo::O, mpq_ILLlpdata::rangeval, mpq_ILLlpdata::rhs, mpq_ILLlp_rows::rowbeg, mpq_ILLlp_rows::rowcnt, mpq_ILLlp_rows::rowind, and mpq_ILLlp_rows::rowval.

Here is the call graph for this function:

int mpq_ILLlib_getsenses ( mpq_lpinfo lp,
char *  senses 
)

Definition at line 1975 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLlpdata::nrows, mpq_lpinfo::O, and mpq_ILLlpdata::sense.

int mpq_ILLlib_iter ( mpq_lpinfo lp  ) 

Definition at line 4138 of file mpq_lib.c.

References mpq_lpinfo::cnts, mpq_count_struct::dI_iter, mpq_count_struct::dII_iter, mpq_count_struct::pI_iter, and mpq_count_struct::pII_iter.

int mpq_ILLlib_loadbasis ( mpq_ILLlp_basis B,
int  nstruct,
int  nrows,
char *  cstat,
char *  rstat 
)

Definition at line 3679 of file mpq_lib.c.

References mpq_ILLlp_basis::cstat, mpq_ILLlp_basis_alloc(), mpq_ILLlp_basis_init(), and mpq_ILLlp_basis::rstat.

Here is the call graph for this function:

int mpq_ILLlib_loadrownorms ( mpq_lpinfo lp,
mpq_price_info pinf,
mpq_t *  rownorms 
)

Definition at line 4109 of file mpq_lib.c.

References mpq_ILLprice_load_rownorms().

Here is the call graph for this function:

int mpq_ILLlib_newcol ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
const mpq_t  obj,
const mpq_t  lower,
const mpq_t  upper,
const char *  name,
int  factorok 
)

Definition at line 2002 of file mpq_lib.c.

References mpq_ILLlib_addcol().

Here is the call graph for this function:

int mpq_ILLlib_newcols ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  num,
mpq_t *  obj,
mpq_t *  lower,
mpq_t *  upper,
const char **  names,
int  factorok 
)

Definition at line 2021 of file mpq_lib.c.

References ILL_IFFREE, ILL_SAFE_MALLOC, and mpq_ILLlib_addcols().

Here is the call graph for this function:

int mpq_ILLlib_newrow ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
const mpq_t  rhs,
int  sense,
const mpq_t  range,
const char *  name 
)

Definition at line 884 of file mpq_lib.c.

References mpq_ILLlib_addrow().

Here is the call graph for this function:

int mpq_ILLlib_newrows ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
int  num,
const mpq_t *  rhs,
char *  sense,
const mpq_t *  range,
const char **  names 
)

Definition at line 902 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, and mpq_ILLlib_addrows().

Here is the call graph for this function:

int mpq_ILLlib_objval ( mpq_lpinfo lp,
mpq_ILLlp_cache C,
mpq_t *  val 
)

Definition at line 419 of file mpq_lib.c.

References mpq_lpinfo::basisstat, mpq_lpinfo::dobjval, mpq_ILLlib_solution(), and mpq_lp_status_info::optimal.

Here is the call graph for this function:

int mpq_ILLlib_optimize ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
mpq_price_info pinf,
int  algo,
int *  status,
int  simplex_display,
itcnt_t itcnt 
)

Definition at line 170 of file mpq_lib.c.

References __QS_SB_VERB, E_SIMPLEX_ERROR, mpq_ILLlib_writebasis(), mpq_ILLsimplex(), mpq_ILLwrite_lp(), NULL, mpq_lpinfo::O, QS_LP_CHANGE_PREC, and QS_LP_UNSOLVED.

Here is the call graph for this function:

int mpq_ILLlib_print_x ( EGioFile_t *  fd,
mpq_lpinfo lp,
mpq_ILLlp_cache C,
mpq_t *  x,
int  nonZerosOnly 
)

Definition at line 4155 of file mpq_lib.c.

References mpq_ILLlpdata::colnames, ILL_FAILfalse, mpq_ILLlib_get_x(), mpq_PRINT_TOL, mpq_lpinfo::ncols, mpq_ILLlpdata::nstruct, NULL, mpq_lpinfo::O, and strtmp.

Here is the call graph for this function:

int mpq_ILLlib_readbasis ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
const char *  mpq_fname 
)

Definition at line 3719 of file mpq_lib.c.

References mpq_ILLlp_basis::cstat, ILL_CLEANUP, ILL_MPS_ENDATA, ILL_MPS_NAME, ILL_SAFE_MALLOC, mpq_ILLlpdata::lower, mpq_ILL_MAXDOUBLE, mpq_ILL_MINDOUBLE, mpq_ILLlib_colindex(), mpq_ILLlib_rowindex(), mpq_ILLline_reader_new(), mpq_ILLlp_basis_init(), mpq_ILLmps_empty_field(), mpq_ILLmps_empty_key(), mpq_ILLmps_error(), mpq_ILLmps_next_field(), mpq_ILLmps_next_line(), mpq_ILLmps_section_name, mpq_ILLmps_state_init(), mpq_ILLmps_warn(), mpq_ILLutil_index(), mpq_READ_BASIS_LL, mpq_READ_BASIS_UL, mpq_READ_BASIS_XL, mpq_READ_BASIS_XU, mpq_ILLlp_basis::nrows, mpq_ILLlpdata::nrows, mpq_ILLlp_basis::nstruct, mpq_ILLlpdata::nstruct, NULL, mpq_lpinfo::O, mpq_ILLlpdata::probname, QS_COL_BSTAT_BASIC, QS_COL_BSTAT_FREE, QS_COL_BSTAT_LOWER, QS_COL_BSTAT_UPPER, QS_ROW_BSTAT_BASIC, QS_ROW_BSTAT_LOWER, QS_ROW_BSTAT_UPPER, mpq_ILLlp_basis::rstat, mpq_ILLlpdata::structmap, and mpq_ILLlpdata::upper.

Here is the call graph for this function:

int mpq_ILLlib_recompute_rownorms ( mpq_lpinfo lp,
mpq_price_info pinf 
)

Definition at line 4124 of file mpq_lib.c.

References DUAL_PHASEII, and mpq_ILLprice_build_pricing_info().

Here is the call graph for this function:

int mpq_ILLlib_rowindex ( mpq_lpinfo lp,
const char *  name,
int *  rowindex 
)

Definition at line 3552 of file mpq_lib.c.

References ILL_CLEANUP, ILLsymboltab_getindex(), mpq_reset_rowindex(), mpq_lpinfo::O, and mpq_ILLlpdata::rowtab.

Here is the call graph for this function:

int mpq_ILLlib_rownames ( mpq_lpinfo lp,
char **  rownames 
)

Definition at line 3332 of file mpq_lib.c.

References ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLlpdata::nrows, mpq_lpinfo::O, and mpq_ILLlpdata::rownames.

int mpq_ILLlib_solution ( mpq_lpinfo lp,
mpq_ILLlp_cache C,
mpq_t *  val,
mpq_t *  x,
mpq_t *  pi,
mpq_t *  slack,
mpq_t *  rc 
)

Definition at line 265 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILL_MAX, mpq_ILLsimplex_solution(), mpq_ILLlpdata::ncols, mpq_ILLlp_cache::nrows, mpq_ILLlpdata::nrows, mpq_ILLlp_cache::nstruct, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::objsense, mpq_ILLlp_cache::pi, mpq_ILLlp_cache::rc, mpq_ILLlpdata::rowmap, mpq_ILLlp_cache::slack, mpq_ILLlpdata::structmap, mpq_ILLlp_cache::val, and mpq_ILLlp_cache::x.

Here is the call graph for this function:

int mpq_ILLlib_strongbranch ( mpq_lpinfo lp,
mpq_price_info pinf,
int *  candidatelist,
int  ncand,
mpq_t *  xlist,
mpq_t *  downpen,
mpq_t *  uppen,
int  iterations,
mpq_t  objbound,
itcnt_t itcnt 
)

Definition at line 724 of file mpq_lib.c.

References mpq_lpinfo::basisid, mpq_ILLlp_basis::cstat, mpq_price_info::dI_price, mpq_price_info::dII_price, mpq_lpinfo::dobjval, DUAL_SIMPLEX, mpq_price_info::htrigger, mpq_lpinfo::maxiter, mpq_check_pinf(), mpq_ILL_MAX, mpq_ILLlib_chgbnd(), mpq_ILLlib_get_x(), mpq_ILLlib_getbasis(), mpq_ILLlib_getbnd(), mpq_ILLlib_getrownorms(), mpq_ILLlib_optimize(), mpq_ILLlp_basis_alloc(), mpq_ILLlp_basis_free(), mpq_ILLlp_basis_init(), mpq_ILLprice_free_pricing_info(), mpq_ILLprice_init_pricing_info(), mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::objsense, QS_PRICE_DSTEEP, mpq_ILLlp_basis::rownorms, mpq_ILLlp_basis::rstat, and t.

Here is the call graph for this function:

int mpq_ILLlib_tableau ( mpq_lpinfo lp,
int  row,
mpq_t *  binv,
mpq_t *  tabrow 
)

Definition at line 441 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLbasis_tableau_row(), mpq_ILLlpdata::ncols, mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::rowmap, and mpq_ILLlpdata::structmap.

Here is the call graph for this function:

int mpq_ILLlib_writebasis ( mpq_lpinfo lp,
mpq_ILLlp_basis B,
const char *  mpq_fname 
)

Definition at line 3941 of file mpq_lib.c.

References mpq_lpinfo::basisid, mpq_ILLlpdata::colnames, mpq_ILLlp_basis::cstat, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, mpq_ILLlib_getbasis(), mpq_ILLlpdata::nrows, mpq_ILLlpdata::nstruct, mpq_lpinfo::O, mpq_ILLlpdata::probname, QS_COL_BSTAT_BASIC, QS_COL_BSTAT_UPPER, QS_ROW_BSTAT_BASIC, QS_ROW_BSTAT_LOWER, mpq_ILLlpdata::rownames, and mpq_ILLlp_basis::rstat.

Here is the call graph for this function:

int mpq_ILLwrite_lp_file ( mpq_ILLlpdata lp,
EGioFile_t *  out,
mpq_qserror_collector c 
)

Definition at line 4244 of file mpq_lib.c.

References ILLstring_reporter_copy(), ILLstring_reporter_init(), mpq_ILLwrite_lp(), and mpq_ILLlpdata::reporter.

Referenced by mpq_ILLbasis_get_cinitial(), mpq_ILLbasis_get_initial(), and mpq_ILLbasis_update().

Here is the call graph for this function:

static int mpq_matrix_addcoef ( mpq_lpinfo lp,
mpq_ILLmatrix A,
int  row,
int  col,
mpq_t  val 
)

Definition at line 2521 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matcols, mpq_ILLmatrix::matfree, mpq_ILLmatrix::matind, mpq_ILLmatrix::matrows, mpq_ILLmatrix::matsize, mpq_ILLmatrix::matval, mpq_matrix_addrow_end(), mpq_ILLlpdata::nzcount, and mpq_lpinfo::O.

Referenced by mpq_ILLlib_chgcoef().

Here is the call graph for this function:

static int mpq_matrix_addcol ( mpq_ILLmatrix A,
int  colcnt,
int *  colind,
mpq_t *  colval 
)

Definition at line 2619 of file mpq_lib.c.

References ILL_CLEANUP, and mpq_ILLmatrix::matrows.

Referenced by mpq_ILLlib_addcol().

static int mpq_matrix_addrow ( mpq_ILLmatrix A,
int  rowcnt,
int *  rowind,
const mpq_t *  rowval 
) [static]

Definition at line 2332 of file mpq_lib.c.

References ILL_CLEANUP, and mpq_ILLmatrix::matcols.

static int mpq_matrix_addrow_end ( mpq_ILLmatrix A,
int  row,
int  rowcnt,
int *  rowind,
const mpq_t *  rowval 
)

Definition at line 2427 of file mpq_lib.c.

References ILL_SAFE_MALLOC, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matcols, mpq_ILLmatrix::matcolsize, mpq_ILLmatrix::matfree, mpq_ILLmatrix::matind, mpq_ILLmatrix::matsize, mpq_ILLmatrix::matval, and mpq_EXTRA_MAT.

Referenced by mpq_matrix_addcoef().

static int mpq_matrix_getcoef ( mpq_ILLmatrix A,
int  row,
int  col,
mpq_t *  val 
) [static]

Definition at line 1700 of file mpq_lib.c.

References ILL_CLEANUP, mpq_ILLmatrix::matbeg, mpq_ILLmatrix::matcnt, mpq_ILLmatrix::matcols, mpq_ILLmatrix::matind, mpq_ILLmatrix::matrows, and mpq_ILLmatrix::matval.

Referenced by mpq_ILLlib_getcoef().

static int mpq_reset_colindex ( mpq_lpinfo lp  ) 

Definition at line 3482 of file mpq_lib.c.

References mpq_ILLlpdata::colnames, mpq_ILLlpdata::coltab, ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), mpq_ILLlpdata::nstruct, and mpq_lpinfo::O.

Referenced by mpq_ILLlib_colindex().

Here is the call graph for this function:

static int mpq_reset_rowindex ( mpq_lpinfo lp  ) 

Definition at line 3502 of file mpq_lib.c.

References ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), mpq_ILLlpdata::nrows, mpq_lpinfo::O, mpq_ILLlpdata::rownames, and mpq_ILLlpdata::rowtab.

Referenced by mpq_ILLlib_rowindex().

Here is the call graph for this function:


Generated on Thu Mar 29 09:43:58 2012 for QSopt_ex by  doxygen 1.4.7