mpq_lib.h

Go to the documentation of this file.
00001 #include "qs_config.h"
00002 #ifdef HAVE_LIBGMP
00003 #if HAVE_LIBGMP
00004 /****************************************************************************/
00005 /*                                                                          */
00006 /*  This file is part of QSopt_ex.                                          */
00007 /*                                                                          */
00008 /*  (c) Copyright 2006 by David Applegate, William Cook, Sanjeeb Dash,      */
00009 /*  and Daniel Espinoza                                                     */
00010 /*                                                                          */
00011 /*  Sanjeeb Dash ownership of copyright in QSopt_ex is derived from his     */
00012 /*  copyright in QSopt.                                                     */
00013 /*                                                                          */
00014 /*  This code may be used under the terms of the GNU General Public License */
00015 /*  (Version 2.1 or later) as published by the Free Software Foundation.    */
00016 /*                                                                          */
00017 /*  Alternatively, use is granted for research purposes only.               */
00018 /*                                                                          */
00019 /*  It is your choice of which of these two licenses you are operating      */
00020 /*  under.                                                                  */
00021 /*                                                                          */
00022 /*  We make no guarantees about the correctness or usefulness of this code. */
00023 /*                                                                          */
00024 /****************************************************************************/
00025 
00026 /* RCSINFO $Id: mpq_lib.h,v 1.4 2003/11/05 17:00:26 meven Exp $ */
00027 #ifndef mpq_ILL_LIB_H
00028 #define mpq_ILL_LIB_H
00029 
00030 #include "qs_config.h"
00031 #include "mpq_lpdefs.h"
00032 #include "mpq_lpdata.h"
00033 #include "mpq_price.h"
00034 #include "basicdefs.h"
00035 
00036 /****************************************************************************/
00037 /*                                                                          */
00038 /*                   Return Status for mpq_ILLlib_optimize                      */
00039 /*                                                                          */
00040 /****************************************************************************/
00041 
00042 /****************************************************************************/
00043 /*                                                                          */
00044 /*                               mpq_lib.c                                      */
00045 /*                                                                          */
00046 /****************************************************************************/
00047 
00048 struct itcnt_t;
00049 
00050 int mpq_ILLlib_optimize ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, mpq_price_info * pinf, int algo,
00051       int *status, int simplex_display, struct itcnt_t*itcnt),
00052     mpq_ILLlib_cache_solution ( mpq_lpinfo * lp, mpq_ILLlp_cache * C), 
00053     mpq_ILLlib_solution ( mpq_lpinfo * lp, mpq_ILLlp_cache * C, mpq_t * val, 
00054       mpq_t * x, mpq_t * pi, mpq_t * slack, mpq_t * rc),
00055     mpq_ILLlib_get_x ( mpq_lpinfo * lp, mpq_ILLlp_cache * C, mpq_t * x),
00056     mpq_ILLlib_get_slack ( mpq_lpinfo * lp, mpq_ILLlp_cache * C, mpq_t * slack),
00057     mpq_ILLlib_objval ( mpq_lpinfo * lp, mpq_ILLlp_cache * C, mpq_t * val),
00058     mpq_ILLlib_tableau ( mpq_lpinfo * lp, int row, mpq_t * binv, mpq_t * tabrow),
00059     mpq_ILLlib_basis_order ( mpq_lpinfo * lp, int *header),
00060     mpq_ILLlib_newrow ( mpq_lpinfo * lp, mpq_ILLlp_basis * B,const mpq_t rhs, int sense,
00061       const mpq_t range, const char *name),
00062     mpq_ILLlib_newrows ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int num,const mpq_t * rhs,
00063       char *sense, const mpq_t * range, const char **names),
00064     mpq_ILLlib_addrow ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int cnt, int *ind,
00065       const mpq_t * val, const mpq_t rhs, int sense,const mpq_t range,
00066       const char *rowname),
00067     mpq_ILLlib_addrows ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int num, int *rmatcnt, 
00068       int *rmatbeg, int *rmatind,const mpq_t * rmatval,const mpq_t * rhs, 
00069       char *sense, const mpq_t * range, const char **names, int *nofactor),
00070     mpq_ILLlib_delrows ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, mpq_ILLlp_cache * C, int num, 
00071       int *dellist, int *basis_ok, int *cache_ok), 
00072     mpq_ILLlib_newcol ( mpq_lpinfo * lp, mpq_ILLlp_basis * B,const mpq_t obj, 
00073       const mpq_t lower,const mpq_t upper, const char *name, int factorok), 
00074     mpq_ILLlib_newcols ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int num, mpq_t * obj,
00075       mpq_t * lower, mpq_t * upper, const char **names, int factorok),
00076     mpq_ILLlib_addcol ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int cnt, int *ind,
00077       mpq_t * val,const mpq_t obj,const mpq_t lower,const mpq_t upper, 
00078       const char *name, int factorok),
00079     mpq_ILLlib_addcols ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int num, int *cmatcnt,
00080       int *cmatbeg, int *cmatind, mpq_t * cmatval, mpq_t * obj,
00081       mpq_t * lower, mpq_t * upper, const char **names, int factorok),
00082     mpq_ILLlib_delcols ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, int num, int *dellist,
00083       int *basis_ok),
00084     mpq_ILLlib_chgcoef ( mpq_lpinfo * lp, int rowindex, int colindex, mpq_t coef), 
00085     mpq_ILLlib_getcoef (mpq_lpinfo *lp, int rowindex, int colindex, mpq_t* coef),
00086     mpq_ILLlib_chgrange (mpq_lpinfo *lp, int indx, mpq_t coef),
00087     mpq_ILLlib_chgsense ( mpq_lpinfo * lp, int num, int *rowlist, char *sense),
00088     mpq_ILLlib_getsenses (mpq_lpinfo *lp, char *senses),
00089     mpq_ILLlib_getrows ( mpq_lpinfo * lp, int num, int *rowlist, int **rowcnt,
00090       int **rowbeg, int **rowind, mpq_t ** rowval, mpq_t ** rhs,
00091       char **sense, mpq_t ** range, char ***names),
00092     mpq_ILLlib_getcols ( mpq_lpinfo * lp, int num, int *collist, int **colcnt,
00093       int **colbeg, int **colind, mpq_t ** colval, mpq_t ** obj,
00094       mpq_t ** lower, mpq_t ** upper, char ***names),
00095     mpq_ILLlib_getobj ( mpq_lpinfo * lp, mpq_t * obj),
00096     mpq_ILLlib_getobj_list (mpq_lpinfo *lp, int num, int* collist, mpq_t* obj),
00097     mpq_ILLlib_chgobj ( mpq_lpinfo * lp, int indx, mpq_t coef),
00098     mpq_ILLlib_getrhs ( mpq_lpinfo * lp, mpq_t * rhs),
00099     mpq_ILLlib_chgrhs ( mpq_lpinfo * lp, int indx, mpq_t coef),
00100     mpq_ILLlib_getintflags ( mpq_lpinfo * lp, int *intflags),
00101     mpq_ILLlib_rownames ( mpq_lpinfo * lp, char **rownames),
00102     mpq_ILLlib_colnames ( mpq_lpinfo * lp, char **colnames),
00103     mpq_ILLlib_colindex ( mpq_lpinfo * lp, const char *name, int *colindex),
00104     mpq_ILLlib_rowindex ( mpq_lpinfo * lp, const char *name, int *rowindex),
00105     mpq_ILLlib_chgbnd ( mpq_lpinfo * lp, int indx, int lu,const mpq_t bnd),
00106     mpq_ILLlib_chgbnds ( mpq_lpinfo * lp, int cnt, int *indx, char *lu, const mpq_t * bnd),
00107     mpq_ILLlib_getbnd ( mpq_lpinfo * lp, int indx, int lu, mpq_t * bnd),
00108     mpq_ILLlib_getbnds ( mpq_lpinfo * lp, mpq_t * lower, mpq_t * upper),
00109     mpq_ILLlib_getbnds_list ( mpq_lpinfo *lp, int num, int*collist, mpq_t *lower,
00110       mpq_t *upper),
00111     mpq_ILLlib_strongbranch ( mpq_lpinfo * lp, mpq_price_info * pinf, int *candidatelist,
00112       int ncand, mpq_t * xlist, mpq_t * downpen, mpq_t * uppen,
00113       int iterations, mpq_t objbound, struct itcnt_t*itcnt),
00114     mpq_ILLlib_getbasis ( mpq_lpinfo * lp, char *cstat, char *rstat),
00115     mpq_ILLlib_loadbasis ( mpq_ILLlp_basis * B, int nstruct, int nrows, char *cstat,
00116       char *rstat),
00117     mpq_ILLlib_readbasis ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, const char *mpq_fname),
00118     mpq_ILLlib_writebasis ( mpq_lpinfo * lp, mpq_ILLlp_basis * B, const char *mpq_fname),
00119     mpq_ILLlib_getrownorms ( mpq_lpinfo * lp, mpq_price_info * pinf, mpq_t * rownorms),
00120     mpq_ILLlib_loadrownorms ( mpq_lpinfo * lp, mpq_price_info * pinf, mpq_t * rownorms),
00121     mpq_ILLlib_recompute_rownorms ( mpq_lpinfo * lp, mpq_price_info * pinf),
00122     mpq_ILLlib_iter ( mpq_lpinfo * lp),
00123     mpq_ILLlib_print_x ( EGioFile_t * fd, mpq_lpinfo * lp, mpq_ILLlp_cache * C, mpq_t * x,
00124       int nonZerosOnly),
00125     mpq_ILLwrite_lp_file ( mpq_ILLlpdata * lp, EGioFile_t * eout, mpq_qserror_collector * c);
00126 
00127 
00128 extern int mpq_ILLlib_findName (
00129   mpq_ILLlpdata * qslp,
00130   int forRow,
00131   const char *name,
00132   int id,
00133   char buf[ILL_namebufsize]);
00134 
00135 /****************************************************************************/
00136 /*                                                                          */
00137 /*                           mpq_presolve.c                                     */
00138 /*                                                                          */
00139 /****************************************************************************/
00140 
00141 int mpq_ILLpresolve_add_logicals (
00142   mpq_ILLlpdata * lp);
00143 
00144 
00145 /****************************************************************************/
00146 /*                                                                          */
00147 /*                            mpq_binary.c                                      */
00148 /*                                                                          */
00149 /****************************************************************************/
00150 
00151 int mpq_ILLmip_binary_dfs (
00152   mpq_lpinfo * lp);
00153 
00154 #endif /* mpq_ILL_LIB_H */
00155 #endif
00156 #endif

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