ldbl_simplex.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 /* $RCSfile: ldbl_simplex.h,v $ $Revision: 1.3 $ $Date: 2003/11/05 16:57:39 $ */
00027 
00028 #ifndef ldbl___SIMPLEX_H
00029 #define ldbl___SIMPLEX_H
00030 
00031 struct itcnt_t;
00032 #include "config.h"
00033 #include "ldbl_lpdata.h"
00034 #include "basicdefs.h"
00035 typedef struct ldbl_param_info
00036 {
00037   int origalgo;
00038   int pphaseI;
00039   int pphaseII;
00040   int dphaseI;
00041   int dphaseII;
00042   int p_strategy;
00043   int d_strategy;
00044 }
00045 ldbl_param_info;
00046 
00047 typedef struct ldbl_iter_info
00048 {
00049   int newphase;
00050   int nextphase;
00051   int nextstep;
00052   int sdisplay;
00053   int itercnt;
00054   int solstatus;
00055   int curtime;
00056   int rounds;
00057   int chkobj;
00058   int nosolve;
00059   int noprog;
00060   int inner;
00061   int algorithm;
00062   int resumeid;
00063   int pricetype;
00064   int n_restart;
00065   int n_pivot_fail;
00066   long double prevobj;
00067   long double objtol;
00068   ldbl_param_info oldinfo;
00069 }
00070 ldbl_iter_info;
00071 
00072 void ldbl_ILLsimplex_init_lpinfo ( ldbl_lpinfo * lp),
00073     ldbl_ILLsimplex_free_lpinfo ( ldbl_lpinfo * lp),
00074     ldbl_ILLsimplex_load_lpinfo ( ldbl_ILLlpdata * qslp, ldbl_lpinfo * lp),
00075     ldbl_ILLsimplex_set_bound ( ldbl_lpinfo * lp, const long double * objbound, int sense);
00076 void ldbl_free_internal_lpinfo ( ldbl_lpinfo * lp);
00077 void ldbl_init_internal_lpinfo ( ldbl_lpinfo * lp);
00078 int ldbl_build_internal_lpinfo ( ldbl_lpinfo * lp);
00079 int ldbl_ILLsimplex_retest_psolution ( ldbl_lpinfo * lp, ldbl_price_info * p, int phase,
00080       ldbl_feas_info * fs),
00081     ldbl_ILLsimplex_retest_dsolution ( ldbl_lpinfo * lp, ldbl_price_info * p, int phase,
00082       ldbl_feas_info * fs),
00083     ldbl_ILLsimplex_solution ( ldbl_lpinfo * lp, long double * xz, long double * piz,
00084       long double * dz, long double * objval),
00085     ldbl_ILLsimplex_infcertificate ( ldbl_lpinfo * lp, long double * pi),
00086     ldbl_ILLsimplex ( ldbl_lpinfo * lp, int algorithm, ldbl_ILLlp_basis * B, 
00087       ldbl_price_info * pinf, int *sol_status, int sdisplay, itcnt_t* itcnt),
00088     ldbl_ILLsimplex_pivotin ( ldbl_lpinfo * lp, ldbl_price_info * pinf, int rcnt, 
00089       int *rlist, int pivot_opt, int *basis_mod);
00090 
00091 #endif /* ldbl___SIMPLEX_H */
00092 #endif
00093 #endif

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