dbl_lib.c File Reference

#include "qs_config.h"
#include "dbl_iqsutil.h"
#include "dbl_lpdata.h"
#include "dbl_lpdefs.h"
#include "dbl_simplex.h"
#include "dbl_price.h"
#include "dbl_basis.h"
#include "dbl_lib.h"
#include "dbl_qstruct.h"
#include "dbl_qsopt.h"
#include "dbl_lp.h"
#include "dbl_mps.h"

Include dependency graph for dbl_lib.c:

Go to the source code of this file.

Defines

#define dbl_EXTRA_COLS   (100)
#define dbl_EXTRA_MAT   (1000)
#define dbl_EXTRA_ROWS   (100)
#define dbl_PRINT_TOL   dbl_PFEAS_TOLER
#define dbl_READ_BASIS_LL   2
#define dbl_READ_BASIS_UL   3
#define dbl_READ_BASIS_XL   0
#define dbl_READ_BASIS_XU   1

Functions

static void dbl_check_pinf (dbl_price_info *pinf, int *it_exists)
static int dbl_delcols_work (dbl_lpinfo *lp, char *colmark)
int dbl_ILLlib_addcol (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int cnt, int *ind, double *val, const double obj, const double lower, const double upper, const char *name, int factorok)
int dbl_ILLlib_addcols (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int num, int *cmatcnt, int *cmatbeg, int *cmatind, double *cmatval, double *obj, double *lower, double *upper, const char **names, int factorok)
int dbl_ILLlib_addrow (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int cnt, int *ind, const double *val, const double rhs, int sense, const double range, const char *name)
int dbl_ILLlib_addrows (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int num, int *rmatcnt, int *rmatbeg, int *rmatind, const double *rmatval, const double *rhs, char *sense, const double *range, const char **names, int *factorok)
int dbl_ILLlib_basis_order (dbl_lpinfo *lp, int *header)
int dbl_ILLlib_cache_solution (dbl_lpinfo *lp, dbl_ILLlp_cache *C)
int dbl_ILLlib_chgbnd (dbl_lpinfo *lp, int indx, int lu, const double bnd)
int dbl_ILLlib_chgbnds (dbl_lpinfo *lp, int cnt, int *indx, char *lu, const double *bnd)
int dbl_ILLlib_chgcoef (dbl_lpinfo *lp, int rowindex, int colindex, double coef)
int dbl_ILLlib_chgobj (dbl_lpinfo *lp, int indx, double coef)
int dbl_ILLlib_chgrange (dbl_lpinfo *lp, int indx, double coef)
int dbl_ILLlib_chgrhs (dbl_lpinfo *lp, int indx, double coef)
int dbl_ILLlib_chgsense (dbl_lpinfo *lp, int num, int *rowlist, char *sense)
int dbl_ILLlib_colindex (dbl_lpinfo *lp, const char *name, int *colindex)
int dbl_ILLlib_colnames (dbl_lpinfo *lp, char **colnames)
int dbl_ILLlib_delcols (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int num, int *dellist, int *basis_ok)
int dbl_ILLlib_delrows (dbl_lpinfo *lp, dbl_ILLlp_basis *B, dbl_ILLlp_cache *C, int num, int *dellist, int *basis_ok, int *cache_ok)
int dbl_ILLlib_findName (dbl_ILLlpdata *qslp, int forRow, const char *name, int id, char buf[ILL_namebufsize])
int dbl_ILLlib_get_slack (dbl_lpinfo *lp, dbl_ILLlp_cache *C, double *slack)
int dbl_ILLlib_get_x (dbl_lpinfo *lp, dbl_ILLlp_cache *C, double *x)
int dbl_ILLlib_getbasis (dbl_lpinfo *lp, char *cstat, char *rstat)
int dbl_ILLlib_getbnd (dbl_lpinfo *lp, int indx, int lu, double *bnd)
int dbl_ILLlib_getbnds (dbl_lpinfo *lp, double *lower, double *upper)
int dbl_ILLlib_getbnds_list (dbl_lpinfo *lp, int num, int *collist, double *lower, double *upper)
int dbl_ILLlib_getcoef (dbl_lpinfo *lp, int rowindex, int colindex, double *coef)
int dbl_ILLlib_getcols (dbl_lpinfo *lp, int num, int *collist, int **colcnt, int **colbeg, int **colind, double **colval, double **obj, double **lower, double **upper, char ***names)
int dbl_ILLlib_getintflags (dbl_lpinfo *lp, int *intflags)
int dbl_ILLlib_getobj (dbl_lpinfo *lp, double *obj)
int dbl_ILLlib_getobj_list (dbl_lpinfo *lp, int num, int *collist, double *obj)
int dbl_ILLlib_getrhs (dbl_lpinfo *lp, double *rhs)
int dbl_ILLlib_getrownorms (dbl_lpinfo *lp, dbl_price_info *pinf, double *rownorms)
int dbl_ILLlib_getrows (dbl_lpinfo *lp, int num, int *rowlist, int **rowcnt, int **rowbeg, int **rowind, double **rowval, double **rhs, char **sense, double **range, char ***names)
int dbl_ILLlib_getsenses (dbl_lpinfo *lp, char *senses)
int dbl_ILLlib_iter (dbl_lpinfo *lp)
int dbl_ILLlib_loadbasis (dbl_ILLlp_basis *B, int nstruct, int nrows, char *cstat, char *rstat)
int dbl_ILLlib_loadrownorms (dbl_lpinfo *lp, dbl_price_info *pinf, double *rownorms)
int dbl_ILLlib_newcol (dbl_lpinfo *lp, dbl_ILLlp_basis *B, const double obj, const double lower, const double upper, const char *name, int factorok)
int dbl_ILLlib_newcols (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int num, double *obj, double *lower, double *upper, const char **names, int factorok)
int dbl_ILLlib_newrow (dbl_lpinfo *lp, dbl_ILLlp_basis *B, const double rhs, int sense, const double range, const char *name)
int dbl_ILLlib_newrows (dbl_lpinfo *lp, dbl_ILLlp_basis *B, int num, const double *rhs, char *sense, const double *range, const char **names)
int dbl_ILLlib_objval (dbl_lpinfo *lp, dbl_ILLlp_cache *C, double *val)
int dbl_ILLlib_optimize (dbl_lpinfo *lp, dbl_ILLlp_basis *B, dbl_price_info *pinf, int algo, int *status, int simplex_display, itcnt_t *itcnt)
int dbl_ILLlib_print_x (EGioFile_t *fd, dbl_lpinfo *lp, dbl_ILLlp_cache *C, double *x, int nonZerosOnly)
int dbl_ILLlib_readbasis (dbl_lpinfo *lp, dbl_ILLlp_basis *B, const char *dbl_fname)
int dbl_ILLlib_recompute_rownorms (dbl_lpinfo *lp, dbl_price_info *pinf)
int dbl_ILLlib_rowindex (dbl_lpinfo *lp, const char *name, int *rowindex)
int dbl_ILLlib_rownames (dbl_lpinfo *lp, char **rownames)
int dbl_ILLlib_solution (dbl_lpinfo *lp, dbl_ILLlp_cache *C, double *val, double *x, double *pi, double *slack, double *rc)
int dbl_ILLlib_strongbranch (dbl_lpinfo *lp, dbl_price_info *pinf, int *candidatelist, int ncand, double *xlist, double *downpen, double *uppen, int iterations, double objbound, itcnt_t *itcnt)
int dbl_ILLlib_tableau (dbl_lpinfo *lp, int row, double *binv, double *tabrow)
int dbl_ILLlib_writebasis (dbl_lpinfo *lp, dbl_ILLlp_basis *B, const char *dbl_fname)
int dbl_ILLwrite_lp_file (dbl_ILLlpdata *lp, EGioFile_t *out, dbl_qserror_collector *c)
static int dbl_matrix_addcoef (dbl_lpinfo *lp, dbl_ILLmatrix *A, int row, int col, double val)
static int dbl_matrix_addcol (dbl_ILLmatrix *A, int colcnt, int *colind, double *colval)
static int dbl_matrix_addrow (dbl_ILLmatrix *A, int rowcnt, int *rowind, const double *rowval)
static int dbl_matrix_addrow_end (dbl_ILLmatrix *A, int row, int rowcnt, int *rowind, const double *rowval)
static int dbl_matrix_getcoef (dbl_ILLmatrix *A, int row, int col, double *val)
static int dbl_reset_colindex (dbl_lpinfo *lp)
static int dbl_reset_rowindex (dbl_lpinfo *lp)


Define Documentation

#define dbl_EXTRA_COLS   (100)

Definition at line 881 of file dbl_lib.c.

Referenced by dbl_ILLlib_addcol().

#define dbl_EXTRA_MAT   (1000)

Definition at line 882 of file dbl_lib.c.

Referenced by dbl_matrix_addrow_end().

#define dbl_EXTRA_ROWS   (100)

Definition at line 880 of file dbl_lib.c.

Referenced by dbl_ILLlib_addrow().

#define dbl_PRINT_TOL   dbl_PFEAS_TOLER

Definition at line 4153 of file dbl_lib.c.

Referenced by dbl_ILLlib_print_x().

#define dbl_READ_BASIS_LL   2

Definition at line 3716 of file dbl_lib.c.

Referenced by dbl_ILLlib_readbasis().

#define dbl_READ_BASIS_UL   3

Definition at line 3717 of file dbl_lib.c.

Referenced by dbl_ILLlib_readbasis().

#define dbl_READ_BASIS_XL   0

Definition at line 3714 of file dbl_lib.c.

Referenced by dbl_ILLlib_readbasis().

#define dbl_READ_BASIS_XU   1

Definition at line 3715 of file dbl_lib.c.

Referenced by dbl_ILLlib_readbasis().


Function Documentation

static void dbl_check_pinf ( dbl_price_info pinf,
int *  it_exists 
) [static]

Definition at line 4259 of file dbl_lib.c.

References dbl_price_info::dI_price, dbl_price_info::dII_price, dbl_price_info::dsinfo, dbl_d_steep_info::norms, and QS_PRICE_DSTEEP.

Referenced by dbl_ILLlib_getrownorms(), and dbl_ILLlib_strongbranch().

static int dbl_delcols_work ( dbl_lpinfo lp,
char *  colmark 
)

Definition at line 1738 of file dbl_lib.c.

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

Here is the call graph for this function:

int dbl_ILLlib_addcol ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  cnt,
int *  ind,
double *  val,
const double  obj,
const double  lower,
const double  upper,
const char *  name,
int  factorok 
)

Definition at line 2098 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_lpinfo::basisid, dbl_ILLlpdata::colnames, dbl_ILLlp_basis::colnorms, dbl_ILLlpdata::colsize, dbl_ILLlpdata::coltab, dbl_ILLlp_basis::cstat, dbl_EXTRA_COLS, dbl_ILL_MAXDOUBLE, dbl_ILL_MINDOUBLE, dbl_ILL_UTIL_STR, dbl_ILLlib_findName(), dbl_ILLlp_rows_clear(), dbl_ILLlp_sinfo_free(), dbl_matrix_addcol(), ILL_CLEANUP, ILL_FAILfalse, ILL_FAILtrue, ILL_IFFREE, ILL_namebufsize, ILLsymboltab_register(), dbl_ILLlpdata::intmarker, dbl_ILLlpdata::lower, dbl_lpinfo::nbaz, dbl_ILLlpdata::ncols, dbl_ILLlpdata::nstruct, NULL, dbl_ILLlpdata::nzcount, dbl_lpinfo::O, dbl_ILLlpdata::obj, QS_COL_BSTAT_FREE, QS_COL_BSTAT_LOWER, QS_COL_BSTAT_UPPER, dbl_ILLlpdata::rA, dbl_ILLlpdata::sinfo, STAT_LOWER, STAT_UPPER, STAT_ZERO, dbl_ILLlpdata::structmap, dbl_ILLlpdata::structsize, dbl_ILLlpdata::upper, dbl_lpinfo::vindex, and dbl_lpinfo::vstat.

Here is the call graph for this function:

int dbl_ILLlib_addcols ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  num,
int *  cmatcnt,
int *  cmatbeg,
int *  cmatind,
double *  cmatval,
double *  obj,
double *  lower,
double *  upper,
const char **  names,
int  factorok 
)

Definition at line 2059 of file dbl_lib.c.

References dbl_ILLlib_addcol().

Here is the call graph for this function:

int dbl_ILLlib_addrow ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  cnt,
int *  ind,
const double *  val,
const double  rhs,
int  sense,
const double  range,
const char *  name 
)

Definition at line 1145 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_EXTRA_ROWS, dbl_ILLlp_rows_clear(), dbl_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, ILL_namebufsize, dbl_ILLlpdata::ncols, dbl_ILLlpdata::nrows, dbl_lpinfo::O, dbl_ILLlpdata::rA, dbl_ILLlpdata::rangeval, dbl_ILLlpdata::rhs, dbl_ILLlpdata::rowmap, dbl_ILLlpdata::rownames, dbl_ILLlpdata::rowsize, dbl_ILLlpdata::sense, and dbl_ILLlpdata::sinfo.

Here is the call graph for this function:

int dbl_ILLlib_addrows ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  num,
int *  rmatcnt,
int *  rmatbeg,
int *  rmatind,
const double *  rmatval,
const double *  rhs,
char *  sense,
const double *  range,
const char **  names,
int *  factorok 
)

Definition at line 941 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_lpinfo::baz, dbl_ILLlp_basis::colnorms, dbl_ILLprice_get_new_rownorms(), ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLmatrix::matbeg, dbl_lpinfo::matbeg, dbl_ILLmatrix::matcnt, dbl_lpinfo::matcnt, dbl_ILLmatrix::matind, dbl_lpinfo::matind, dbl_ILLmatrix::matval, dbl_lpinfo::matval, dbl_ILLlpdata::ncols, dbl_lpinfo::ncols, dbl_ILLlpdata::nrows, dbl_lpinfo::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlp_basis::rownorms, dbl_ILLlp_basis::rownorms_size, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_basis_order ( dbl_lpinfo lp,
int *  header 
)

Definition at line 497 of file dbl_lib.c.

References dbl_lpinfo::baz, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLlpdata::ncols, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::rowmap, and dbl_ILLlpdata::structmap.

int dbl_ILLlib_cache_solution ( dbl_lpinfo lp,
dbl_ILLlp_cache C 
)

Definition at line 242 of file dbl_lib.c.

References dbl_ILLlib_solution(), ILL_CLEANUP, dbl_ILLlpdata::nrows, dbl_ILLlp_cache::nrows, dbl_ILLlpdata::nstruct, dbl_ILLlp_cache::nstruct, dbl_lpinfo::O, dbl_ILLlp_cache::pi, dbl_ILLlp_cache::rc, dbl_ILLlp_cache::slack, dbl_ILLlp_cache::val, and dbl_ILLlp_cache::x.

Here is the call graph for this function:

int dbl_ILLlib_chgbnd ( dbl_lpinfo lp,
int  indx,
int  lu,
const double  bnd 
)

Definition at line 532 of file dbl_lib.c.

References dbl_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, dbl_ILLlpdata::lower, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::sinfo, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

Here is the call graph for this function:

int dbl_ILLlib_chgbnds ( dbl_lpinfo lp,
int  cnt,
int *  indx,
char *  lu,
const double *  bnd 
)

Definition at line 586 of file dbl_lib.c.

References dbl_ILLlib_chgbnd(), and ILL_CLEANUP.

Here is the call graph for this function:

int dbl_ILLlib_chgcoef ( dbl_lpinfo lp,
int  rowindex,
int  colindex,
double  coef 
)

Definition at line 1860 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_ILLlp_rows_clear(), dbl_ILLlp_sinfo_free(), dbl_matrix_addcoef(), ILL_CLEANUP, ILL_IFFREE, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::rA, dbl_ILLlpdata::sinfo, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_chgobj ( dbl_lpinfo lp,
int  indx,
double  coef 
)

Definition at line 3180 of file dbl_lib.c.

References dbl_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::obj, dbl_ILLlpdata::sinfo, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_chgrange ( dbl_lpinfo lp,
int  indx,
double  coef 
)

Definition at line 3244 of file dbl_lib.c.

References dbl_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, dbl_ILLlpdata::nrows, dbl_lpinfo::O, dbl_ILLlpdata::rangeval, dbl_ILLlpdata::rowsize, dbl_ILLlpdata::sense, and dbl_ILLlpdata::sinfo.

Here is the call graph for this function:

int dbl_ILLlib_chgrhs ( dbl_lpinfo lp,
int  indx,
double  coef 
)

Definition at line 3298 of file dbl_lib.c.

References dbl_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, dbl_ILLlpdata::nrows, dbl_lpinfo::O, dbl_ILLlpdata::rhs, and dbl_ILLlpdata::sinfo.

Here is the call graph for this function:

int dbl_ILLlib_chgsense ( dbl_lpinfo lp,
int  num,
int *  rowlist,
char *  sense 
)

Definition at line 1913 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_ILL_MAXDOUBLE, ILL_CLEANUP, dbl_ILLlpdata::lower, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matval, dbl_lpinfo::O, dbl_ILLlpdata::rowmap, dbl_ILLlpdata::sense, and dbl_ILLlpdata::upper.

int dbl_ILLlib_colindex ( dbl_lpinfo lp,
const char *  name,
int *  colindex 
)

Definition at line 3522 of file dbl_lib.c.

References dbl_ILLlpdata::coltab, dbl_reset_colindex(), ILL_CLEANUP, ILLsymboltab_getindex(), and dbl_lpinfo::O.

Here is the call graph for this function:

int dbl_ILLlib_colnames ( dbl_lpinfo lp,
char **  colnames 
)

Definition at line 3428 of file dbl_lib.c.

References dbl_ILLlpdata::colnames, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLlpdata::nstruct, and dbl_lpinfo::O.

int dbl_ILLlib_delcols ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  num,
int *  dellist,
int *  basis_ok 
)

Definition at line 1597 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_ILLlp_basis::colnorms, dbl_ILLlp_basis::cstat, dbl_ILLlp_rows_clear(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLmatrix::matcols, dbl_ILLlpdata::nstruct, dbl_ILLlp_basis::nstruct, dbl_lpinfo::O, QS_COL_BSTAT_BASIC, dbl_ILLlpdata::rA, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_delrows ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
dbl_ILLlp_cache C,
int  num,
int *  dellist,
int *  basis_ok,
int *  cache_ok 
)

Definition at line 1329 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_DFEAS_TOLER, dbl_ILLlp_rows_clear(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matcols, dbl_ILLmatrix::matind, dbl_ILLmatrix::matrows, dbl_ILLmatrix::matval, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlp_cache::pi, QS_ROW_BSTAT_LOWER, QS_ROW_BSTAT_UPPER, dbl_ILLlpdata::rA, and dbl_ILLlp_basis::rstat.

Here is the call graph for this function:

int dbl_ILLlib_findName ( dbl_ILLlpdata qslp,
int  forRow,
const char *  name,
int  id,
char  buf[ILL_namebufsize] 
)

Definition at line 4201 of file dbl_lib.c.

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

Here is the call graph for this function:

int dbl_ILLlib_get_slack ( dbl_lpinfo lp,
dbl_ILLlp_cache C,
double *  slack 
)

Definition at line 403 of file dbl_lib.c.

References dbl_ILLlib_solution().

Here is the call graph for this function:

int dbl_ILLlib_get_x ( dbl_lpinfo lp,
dbl_ILLlp_cache C,
double *  x 
)

Definition at line 388 of file dbl_lib.c.

References dbl_ILLlib_solution().

Here is the call graph for this function:

int dbl_ILLlib_getbasis ( dbl_lpinfo lp,
char *  cstat,
char *  rstat 
)

Definition at line 3582 of file dbl_lib.c.

References dbl_lpinfo::basisid, ILL_CLEANUP, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_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, dbl_ILLlpdata::structmap, and dbl_lpinfo::vstat.

int dbl_ILLlib_getbnd ( dbl_lpinfo lp,
int  indx,
int  lu,
double *  bnd 
)

Definition at line 608 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::lower, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

int dbl_ILLlib_getbnds ( dbl_lpinfo lp,
double *  lower,
double *  upper 
)

Definition at line 690 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::lower, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

int dbl_ILLlib_getbnds_list ( dbl_lpinfo lp,
int  num,
int *  collist,
double *  lower,
double *  upper 
)

Definition at line 652 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::lower, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

int dbl_ILLlib_getcoef ( dbl_lpinfo lp,
int  rowindex,
int  colindex,
double *  coef 
)

Definition at line 1822 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_matrix_getcoef(), ILL_CLEANUP, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_getcols ( dbl_lpinfo lp,
int  num,
int *  collist,
int **  colcnt,
int **  colbeg,
int **  colind,
double **  colval,
double **  obj,
double **  lower,
double **  upper,
char ***  names 
)

Definition at line 2910 of file dbl_lib.c.

References dbl_ILLlpdata::A, dbl_ILLlpdata::colnames, ILL_CLEANUP, ILL_SAFE_MALLOC, dbl_ILLlpdata::lower, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matind, dbl_ILLmatrix::matval, dbl_lpinfo::O, dbl_ILLlpdata::obj, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

int dbl_ILLlib_getintflags ( dbl_lpinfo lp,
int *  intflags 
)

Definition at line 3384 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::intmarker, dbl_ILLlpdata::nstruct, and dbl_lpinfo::O.

int dbl_ILLlib_getobj ( dbl_lpinfo lp,
double *  obj 
)

Definition at line 3151 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::obj, and dbl_ILLlpdata::structmap.

int dbl_ILLlib_getobj_list ( dbl_lpinfo lp,
int  num,
int *  collist,
double *  obj 
)

Definition at line 3111 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::obj, and dbl_ILLlpdata::structmap.

int dbl_ILLlib_getrhs ( dbl_lpinfo lp,
double *  rhs 
)

Definition at line 3216 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::nrows, dbl_lpinfo::O, and dbl_ILLlpdata::rhs.

int dbl_ILLlib_getrownorms ( dbl_lpinfo lp,
dbl_price_info pinf,
double *  rownorms 
)

Definition at line 4057 of file dbl_lib.c.

References dbl_check_pinf(), dbl_price_info::dsinfo, ILL_CLEANUP, dbl_d_steep_info::norms, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, STAT_BASIC, dbl_ILLlpdata::structmap, dbl_lpinfo::vindex, and dbl_lpinfo::vstat.

Here is the call graph for this function:

int dbl_ILLlib_getrows ( dbl_lpinfo lp,
int  num,
int *  rowlist,
int **  rowcnt,
int **  rowbeg,
int **  rowind,
double **  rowval,
double **  rhs,
char **  sense,
double **  range,
char ***  names 
)

Definition at line 2700 of file dbl_lib.c.

References dbl_ILLlp_rows_init(), ILL_CLEANUP, ILL_SAFE_MALLOC, dbl_lpinfo::O, dbl_ILLlpdata::rangeval, dbl_ILLlpdata::rhs, dbl_ILLlp_rows::rowbeg, dbl_ILLlp_rows::rowcnt, dbl_ILLlp_rows::rowind, and dbl_ILLlp_rows::rowval.

Here is the call graph for this function:

int dbl_ILLlib_getsenses ( dbl_lpinfo lp,
char *  senses 
)

Definition at line 1975 of file dbl_lib.c.

References ILL_CLEANUP, dbl_ILLlpdata::nrows, dbl_lpinfo::O, and dbl_ILLlpdata::sense.

int dbl_ILLlib_iter ( dbl_lpinfo lp  ) 

Definition at line 4138 of file dbl_lib.c.

References dbl_lpinfo::cnts, dbl_count_struct::dI_iter, dbl_count_struct::dII_iter, dbl_count_struct::pI_iter, and dbl_count_struct::pII_iter.

int dbl_ILLlib_loadbasis ( dbl_ILLlp_basis B,
int  nstruct,
int  nrows,
char *  cstat,
char *  rstat 
)

Definition at line 3679 of file dbl_lib.c.

References dbl_ILLlp_basis::cstat, dbl_ILLlp_basis_alloc(), dbl_ILLlp_basis_init(), and dbl_ILLlp_basis::rstat.

Here is the call graph for this function:

int dbl_ILLlib_loadrownorms ( dbl_lpinfo lp,
dbl_price_info pinf,
double *  rownorms 
)

Definition at line 4109 of file dbl_lib.c.

References dbl_ILLprice_load_rownorms().

Here is the call graph for this function:

int dbl_ILLlib_newcol ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
const double  obj,
const double  lower,
const double  upper,
const char *  name,
int  factorok 
)

Definition at line 2002 of file dbl_lib.c.

References dbl_ILLlib_addcol().

Here is the call graph for this function:

int dbl_ILLlib_newcols ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  num,
double *  obj,
double *  lower,
double *  upper,
const char **  names,
int  factorok 
)

Definition at line 2021 of file dbl_lib.c.

References dbl_ILLlib_addcols(), ILL_IFFREE, and ILL_SAFE_MALLOC.

Here is the call graph for this function:

int dbl_ILLlib_newrow ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
const double  rhs,
int  sense,
const double  range,
const char *  name 
)

Definition at line 884 of file dbl_lib.c.

References dbl_ILLlib_addrow().

Here is the call graph for this function:

int dbl_ILLlib_newrows ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
int  num,
const double *  rhs,
char *  sense,
const double *  range,
const char **  names 
)

Definition at line 902 of file dbl_lib.c.

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

Here is the call graph for this function:

int dbl_ILLlib_objval ( dbl_lpinfo lp,
dbl_ILLlp_cache C,
double *  val 
)

Definition at line 419 of file dbl_lib.c.

References dbl_lpinfo::basisstat, dbl_ILLlib_solution(), dbl_lpinfo::dobjval, and dbl_lp_status_info::optimal.

Here is the call graph for this function:

int dbl_ILLlib_optimize ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
dbl_price_info pinf,
int  algo,
int *  status,
int  simplex_display,
itcnt_t itcnt 
)

Definition at line 170 of file dbl_lib.c.

References __QS_SB_VERB, dbl_ILLlib_writebasis(), dbl_ILLsimplex(), dbl_ILLwrite_lp(), E_SIMPLEX_ERROR, NULL, dbl_lpinfo::O, QS_LP_CHANGE_PREC, and QS_LP_UNSOLVED.

Here is the call graph for this function:

int dbl_ILLlib_print_x ( EGioFile_t *  fd,
dbl_lpinfo lp,
dbl_ILLlp_cache C,
double *  x,
int  nonZerosOnly 
)

Definition at line 4155 of file dbl_lib.c.

References dbl_ILLlpdata::colnames, dbl_ILLlib_get_x(), dbl_PRINT_TOL, ILL_FAILfalse, dbl_lpinfo::ncols, dbl_ILLlpdata::nstruct, NULL, dbl_lpinfo::O, and strtmp.

Here is the call graph for this function:

int dbl_ILLlib_readbasis ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
const char *  dbl_fname 
)

Definition at line 3719 of file dbl_lib.c.

References dbl_ILLlp_basis::cstat, dbl_ILL_MAXDOUBLE, dbl_ILL_MINDOUBLE, dbl_ILL_UTIL_STR, dbl_ILLlib_colindex(), dbl_ILLlib_rowindex(), dbl_ILLline_reader_new(), dbl_ILLlp_basis_init(), dbl_ILLmps_empty_field(), dbl_ILLmps_empty_key(), dbl_ILLmps_error(), dbl_ILLmps_next_field(), dbl_ILLmps_next_line(), dbl_ILLmps_section_name, dbl_ILLmps_state_init(), dbl_ILLmps_warn(), dbl_ILLutil_index(), dbl_READ_BASIS_LL, dbl_READ_BASIS_UL, dbl_READ_BASIS_XL, dbl_READ_BASIS_XU, ILL_CLEANUP, ILL_MPS_ENDATA, ILL_MPS_NAME, ILL_SAFE_MALLOC, dbl_ILLlpdata::lower, dbl_ILLlp_basis::nrows, dbl_ILLlpdata::nrows, dbl_ILLlp_basis::nstruct, dbl_ILLlpdata::nstruct, NULL, dbl_lpinfo::O, dbl_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, dbl_ILLlp_basis::rstat, dbl_ILLlpdata::structmap, and dbl_ILLlpdata::upper.

Here is the call graph for this function:

int dbl_ILLlib_recompute_rownorms ( dbl_lpinfo lp,
dbl_price_info pinf 
)

Definition at line 4124 of file dbl_lib.c.

References dbl_ILLprice_build_pricing_info(), and DUAL_PHASEII.

Here is the call graph for this function:

int dbl_ILLlib_rowindex ( dbl_lpinfo lp,
const char *  name,
int *  rowindex 
)

Definition at line 3552 of file dbl_lib.c.

References dbl_reset_rowindex(), ILL_CLEANUP, ILLsymboltab_getindex(), dbl_lpinfo::O, and dbl_ILLlpdata::rowtab.

Here is the call graph for this function:

int dbl_ILLlib_rownames ( dbl_lpinfo lp,
char **  rownames 
)

Definition at line 3332 of file dbl_lib.c.

References ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLlpdata::nrows, dbl_lpinfo::O, and dbl_ILLlpdata::rownames.

int dbl_ILLlib_solution ( dbl_lpinfo lp,
dbl_ILLlp_cache C,
double *  val,
double *  x,
double *  pi,
double *  slack,
double *  rc 
)

Definition at line 265 of file dbl_lib.c.

References dbl_ILL_MAX, dbl_ILLsimplex_solution(), ILL_CLEANUP, dbl_ILLlpdata::ncols, dbl_ILLlp_cache::nrows, dbl_ILLlpdata::nrows, dbl_ILLlp_cache::nstruct, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::objsense, dbl_ILLlp_cache::pi, dbl_ILLlp_cache::rc, dbl_ILLlpdata::rowmap, dbl_ILLlp_cache::slack, dbl_ILLlpdata::structmap, dbl_ILLlp_cache::val, and dbl_ILLlp_cache::x.

Here is the call graph for this function:

int dbl_ILLlib_strongbranch ( dbl_lpinfo lp,
dbl_price_info pinf,
int *  candidatelist,
int  ncand,
double *  xlist,
double *  downpen,
double *  uppen,
int  iterations,
double  objbound,
itcnt_t itcnt 
)

Definition at line 724 of file dbl_lib.c.

References dbl_lpinfo::basisid, dbl_ILLlp_basis::cstat, dbl_check_pinf(), dbl_ILL_MAX, dbl_ILLlib_chgbnd(), dbl_ILLlib_get_x(), dbl_ILLlib_getbasis(), dbl_ILLlib_getbnd(), dbl_ILLlib_getrownorms(), dbl_ILLlib_optimize(), dbl_ILLlp_basis_alloc(), dbl_ILLlp_basis_free(), dbl_ILLlp_basis_init(), dbl_ILLprice_free_pricing_info(), dbl_ILLprice_init_pricing_info(), dbl_price_info::dI_price, dbl_price_info::dII_price, dbl_lpinfo::dobjval, DUAL_SIMPLEX, dbl_price_info::htrigger, dbl_lpinfo::maxiter, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::objsense, QS_PRICE_DSTEEP, dbl_ILLlp_basis::rownorms, dbl_ILLlp_basis::rstat, and t.

Here is the call graph for this function:

int dbl_ILLlib_tableau ( dbl_lpinfo lp,
int  row,
double *  binv,
double *  tabrow 
)

Definition at line 441 of file dbl_lib.c.

References dbl_ILLbasis_tableau_row(), ILL_CLEANUP, dbl_ILLlpdata::ncols, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::rowmap, and dbl_ILLlpdata::structmap.

Here is the call graph for this function:

int dbl_ILLlib_writebasis ( dbl_lpinfo lp,
dbl_ILLlp_basis B,
const char *  dbl_fname 
)

Definition at line 3941 of file dbl_lib.c.

References dbl_lpinfo::basisid, dbl_ILLlpdata::colnames, dbl_ILLlp_basis::cstat, dbl_ILLlib_getbasis(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_ILLlpdata::nrows, dbl_ILLlpdata::nstruct, dbl_lpinfo::O, dbl_ILLlpdata::probname, QS_COL_BSTAT_BASIC, QS_COL_BSTAT_UPPER, QS_ROW_BSTAT_BASIC, QS_ROW_BSTAT_LOWER, dbl_ILLlpdata::rownames, and dbl_ILLlp_basis::rstat.

Here is the call graph for this function:

int dbl_ILLwrite_lp_file ( dbl_ILLlpdata lp,
EGioFile_t *  out,
dbl_qserror_collector c 
)

Definition at line 4244 of file dbl_lib.c.

References dbl_ILLwrite_lp(), ILLstring_reporter_copy(), ILLstring_reporter_init(), and dbl_ILLlpdata::reporter.

Here is the call graph for this function:

static int dbl_matrix_addcoef ( dbl_lpinfo lp,
dbl_ILLmatrix A,
int  row,
int  col,
double  val 
)

Definition at line 2521 of file dbl_lib.c.

References dbl_matrix_addrow_end(), ILL_CLEANUP, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matcols, dbl_ILLmatrix::matfree, dbl_ILLmatrix::matind, dbl_ILLmatrix::matrows, dbl_ILLmatrix::matsize, dbl_ILLmatrix::matval, dbl_ILLlpdata::nzcount, and dbl_lpinfo::O.

Referenced by dbl_ILLlib_chgcoef().

Here is the call graph for this function:

static int dbl_matrix_addcol ( dbl_ILLmatrix A,
int  colcnt,
int *  colind,
double *  colval 
)

Definition at line 2619 of file dbl_lib.c.

References ILL_CLEANUP, and dbl_ILLmatrix::matrows.

Referenced by dbl_ILLlib_addcol().

static int dbl_matrix_addrow ( dbl_ILLmatrix A,
int  rowcnt,
int *  rowind,
const double *  rowval 
) [static]

Definition at line 2332 of file dbl_lib.c.

References ILL_CLEANUP, and dbl_ILLmatrix::matcols.

static int dbl_matrix_addrow_end ( dbl_ILLmatrix A,
int  row,
int  rowcnt,
int *  rowind,
const double *  rowval 
)

Definition at line 2427 of file dbl_lib.c.

References dbl_EXTRA_MAT, ILL_SAFE_MALLOC, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matcols, dbl_ILLmatrix::matcolsize, dbl_ILLmatrix::matfree, dbl_ILLmatrix::matind, dbl_ILLmatrix::matsize, and dbl_ILLmatrix::matval.

Referenced by dbl_matrix_addcoef().

static int dbl_matrix_getcoef ( dbl_ILLmatrix A,
int  row,
int  col,
double *  val 
) [static]

Definition at line 1700 of file dbl_lib.c.

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

Referenced by dbl_ILLlib_getcoef().

static int dbl_reset_colindex ( dbl_lpinfo lp  ) 

Definition at line 3482 of file dbl_lib.c.

References dbl_ILLlpdata::colnames, dbl_ILLlpdata::coltab, ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), dbl_ILLlpdata::nstruct, and dbl_lpinfo::O.

Referenced by dbl_ILLlib_colindex().

Here is the call graph for this function:

static int dbl_reset_rowindex ( dbl_lpinfo lp  ) 

Definition at line 3502 of file dbl_lib.c.

References ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), dbl_ILLlpdata::nrows, dbl_lpinfo::O, dbl_ILLlpdata::rownames, and dbl_ILLlpdata::rowtab.

Referenced by dbl_ILLlib_rowindex().

Here is the call graph for this function:


Generated on Thu Mar 29 09:33:37 2012 for QSopt_ex by  doxygen 1.4.7