ldbl_lib.h

Go to the documentation of this file.
00001 #include "qs_config.h"
00002 #ifdef HAVE_LONG_DOUBLE
00003 #if HAVE_LONG_DOUBLE
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: ldbl_lib.h,v 1.4 2003/11/05 17:00:26 meven Exp $ */
00027 #ifndef ldbl_ILL_LIB_H
00028 #define ldbl_ILL_LIB_H
00029 
00030 #include "qs_config.h"
00031 #include "ldbl_lpdefs.h"
00032 #include "ldbl_lpdata.h"
00033 #include "ldbl_price.h"
00034 #include "basicdefs.h"
00035 
00036 /****************************************************************************/
00037 /*                                                                          */
00038 /*                   Return Status for ldbl_ILLlib_optimize                      */
00039 /*                                                                          */
00040 /****************************************************************************/
00041 
00042 /****************************************************************************/
00043 /*                                                                          */
00044 /*                               ldbl_lib.c                                      */
00045 /*                                                                          */
00046 /****************************************************************************/
00047 
00048 struct itcnt_t;
00049 
00050 int ldbl_ILLlib_optimize ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, ldbl_price_info * pinf, int algo,
00051       int *status, int simplex_display, struct itcnt_t*itcnt),
00052     ldbl_ILLlib_cache_solution ( ldbl_lpinfo * lp, ldbl_ILLlp_cache * C), 
00053     ldbl_ILLlib_solution ( ldbl_lpinfo * lp, ldbl_ILLlp_cache * C, long double * val, 
00054       long double * x, long double * pi, long double * slack, long double * rc),
00055     ldbl_ILLlib_get_x ( ldbl_lpinfo * lp, ldbl_ILLlp_cache * C, long double * x),
00056     ldbl_ILLlib_get_slack ( ldbl_lpinfo * lp, ldbl_ILLlp_cache * C, long double * slack),
00057     ldbl_ILLlib_objval ( ldbl_lpinfo * lp, ldbl_ILLlp_cache * C, long double * val),
00058     ldbl_ILLlib_tableau ( ldbl_lpinfo * lp, int row, long double * binv, long double * tabrow),
00059     ldbl_ILLlib_basis_order ( ldbl_lpinfo * lp, int *header),
00060     ldbl_ILLlib_newrow ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B,const long double rhs, int sense,
00061       const long double range, const char *name),
00062     ldbl_ILLlib_newrows ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int num,const long double * rhs,
00063       char *sense, const long double * range, const char **names),
00064     ldbl_ILLlib_addrow ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int cnt, int *ind,
00065       const long double * val, const long double rhs, int sense,const long double range,
00066       const char *rowname),
00067     ldbl_ILLlib_addrows ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int num, int *rmatcnt, 
00068       int *rmatbeg, int *rmatind,const long double * rmatval,const long double * rhs, 
00069       char *sense, const long double * range, const char **names, int *nofactor),
00070     ldbl_ILLlib_delrows ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, ldbl_ILLlp_cache * C, int num, 
00071       int *dellist, int *basis_ok, int *cache_ok), 
00072     ldbl_ILLlib_newcol ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B,const long double obj, 
00073       const long double lower,const long double upper, const char *name, int factorok), 
00074     ldbl_ILLlib_newcols ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int num, long double * obj,
00075       long double * lower, long double * upper, const char **names, int factorok),
00076     ldbl_ILLlib_addcol ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int cnt, int *ind,
00077       long double * val,const long double obj,const long double lower,const long double upper, 
00078       const char *name, int factorok),
00079     ldbl_ILLlib_addcols ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int num, int *cmatcnt,
00080       int *cmatbeg, int *cmatind, long double * cmatval, long double * obj,
00081       long double * lower, long double * upper, const char **names, int factorok),
00082     ldbl_ILLlib_delcols ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, int num, int *dellist,
00083       int *basis_ok),
00084     ldbl_ILLlib_chgcoef ( ldbl_lpinfo * lp, int rowindex, int colindex, long double coef), 
00085     ldbl_ILLlib_getcoef (ldbl_lpinfo *lp, int rowindex, int colindex, long double* coef),
00086     ldbl_ILLlib_chgrange (ldbl_lpinfo *lp, int indx, long double coef),
00087     ldbl_ILLlib_chgsense ( ldbl_lpinfo * lp, int num, int *rowlist, char *sense),
00088     ldbl_ILLlib_getsenses (ldbl_lpinfo *lp, char *senses),
00089     ldbl_ILLlib_getrows ( ldbl_lpinfo * lp, int num, int *rowlist, int **rowcnt,
00090       int **rowbeg, int **rowind, long double ** rowval, long double ** rhs,
00091       char **sense, long double ** range, char ***names),
00092     ldbl_ILLlib_getcols ( ldbl_lpinfo * lp, int num, int *collist, int **colcnt,
00093       int **colbeg, int **colind, long double ** colval, long double ** obj,
00094       long double ** lower, long double ** upper, char ***names),
00095     ldbl_ILLlib_getobj ( ldbl_lpinfo * lp, long double * obj),
00096     ldbl_ILLlib_getobj_list (ldbl_lpinfo *lp, int num, int* collist, long double* obj),
00097     ldbl_ILLlib_chgobj ( ldbl_lpinfo * lp, int indx, long double coef),
00098     ldbl_ILLlib_getrhs ( ldbl_lpinfo * lp, long double * rhs),
00099     ldbl_ILLlib_chgrhs ( ldbl_lpinfo * lp, int indx, long double coef),
00100     ldbl_ILLlib_getintflags ( ldbl_lpinfo * lp, int *intflags),
00101     ldbl_ILLlib_rownames ( ldbl_lpinfo * lp, char **rownames),
00102     ldbl_ILLlib_colnames ( ldbl_lpinfo * lp, char **colnames),
00103     ldbl_ILLlib_colindex ( ldbl_lpinfo * lp, const char *name, int *colindex),
00104     ldbl_ILLlib_rowindex ( ldbl_lpinfo * lp, const char *name, int *rowindex),
00105     ldbl_ILLlib_chgbnd ( ldbl_lpinfo * lp, int indx, int lu,const long double bnd),
00106     ldbl_ILLlib_chgbnds ( ldbl_lpinfo * lp, int cnt, int *indx, char *lu, const long double * bnd),
00107     ldbl_ILLlib_getbnd ( ldbl_lpinfo * lp, int indx, int lu, long double * bnd),
00108     ldbl_ILLlib_getbnds ( ldbl_lpinfo * lp, long double * lower, long double * upper),
00109     ldbl_ILLlib_getbnds_list ( ldbl_lpinfo *lp, int num, int*collist, long double *lower,
00110       long double *upper),
00111     ldbl_ILLlib_strongbranch ( ldbl_lpinfo * lp, ldbl_price_info * pinf, int *candidatelist,
00112       int ncand, long double * xlist, long double * downpen, long double * uppen,
00113       int iterations, long double objbound, struct itcnt_t*itcnt),
00114     ldbl_ILLlib_getbasis ( ldbl_lpinfo * lp, char *cstat, char *rstat),
00115     ldbl_ILLlib_loadbasis ( ldbl_ILLlp_basis * B, int nstruct, int nrows, char *cstat,
00116       char *rstat),
00117     ldbl_ILLlib_readbasis ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, const char *ldbl_fname),
00118     ldbl_ILLlib_writebasis ( ldbl_lpinfo * lp, ldbl_ILLlp_basis * B, const char *ldbl_fname),
00119     ldbl_ILLlib_getrownorms ( ldbl_lpinfo * lp, ldbl_price_info * pinf, long double * rownorms),
00120     ldbl_ILLlib_loadrownorms ( ldbl_lpinfo * lp, ldbl_price_info * pinf, long double * rownorms),
00121     ldbl_ILLlib_recompute_rownorms ( ldbl_lpinfo * lp, ldbl_price_info * pinf),
00122     ldbl_ILLlib_iter ( ldbl_lpinfo * lp),
00123     ldbl_ILLlib_print_x ( EGioFile_t * fd, ldbl_lpinfo * lp, ldbl_ILLlp_cache * C, long double * x,
00124       int nonZerosOnly),
00125     ldbl_ILLwrite_lp_file ( ldbl_ILLlpdata * lp, EGioFile_t * eout, ldbl_qserror_collector * c);
00126 
00127 
00128 extern int ldbl_ILLlib_findName (
00129   ldbl_ILLlpdata * qslp,
00130   int forRow,
00131   const char *name,
00132   int id,
00133   char buf[ILL_namebufsize]);
00134 
00135 /****************************************************************************/
00136 /*                                                                          */
00137 /*                           ldbl_presolve.c                                     */
00138 /*                                                                          */
00139 /****************************************************************************/
00140 
00141 int ldbl_ILLpresolve_add_logicals (
00142   ldbl_ILLlpdata * lp);
00143 
00144 
00145 /****************************************************************************/
00146 /*                                                                          */
00147 /*                            ldbl_binary.c                                      */
00148 /*                                                                          */
00149 /****************************************************************************/
00150 
00151 int ldbl_ILLmip_binary_dfs (
00152   ldbl_lpinfo * lp);
00153 
00154 #endif /* ldbl_ILL_LIB_H */
00155 #endif
00156 #endif

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