fp20_lib.c File Reference

#include "qs_config.h"
#include "fp20_iqsutil.h"
#include "fp20_lpdata.h"
#include "fp20_lpdefs.h"
#include "fp20_simplex.h"
#include "fp20_price.h"
#include "fp20_basis.h"
#include "fp20_lib.h"
#include "fp20_qstruct.h"
#include "fp20_qsopt.h"
#include "fp20_lp.h"
#include "fp20_mps.h"

Include dependency graph for fp20_lib.c:

Go to the source code of this file.

Defines

#define fp20_EXTRA_COLS   (100)
#define fp20_EXTRA_MAT   (1000)
#define fp20_EXTRA_ROWS   (100)
#define fp20_PRINT_TOL   fp20_PFEAS_TOLER
#define fp20_READ_BASIS_LL   2
#define fp20_READ_BASIS_UL   3
#define fp20_READ_BASIS_XL   0
#define fp20_READ_BASIS_XU   1

Functions

static void fp20_check_pinf (fp20_price_info *pinf, int *it_exists)
static int fp20_delcols_work (fp20_lpinfo *lp, char *colmark)
int fp20_ILLlib_addcol (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int cnt, int *ind, EGfp20_t *val, const EGfp20_t obj, const EGfp20_t lower, const EGfp20_t upper, const char *name, int factorok)
int fp20_ILLlib_addcols (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int num, int *cmatcnt, int *cmatbeg, int *cmatind, EGfp20_t *cmatval, EGfp20_t *obj, EGfp20_t *lower, EGfp20_t *upper, const char **names, int factorok)
int fp20_ILLlib_addrow (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int cnt, int *ind, const EGfp20_t *val, const EGfp20_t rhs, int sense, const EGfp20_t range, const char *name)
int fp20_ILLlib_addrows (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int num, int *rmatcnt, int *rmatbeg, int *rmatind, const EGfp20_t *rmatval, const EGfp20_t *rhs, char *sense, const EGfp20_t *range, const char **names, int *factorok)
int fp20_ILLlib_basis_order (fp20_lpinfo *lp, int *header)
int fp20_ILLlib_cache_solution (fp20_lpinfo *lp, fp20_ILLlp_cache *C)
int fp20_ILLlib_chgbnd (fp20_lpinfo *lp, int indx, int lu, const EGfp20_t bnd)
int fp20_ILLlib_chgbnds (fp20_lpinfo *lp, int cnt, int *indx, char *lu, const EGfp20_t *bnd)
int fp20_ILLlib_chgcoef (fp20_lpinfo *lp, int rowindex, int colindex, EGfp20_t coef)
int fp20_ILLlib_chgobj (fp20_lpinfo *lp, int indx, EGfp20_t coef)
int fp20_ILLlib_chgrange (fp20_lpinfo *lp, int indx, EGfp20_t coef)
int fp20_ILLlib_chgrhs (fp20_lpinfo *lp, int indx, EGfp20_t coef)
int fp20_ILLlib_chgsense (fp20_lpinfo *lp, int num, int *rowlist, char *sense)
int fp20_ILLlib_colindex (fp20_lpinfo *lp, const char *name, int *colindex)
int fp20_ILLlib_colnames (fp20_lpinfo *lp, char **colnames)
int fp20_ILLlib_delcols (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int num, int *dellist, int *basis_ok)
int fp20_ILLlib_delrows (fp20_lpinfo *lp, fp20_ILLlp_basis *B, fp20_ILLlp_cache *C, int num, int *dellist, int *basis_ok, int *cache_ok)
int fp20_ILLlib_findName (fp20_ILLlpdata *qslp, int forRow, const char *name, int id, char buf[ILL_namebufsize])
int fp20_ILLlib_get_slack (fp20_lpinfo *lp, fp20_ILLlp_cache *C, EGfp20_t *slack)
int fp20_ILLlib_get_x (fp20_lpinfo *lp, fp20_ILLlp_cache *C, EGfp20_t *x)
int fp20_ILLlib_getbasis (fp20_lpinfo *lp, char *cstat, char *rstat)
int fp20_ILLlib_getbnd (fp20_lpinfo *lp, int indx, int lu, EGfp20_t *bnd)
int fp20_ILLlib_getbnds (fp20_lpinfo *lp, EGfp20_t *lower, EGfp20_t *upper)
int fp20_ILLlib_getbnds_list (fp20_lpinfo *lp, int num, int *collist, EGfp20_t *lower, EGfp20_t *upper)
int fp20_ILLlib_getcoef (fp20_lpinfo *lp, int rowindex, int colindex, EGfp20_t *coef)
int fp20_ILLlib_getcols (fp20_lpinfo *lp, int num, int *collist, int **colcnt, int **colbeg, int **colind, EGfp20_t **colval, EGfp20_t **obj, EGfp20_t **lower, EGfp20_t **upper, char ***names)
int fp20_ILLlib_getintflags (fp20_lpinfo *lp, int *intflags)
int fp20_ILLlib_getobj (fp20_lpinfo *lp, EGfp20_t *obj)
int fp20_ILLlib_getobj_list (fp20_lpinfo *lp, int num, int *collist, EGfp20_t *obj)
int fp20_ILLlib_getrhs (fp20_lpinfo *lp, EGfp20_t *rhs)
int fp20_ILLlib_getrownorms (fp20_lpinfo *lp, fp20_price_info *pinf, EGfp20_t *rownorms)
int fp20_ILLlib_getrows (fp20_lpinfo *lp, int num, int *rowlist, int **rowcnt, int **rowbeg, int **rowind, EGfp20_t **rowval, EGfp20_t **rhs, char **sense, EGfp20_t **range, char ***names)
int fp20_ILLlib_getsenses (fp20_lpinfo *lp, char *senses)
int fp20_ILLlib_iter (fp20_lpinfo *lp)
int fp20_ILLlib_loadbasis (fp20_ILLlp_basis *B, int nstruct, int nrows, char *cstat, char *rstat)
int fp20_ILLlib_loadrownorms (fp20_lpinfo *lp, fp20_price_info *pinf, EGfp20_t *rownorms)
int fp20_ILLlib_newcol (fp20_lpinfo *lp, fp20_ILLlp_basis *B, const EGfp20_t obj, const EGfp20_t lower, const EGfp20_t upper, const char *name, int factorok)
int fp20_ILLlib_newcols (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int num, EGfp20_t *obj, EGfp20_t *lower, EGfp20_t *upper, const char **names, int factorok)
int fp20_ILLlib_newrow (fp20_lpinfo *lp, fp20_ILLlp_basis *B, const EGfp20_t rhs, int sense, const EGfp20_t range, const char *name)
int fp20_ILLlib_newrows (fp20_lpinfo *lp, fp20_ILLlp_basis *B, int num, const EGfp20_t *rhs, char *sense, const EGfp20_t *range, const char **names)
int fp20_ILLlib_objval (fp20_lpinfo *lp, fp20_ILLlp_cache *C, EGfp20_t *val)
int fp20_ILLlib_optimize (fp20_lpinfo *lp, fp20_ILLlp_basis *B, fp20_price_info *pinf, int algo, int *status, int simplex_display, itcnt_t *itcnt)
int fp20_ILLlib_print_x (EGioFile_t *fd, fp20_lpinfo *lp, fp20_ILLlp_cache *C, EGfp20_t *x, int nonZerosOnly)
int fp20_ILLlib_readbasis (fp20_lpinfo *lp, fp20_ILLlp_basis *B, const char *fp20_fname)
int fp20_ILLlib_recompute_rownorms (fp20_lpinfo *lp, fp20_price_info *pinf)
int fp20_ILLlib_rowindex (fp20_lpinfo *lp, const char *name, int *rowindex)
int fp20_ILLlib_rownames (fp20_lpinfo *lp, char **rownames)
int fp20_ILLlib_solution (fp20_lpinfo *lp, fp20_ILLlp_cache *C, EGfp20_t *val, EGfp20_t *x, EGfp20_t *pi, EGfp20_t *slack, EGfp20_t *rc)
int fp20_ILLlib_strongbranch (fp20_lpinfo *lp, fp20_price_info *pinf, int *candidatelist, int ncand, EGfp20_t *xlist, EGfp20_t *downpen, EGfp20_t *uppen, int iterations, EGfp20_t objbound, itcnt_t *itcnt)
int fp20_ILLlib_tableau (fp20_lpinfo *lp, int row, EGfp20_t *binv, EGfp20_t *tabrow)
int fp20_ILLlib_writebasis (fp20_lpinfo *lp, fp20_ILLlp_basis *B, const char *fp20_fname)
int fp20_ILLwrite_lp_file (fp20_ILLlpdata *lp, EGioFile_t *out, fp20_qserror_collector *c)
static int fp20_matrix_addcoef (fp20_lpinfo *lp, fp20_ILLmatrix *A, int row, int col, EGfp20_t val)
static int fp20_matrix_addcol (fp20_ILLmatrix *A, int colcnt, int *colind, EGfp20_t *colval)
static int fp20_matrix_addrow (fp20_ILLmatrix *A, int rowcnt, int *rowind, const EGfp20_t *rowval)
static int fp20_matrix_addrow_end (fp20_ILLmatrix *A, int row, int rowcnt, int *rowind, const EGfp20_t *rowval)
static int fp20_matrix_getcoef (fp20_ILLmatrix *A, int row, int col, EGfp20_t *val)
static int fp20_reset_colindex (fp20_lpinfo *lp)
static int fp20_reset_rowindex (fp20_lpinfo *lp)


Define Documentation

#define fp20_EXTRA_COLS   (100)

Definition at line 881 of file fp20_lib.c.

Referenced by fp20_ILLlib_addcol().

#define fp20_EXTRA_MAT   (1000)

Definition at line 882 of file fp20_lib.c.

Referenced by fp20_matrix_addrow_end().

#define fp20_EXTRA_ROWS   (100)

Definition at line 880 of file fp20_lib.c.

Referenced by fp20_ILLlib_addrow().

#define fp20_PRINT_TOL   fp20_PFEAS_TOLER

Definition at line 4153 of file fp20_lib.c.

Referenced by fp20_ILLlib_print_x().

#define fp20_READ_BASIS_LL   2

Definition at line 3716 of file fp20_lib.c.

Referenced by fp20_ILLlib_readbasis().

#define fp20_READ_BASIS_UL   3

Definition at line 3717 of file fp20_lib.c.

Referenced by fp20_ILLlib_readbasis().

#define fp20_READ_BASIS_XL   0

Definition at line 3714 of file fp20_lib.c.

Referenced by fp20_ILLlib_readbasis().

#define fp20_READ_BASIS_XU   1

Definition at line 3715 of file fp20_lib.c.

Referenced by fp20_ILLlib_readbasis().


Function Documentation

static void fp20_check_pinf ( fp20_price_info pinf,
int *  it_exists 
) [static]

Definition at line 4259 of file fp20_lib.c.

References fp20_price_info::dI_price, fp20_price_info::dII_price, fp20_price_info::dsinfo, fp20_d_steep_info::norms, and QS_PRICE_DSTEEP.

Referenced by fp20_ILLlib_getrownorms(), and fp20_ILLlib_strongbranch().

static int fp20_delcols_work ( fp20_lpinfo lp,
char *  colmark 
)

Definition at line 1738 of file fp20_lib.c.

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

Here is the call graph for this function:

int fp20_ILLlib_addcol ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  cnt,
int *  ind,
EGfp20_t *  val,
const EGfp20_t  obj,
const EGfp20_t  lower,
const EGfp20_t  upper,
const char *  name,
int  factorok 
)

Definition at line 2098 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_lpinfo::basisid, fp20_ILLlpdata::colnames, fp20_ILLlp_basis::colnorms, fp20_ILLlpdata::colsize, fp20_ILLlpdata::coltab, fp20_ILLlp_basis::cstat, fp20_EXTRA_COLS, fp20_ILL_MAXDOUBLE, fp20_ILL_MINDOUBLE, fp20_ILL_UTIL_STR, fp20_ILLlib_findName(), fp20_ILLlp_rows_clear(), fp20_ILLlp_sinfo_free(), fp20_matrix_addcol(), ILL_CLEANUP, ILL_FAILfalse, ILL_FAILtrue, ILL_IFFREE, ILL_namebufsize, ILLsymboltab_register(), fp20_ILLlpdata::intmarker, fp20_ILLlpdata::lower, fp20_lpinfo::nbaz, fp20_ILLlpdata::ncols, fp20_ILLlpdata::nstruct, NULL, fp20_ILLlpdata::nzcount, fp20_lpinfo::O, fp20_ILLlpdata::obj, QS_COL_BSTAT_FREE, QS_COL_BSTAT_LOWER, QS_COL_BSTAT_UPPER, fp20_ILLlpdata::rA, fp20_ILLlpdata::sinfo, STAT_LOWER, STAT_UPPER, STAT_ZERO, fp20_ILLlpdata::structmap, fp20_ILLlpdata::structsize, fp20_ILLlpdata::upper, fp20_lpinfo::vindex, and fp20_lpinfo::vstat.

Here is the call graph for this function:

int fp20_ILLlib_addcols ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  num,
int *  cmatcnt,
int *  cmatbeg,
int *  cmatind,
EGfp20_t *  cmatval,
EGfp20_t *  obj,
EGfp20_t *  lower,
EGfp20_t *  upper,
const char **  names,
int  factorok 
)

Definition at line 2059 of file fp20_lib.c.

References fp20_ILLlib_addcol().

Here is the call graph for this function:

int fp20_ILLlib_addrow ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  cnt,
int *  ind,
const EGfp20_t *  val,
const EGfp20_t  rhs,
int  sense,
const EGfp20_t  range,
const char *  name 
)

Definition at line 1145 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_EXTRA_ROWS, fp20_ILLlp_rows_clear(), fp20_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, ILL_namebufsize, fp20_ILLlpdata::ncols, fp20_ILLlpdata::nrows, fp20_lpinfo::O, fp20_ILLlpdata::rA, fp20_ILLlpdata::rangeval, fp20_ILLlpdata::rhs, fp20_ILLlpdata::rowmap, fp20_ILLlpdata::rownames, fp20_ILLlpdata::rowsize, fp20_ILLlpdata::sense, and fp20_ILLlpdata::sinfo.

Here is the call graph for this function:

int fp20_ILLlib_addrows ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  num,
int *  rmatcnt,
int *  rmatbeg,
int *  rmatind,
const EGfp20_t *  rmatval,
const EGfp20_t *  rhs,
char *  sense,
const EGfp20_t *  range,
const char **  names,
int *  factorok 
)

Definition at line 941 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_lpinfo::baz, fp20_ILLlp_basis::colnorms, fp20_ILLprice_get_new_rownorms(), ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLmatrix::matbeg, fp20_lpinfo::matbeg, fp20_ILLmatrix::matcnt, fp20_lpinfo::matcnt, fp20_ILLmatrix::matind, fp20_lpinfo::matind, fp20_ILLmatrix::matval, fp20_lpinfo::matval, fp20_ILLlpdata::ncols, fp20_lpinfo::ncols, fp20_ILLlpdata::nrows, fp20_lpinfo::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlp_basis::rownorms, fp20_ILLlp_basis::rownorms_size, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_basis_order ( fp20_lpinfo lp,
int *  header 
)

Definition at line 497 of file fp20_lib.c.

References fp20_lpinfo::baz, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLlpdata::ncols, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::rowmap, and fp20_ILLlpdata::structmap.

int fp20_ILLlib_cache_solution ( fp20_lpinfo lp,
fp20_ILLlp_cache C 
)

Definition at line 242 of file fp20_lib.c.

References fp20_ILLlib_solution(), ILL_CLEANUP, fp20_ILLlpdata::nrows, fp20_ILLlp_cache::nrows, fp20_ILLlpdata::nstruct, fp20_ILLlp_cache::nstruct, fp20_lpinfo::O, fp20_ILLlp_cache::pi, fp20_ILLlp_cache::rc, fp20_ILLlp_cache::slack, fp20_ILLlp_cache::val, and fp20_ILLlp_cache::x.

Here is the call graph for this function:

int fp20_ILLlib_chgbnd ( fp20_lpinfo lp,
int  indx,
int  lu,
const EGfp20_t  bnd 
)

Definition at line 532 of file fp20_lib.c.

References fp20_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, fp20_ILLlpdata::lower, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::sinfo, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

Here is the call graph for this function:

int fp20_ILLlib_chgbnds ( fp20_lpinfo lp,
int  cnt,
int *  indx,
char *  lu,
const EGfp20_t *  bnd 
)

Definition at line 586 of file fp20_lib.c.

References fp20_ILLlib_chgbnd(), and ILL_CLEANUP.

Here is the call graph for this function:

int fp20_ILLlib_chgcoef ( fp20_lpinfo lp,
int  rowindex,
int  colindex,
EGfp20_t  coef 
)

Definition at line 1860 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_ILLlp_rows_clear(), fp20_ILLlp_sinfo_free(), fp20_matrix_addcoef(), ILL_CLEANUP, ILL_IFFREE, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::rA, fp20_ILLlpdata::sinfo, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_chgobj ( fp20_lpinfo lp,
int  indx,
EGfp20_t  coef 
)

Definition at line 3180 of file fp20_lib.c.

References fp20_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::obj, fp20_ILLlpdata::sinfo, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_chgrange ( fp20_lpinfo lp,
int  indx,
EGfp20_t  coef 
)

Definition at line 3244 of file fp20_lib.c.

References fp20_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, fp20_ILLlpdata::nrows, fp20_lpinfo::O, fp20_ILLlpdata::rangeval, fp20_ILLlpdata::rowsize, fp20_ILLlpdata::sense, and fp20_ILLlpdata::sinfo.

Here is the call graph for this function:

int fp20_ILLlib_chgrhs ( fp20_lpinfo lp,
int  indx,
EGfp20_t  coef 
)

Definition at line 3298 of file fp20_lib.c.

References fp20_ILLlp_sinfo_free(), ILL_CLEANUP, ILL_IFFREE, fp20_ILLlpdata::nrows, fp20_lpinfo::O, fp20_ILLlpdata::rhs, and fp20_ILLlpdata::sinfo.

Here is the call graph for this function:

int fp20_ILLlib_chgsense ( fp20_lpinfo lp,
int  num,
int *  rowlist,
char *  sense 
)

Definition at line 1913 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_ILL_MAXDOUBLE, ILL_CLEANUP, fp20_ILLlpdata::lower, fp20_ILLmatrix::matbeg, fp20_ILLmatrix::matcnt, fp20_ILLmatrix::matval, fp20_lpinfo::O, fp20_ILLlpdata::rowmap, fp20_ILLlpdata::sense, and fp20_ILLlpdata::upper.

int fp20_ILLlib_colindex ( fp20_lpinfo lp,
const char *  name,
int *  colindex 
)

Definition at line 3522 of file fp20_lib.c.

References fp20_ILLlpdata::coltab, fp20_reset_colindex(), ILL_CLEANUP, ILLsymboltab_getindex(), and fp20_lpinfo::O.

Here is the call graph for this function:

int fp20_ILLlib_colnames ( fp20_lpinfo lp,
char **  colnames 
)

Definition at line 3428 of file fp20_lib.c.

References fp20_ILLlpdata::colnames, ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLlpdata::nstruct, and fp20_lpinfo::O.

int fp20_ILLlib_delcols ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  num,
int *  dellist,
int *  basis_ok 
)

Definition at line 1597 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_ILLlp_basis::colnorms, fp20_ILLlp_basis::cstat, fp20_ILLlp_rows_clear(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLmatrix::matcols, fp20_ILLlpdata::nstruct, fp20_ILLlp_basis::nstruct, fp20_lpinfo::O, QS_COL_BSTAT_BASIC, fp20_ILLlpdata::rA, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_delrows ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
fp20_ILLlp_cache C,
int  num,
int *  dellist,
int *  basis_ok,
int *  cache_ok 
)

Definition at line 1329 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_DFEAS_TOLER, fp20_ILLlp_rows_clear(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLmatrix::matbeg, fp20_ILLmatrix::matcnt, fp20_ILLmatrix::matcols, fp20_ILLmatrix::matind, fp20_ILLmatrix::matrows, fp20_ILLmatrix::matval, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlp_cache::pi, QS_ROW_BSTAT_LOWER, QS_ROW_BSTAT_UPPER, fp20_ILLlpdata::rA, and fp20_ILLlp_basis::rstat.

Here is the call graph for this function:

int fp20_ILLlib_findName ( fp20_ILLlpdata qslp,
int  forRow,
const char *  name,
int  id,
char  buf[ILL_namebufsize] 
)

Definition at line 4201 of file fp20_lib.c.

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

Here is the call graph for this function:

int fp20_ILLlib_get_slack ( fp20_lpinfo lp,
fp20_ILLlp_cache C,
EGfp20_t *  slack 
)

Definition at line 403 of file fp20_lib.c.

References fp20_ILLlib_solution().

Here is the call graph for this function:

int fp20_ILLlib_get_x ( fp20_lpinfo lp,
fp20_ILLlp_cache C,
EGfp20_t *  x 
)

Definition at line 388 of file fp20_lib.c.

References fp20_ILLlib_solution().

Here is the call graph for this function:

int fp20_ILLlib_getbasis ( fp20_lpinfo lp,
char *  cstat,
char *  rstat 
)

Definition at line 3582 of file fp20_lib.c.

References fp20_lpinfo::basisid, ILL_CLEANUP, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_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, fp20_ILLlpdata::structmap, and fp20_lpinfo::vstat.

int fp20_ILLlib_getbnd ( fp20_lpinfo lp,
int  indx,
int  lu,
EGfp20_t *  bnd 
)

Definition at line 608 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::lower, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

int fp20_ILLlib_getbnds ( fp20_lpinfo lp,
EGfp20_t *  lower,
EGfp20_t *  upper 
)

Definition at line 690 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::lower, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

int fp20_ILLlib_getbnds_list ( fp20_lpinfo lp,
int  num,
int *  collist,
EGfp20_t *  lower,
EGfp20_t *  upper 
)

Definition at line 652 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::lower, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

int fp20_ILLlib_getcoef ( fp20_lpinfo lp,
int  rowindex,
int  colindex,
EGfp20_t *  coef 
)

Definition at line 1822 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_matrix_getcoef(), ILL_CLEANUP, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_getcols ( fp20_lpinfo lp,
int  num,
int *  collist,
int **  colcnt,
int **  colbeg,
int **  colind,
EGfp20_t **  colval,
EGfp20_t **  obj,
EGfp20_t **  lower,
EGfp20_t **  upper,
char ***  names 
)

Definition at line 2910 of file fp20_lib.c.

References fp20_ILLlpdata::A, fp20_ILLlpdata::colnames, ILL_CLEANUP, ILL_SAFE_MALLOC, fp20_ILLlpdata::lower, fp20_ILLmatrix::matbeg, fp20_ILLmatrix::matcnt, fp20_ILLmatrix::matind, fp20_ILLmatrix::matval, fp20_lpinfo::O, fp20_ILLlpdata::obj, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

int fp20_ILLlib_getintflags ( fp20_lpinfo lp,
int *  intflags 
)

Definition at line 3384 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::intmarker, fp20_ILLlpdata::nstruct, and fp20_lpinfo::O.

int fp20_ILLlib_getobj ( fp20_lpinfo lp,
EGfp20_t *  obj 
)

Definition at line 3151 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::obj, and fp20_ILLlpdata::structmap.

int fp20_ILLlib_getobj_list ( fp20_lpinfo lp,
int  num,
int *  collist,
EGfp20_t *  obj 
)

Definition at line 3111 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::obj, and fp20_ILLlpdata::structmap.

int fp20_ILLlib_getrhs ( fp20_lpinfo lp,
EGfp20_t *  rhs 
)

Definition at line 3216 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::nrows, fp20_lpinfo::O, and fp20_ILLlpdata::rhs.

int fp20_ILLlib_getrownorms ( fp20_lpinfo lp,
fp20_price_info pinf,
EGfp20_t *  rownorms 
)

Definition at line 4057 of file fp20_lib.c.

References fp20_price_info::dsinfo, fp20_check_pinf(), ILL_CLEANUP, fp20_d_steep_info::norms, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, STAT_BASIC, fp20_ILLlpdata::structmap, fp20_lpinfo::vindex, and fp20_lpinfo::vstat.

Here is the call graph for this function:

int fp20_ILLlib_getrows ( fp20_lpinfo lp,
int  num,
int *  rowlist,
int **  rowcnt,
int **  rowbeg,
int **  rowind,
EGfp20_t **  rowval,
EGfp20_t **  rhs,
char **  sense,
EGfp20_t **  range,
char ***  names 
)

Definition at line 2700 of file fp20_lib.c.

References fp20_ILLlp_rows_init(), ILL_CLEANUP, ILL_SAFE_MALLOC, fp20_lpinfo::O, fp20_ILLlpdata::rangeval, fp20_ILLlpdata::rhs, fp20_ILLlp_rows::rowbeg, fp20_ILLlp_rows::rowcnt, fp20_ILLlp_rows::rowind, and fp20_ILLlp_rows::rowval.

Here is the call graph for this function:

int fp20_ILLlib_getsenses ( fp20_lpinfo lp,
char *  senses 
)

Definition at line 1975 of file fp20_lib.c.

References ILL_CLEANUP, fp20_ILLlpdata::nrows, fp20_lpinfo::O, and fp20_ILLlpdata::sense.

int fp20_ILLlib_iter ( fp20_lpinfo lp  ) 

Definition at line 4138 of file fp20_lib.c.

References fp20_lpinfo::cnts, fp20_count_struct::dI_iter, fp20_count_struct::dII_iter, fp20_count_struct::pI_iter, and fp20_count_struct::pII_iter.

int fp20_ILLlib_loadbasis ( fp20_ILLlp_basis B,
int  nstruct,
int  nrows,
char *  cstat,
char *  rstat 
)

Definition at line 3679 of file fp20_lib.c.

References fp20_ILLlp_basis::cstat, fp20_ILLlp_basis_alloc(), fp20_ILLlp_basis_init(), and fp20_ILLlp_basis::rstat.

Here is the call graph for this function:

int fp20_ILLlib_loadrownorms ( fp20_lpinfo lp,
fp20_price_info pinf,
EGfp20_t *  rownorms 
)

Definition at line 4109 of file fp20_lib.c.

References fp20_ILLprice_load_rownorms().

Here is the call graph for this function:

int fp20_ILLlib_newcol ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
const EGfp20_t  obj,
const EGfp20_t  lower,
const EGfp20_t  upper,
const char *  name,
int  factorok 
)

Definition at line 2002 of file fp20_lib.c.

References fp20_ILLlib_addcol().

Here is the call graph for this function:

int fp20_ILLlib_newcols ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  num,
EGfp20_t *  obj,
EGfp20_t *  lower,
EGfp20_t *  upper,
const char **  names,
int  factorok 
)

Definition at line 2021 of file fp20_lib.c.

References fp20_ILLlib_addcols(), ILL_IFFREE, and ILL_SAFE_MALLOC.

Here is the call graph for this function:

int fp20_ILLlib_newrow ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
const EGfp20_t  rhs,
int  sense,
const EGfp20_t  range,
const char *  name 
)

Definition at line 884 of file fp20_lib.c.

References fp20_ILLlib_addrow().

Here is the call graph for this function:

int fp20_ILLlib_newrows ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
int  num,
const EGfp20_t *  rhs,
char *  sense,
const EGfp20_t *  range,
const char **  names 
)

Definition at line 902 of file fp20_lib.c.

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

Here is the call graph for this function:

int fp20_ILLlib_objval ( fp20_lpinfo lp,
fp20_ILLlp_cache C,
EGfp20_t *  val 
)

Definition at line 419 of file fp20_lib.c.

References fp20_lpinfo::basisstat, fp20_lpinfo::dobjval, fp20_ILLlib_solution(), and fp20_lp_status_info::optimal.

Here is the call graph for this function:

int fp20_ILLlib_optimize ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
fp20_price_info pinf,
int  algo,
int *  status,
int  simplex_display,
itcnt_t itcnt 
)

Definition at line 170 of file fp20_lib.c.

References __QS_SB_VERB, E_SIMPLEX_ERROR, fp20_ILLlib_writebasis(), fp20_ILLsimplex(), fp20_ILLwrite_lp(), NULL, fp20_lpinfo::O, QS_LP_CHANGE_PREC, and QS_LP_UNSOLVED.

Here is the call graph for this function:

int fp20_ILLlib_print_x ( EGioFile_t *  fd,
fp20_lpinfo lp,
fp20_ILLlp_cache C,
EGfp20_t *  x,
int  nonZerosOnly 
)

Definition at line 4155 of file fp20_lib.c.

References fp20_ILLlpdata::colnames, fp20_ILLlib_get_x(), fp20_PRINT_TOL, ILL_FAILfalse, fp20_lpinfo::ncols, fp20_ILLlpdata::nstruct, NULL, fp20_lpinfo::O, and strtmp.

Here is the call graph for this function:

int fp20_ILLlib_readbasis ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
const char *  fp20_fname 
)

Definition at line 3719 of file fp20_lib.c.

References fp20_ILLlp_basis::cstat, fp20_ILL_MAXDOUBLE, fp20_ILL_MINDOUBLE, fp20_ILL_UTIL_STR, fp20_ILLlib_colindex(), fp20_ILLlib_rowindex(), fp20_ILLline_reader_new(), fp20_ILLlp_basis_init(), fp20_ILLmps_empty_field(), fp20_ILLmps_empty_key(), fp20_ILLmps_error(), fp20_ILLmps_next_field(), fp20_ILLmps_next_line(), fp20_ILLmps_section_name, fp20_ILLmps_state_init(), fp20_ILLmps_warn(), fp20_ILLutil_index(), fp20_READ_BASIS_LL, fp20_READ_BASIS_UL, fp20_READ_BASIS_XL, fp20_READ_BASIS_XU, ILL_CLEANUP, ILL_MPS_ENDATA, ILL_MPS_NAME, ILL_SAFE_MALLOC, fp20_ILLlpdata::lower, fp20_ILLlp_basis::nrows, fp20_ILLlpdata::nrows, fp20_ILLlp_basis::nstruct, fp20_ILLlpdata::nstruct, NULL, fp20_lpinfo::O, fp20_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, fp20_ILLlp_basis::rstat, fp20_ILLlpdata::structmap, and fp20_ILLlpdata::upper.

Here is the call graph for this function:

int fp20_ILLlib_recompute_rownorms ( fp20_lpinfo lp,
fp20_price_info pinf 
)

Definition at line 4124 of file fp20_lib.c.

References DUAL_PHASEII, and fp20_ILLprice_build_pricing_info().

Here is the call graph for this function:

int fp20_ILLlib_rowindex ( fp20_lpinfo lp,
const char *  name,
int *  rowindex 
)

Definition at line 3552 of file fp20_lib.c.

References fp20_reset_rowindex(), ILL_CLEANUP, ILLsymboltab_getindex(), fp20_lpinfo::O, and fp20_ILLlpdata::rowtab.

Here is the call graph for this function:

int fp20_ILLlib_rownames ( fp20_lpinfo lp,
char **  rownames 
)

Definition at line 3332 of file fp20_lib.c.

References ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLlpdata::nrows, fp20_lpinfo::O, and fp20_ILLlpdata::rownames.

int fp20_ILLlib_solution ( fp20_lpinfo lp,
fp20_ILLlp_cache C,
EGfp20_t *  val,
EGfp20_t *  x,
EGfp20_t *  pi,
EGfp20_t *  slack,
EGfp20_t *  rc 
)

Definition at line 265 of file fp20_lib.c.

References fp20_ILL_MAX, fp20_ILLsimplex_solution(), ILL_CLEANUP, fp20_ILLlpdata::ncols, fp20_ILLlp_cache::nrows, fp20_ILLlpdata::nrows, fp20_ILLlp_cache::nstruct, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::objsense, fp20_ILLlp_cache::pi, fp20_ILLlp_cache::rc, fp20_ILLlpdata::rowmap, fp20_ILLlp_cache::slack, fp20_ILLlpdata::structmap, fp20_ILLlp_cache::val, and fp20_ILLlp_cache::x.

Here is the call graph for this function:

int fp20_ILLlib_strongbranch ( fp20_lpinfo lp,
fp20_price_info pinf,
int *  candidatelist,
int  ncand,
EGfp20_t *  xlist,
EGfp20_t *  downpen,
EGfp20_t *  uppen,
int  iterations,
EGfp20_t  objbound,
itcnt_t itcnt 
)

Definition at line 724 of file fp20_lib.c.

References fp20_lpinfo::basisid, fp20_ILLlp_basis::cstat, fp20_price_info::dI_price, fp20_price_info::dII_price, fp20_lpinfo::dobjval, DUAL_SIMPLEX, fp20_check_pinf(), fp20_ILL_MAX, fp20_ILLlib_chgbnd(), fp20_ILLlib_get_x(), fp20_ILLlib_getbasis(), fp20_ILLlib_getbnd(), fp20_ILLlib_getrownorms(), fp20_ILLlib_optimize(), fp20_ILLlp_basis_alloc(), fp20_ILLlp_basis_free(), fp20_ILLlp_basis_init(), fp20_ILLprice_free_pricing_info(), fp20_ILLprice_init_pricing_info(), fp20_price_info::htrigger, fp20_lpinfo::maxiter, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::objsense, QS_PRICE_DSTEEP, fp20_ILLlp_basis::rownorms, fp20_ILLlp_basis::rstat, and t.

Here is the call graph for this function:

int fp20_ILLlib_tableau ( fp20_lpinfo lp,
int  row,
EGfp20_t *  binv,
EGfp20_t *  tabrow 
)

Definition at line 441 of file fp20_lib.c.

References fp20_ILLbasis_tableau_row(), ILL_CLEANUP, fp20_ILLlpdata::ncols, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::rowmap, and fp20_ILLlpdata::structmap.

Here is the call graph for this function:

int fp20_ILLlib_writebasis ( fp20_lpinfo lp,
fp20_ILLlp_basis B,
const char *  fp20_fname 
)

Definition at line 3941 of file fp20_lib.c.

References fp20_lpinfo::basisid, fp20_ILLlpdata::colnames, fp20_ILLlp_basis::cstat, fp20_ILLlib_getbasis(), ILL_CLEANUP, ILL_IFFREE, ILL_SAFE_MALLOC, fp20_ILLlpdata::nrows, fp20_ILLlpdata::nstruct, fp20_lpinfo::O, fp20_ILLlpdata::probname, QS_COL_BSTAT_BASIC, QS_COL_BSTAT_UPPER, QS_ROW_BSTAT_BASIC, QS_ROW_BSTAT_LOWER, fp20_ILLlpdata::rownames, and fp20_ILLlp_basis::rstat.

Here is the call graph for this function:

int fp20_ILLwrite_lp_file ( fp20_ILLlpdata lp,
EGioFile_t *  out,
fp20_qserror_collector c 
)

Definition at line 4244 of file fp20_lib.c.

References fp20_ILLwrite_lp(), ILLstring_reporter_copy(), ILLstring_reporter_init(), and fp20_ILLlpdata::reporter.

Here is the call graph for this function:

static int fp20_matrix_addcoef ( fp20_lpinfo lp,
fp20_ILLmatrix A,
int  row,
int  col,
EGfp20_t  val 
)

Definition at line 2521 of file fp20_lib.c.

References fp20_matrix_addrow_end(), ILL_CLEANUP, fp20_ILLmatrix::matbeg, fp20_ILLmatrix::matcnt, fp20_ILLmatrix::matcols, fp20_ILLmatrix::matfree, fp20_ILLmatrix::matind, fp20_ILLmatrix::matrows, fp20_ILLmatrix::matsize, fp20_ILLmatrix::matval, fp20_ILLlpdata::nzcount, and fp20_lpinfo::O.

Referenced by fp20_ILLlib_chgcoef().

Here is the call graph for this function:

static int fp20_matrix_addcol ( fp20_ILLmatrix A,
int  colcnt,
int *  colind,
EGfp20_t *  colval 
)

Definition at line 2619 of file fp20_lib.c.

References ILL_CLEANUP, and fp20_ILLmatrix::matrows.

Referenced by fp20_ILLlib_addcol().

static int fp20_matrix_addrow ( fp20_ILLmatrix A,
int  rowcnt,
int *  rowind,
const EGfp20_t *  rowval 
) [static]

Definition at line 2332 of file fp20_lib.c.

References ILL_CLEANUP, and fp20_ILLmatrix::matcols.

static int fp20_matrix_addrow_end ( fp20_ILLmatrix A,
int  row,
int  rowcnt,
int *  rowind,
const EGfp20_t *  rowval 
)

Definition at line 2427 of file fp20_lib.c.

References fp20_EXTRA_MAT, ILL_SAFE_MALLOC, fp20_ILLmatrix::matbeg, fp20_ILLmatrix::matcnt, fp20_ILLmatrix::matcols, fp20_ILLmatrix::matcolsize, fp20_ILLmatrix::matfree, fp20_ILLmatrix::matind, fp20_ILLmatrix::matsize, and fp20_ILLmatrix::matval.

Referenced by fp20_matrix_addcoef().

static int fp20_matrix_getcoef ( fp20_ILLmatrix A,
int  row,
int  col,
EGfp20_t *  val 
) [static]

Definition at line 1700 of file fp20_lib.c.

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

Referenced by fp20_ILLlib_getcoef().

static int fp20_reset_colindex ( fp20_lpinfo lp  ) 

Definition at line 3482 of file fp20_lib.c.

References fp20_ILLlpdata::colnames, fp20_ILLlpdata::coltab, ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), fp20_ILLlpdata::nstruct, and fp20_lpinfo::O.

Referenced by fp20_ILLlib_colindex().

Here is the call graph for this function:

static int fp20_reset_rowindex ( fp20_lpinfo lp  ) 

Definition at line 3502 of file fp20_lib.c.

References ILLsymboltab_index_ok(), ILLsymboltab_index_reset(), fp20_ILLlpdata::nrows, fp20_lpinfo::O, fp20_ILLlpdata::rownames, and fp20_ILLlpdata::rowtab.

Referenced by fp20_ILLlib_rowindex().

Here is the call graph for this function:


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