dbl_basis.h

Go to the documentation of this file.
00001 /****************************************************************************/
00002 /*                                                                          */
00003 /*  This file is part of QSopt_ex.                                          */
00004 /*                                                                          */
00005 /*  (c) Copyright 2006 by David Applegate, William Cook, Sanjeeb Dash,      */
00006 /*  and Daniel Espinoza                                                     */
00007 /*                                                                          */
00008 /*  Sanjeeb Dash ownership of copyright in QSopt_ex is derived from his     */
00009 /*  copyright in QSopt.                                                     */
00010 /*                                                                          */
00011 /*  This code may be used under the terms of the GNU General Public License */
00012 /*  (Version 2.1 or later) as published by the Free Software Foundation.    */
00013 /*                                                                          */
00014 /*  Alternatively, use is granted for research purposes only.               */
00015 /*                                                                          */
00016 /*  It is your choice of which of these two licenses you are operating      */
00017 /*  under.                                                                  */
00018 /*                                                                          */
00019 /*  We make no guarantees about the correctness or usefulness of this code. */
00020 /*                                                                          */
00021 /****************************************************************************/
00022 
00023 /* RCSINFO $Id: dbl_basis.h,v 1.3 2003/11/05 16:57:39 meven Exp $ */
00024 #ifndef dbl___BASIS_H
00025 #define dbl___BASIS_H
00026 
00027 #include "config.h"
00028 #include "dbl_dstruct.h"
00029 #include "dbl_lpdefs.h"
00030 #include "dbl_lpdata.h"
00031 
00032 #if EGLPNUM_TYPE != DBL_TYPE && EGLPNUM_TYPE != LDBL_TYPE
00033 extern double dbl_CB_PRI_RLIMIT;  /* = 0.25 */
00034 extern double dbl_CB_INF_RATIO; /* = 10.0 */
00035 extern double dbl_CB_EPS;       /* = 0.001 */
00036 #endif
00037 
00038 typedef struct dbl_var_data
00039 {
00040   int nartif;
00041   int nslacks;
00042   int nfree;
00043   int nbndone;
00044   int nbounded;
00045   int nfixed;
00046   double cmax;
00047 }
00048 dbl_var_data;
00049 
00050 void dbl_ILLbasis_init_vardata (
00051   dbl_var_data * vd);
00052 void dbl_ILLbasis_clear_vardata (
00053   dbl_var_data * vd);
00054 
00055 int dbl_ILLbasis_build_basisinfo (
00056   dbl_lpinfo * lp),
00057   dbl_ILLbasis_get_initial (
00058   dbl_lpinfo * lp,
00059   int algorithm),
00060   dbl_ILLbasis_get_cinitial (
00061   dbl_lpinfo * lp,
00062   int algorithm),
00063   dbl_ILLbasis_load (
00064   dbl_lpinfo * lp,
00065   dbl_ILLlp_basis * B),
00066   dbl_ILLbasis_tableau_row (
00067   dbl_lpinfo * lp,
00068   int row,
00069   double * brow,
00070   double * trow,
00071   double * rhs,
00072   int strict),
00073   dbl_ILLbasis_factor (
00074   dbl_lpinfo * lp,
00075   int *singular),
00076   dbl_ILLbasis_refactor (
00077   dbl_lpinfo * lp),
00078   dbl_ILLbasis_update (
00079   dbl_lpinfo * lp,
00080   dbl_svector * y,
00081   int lindex,
00082   int *refactor,
00083   int *singular);
00084 
00085 void dbl_ILLbasis_column_solve (
00086   dbl_lpinfo * lp,
00087   dbl_svector * rhs,
00088   dbl_svector * soln),
00089   dbl_ILLbasis_column_solve_update (
00090   dbl_lpinfo * lp,
00091   dbl_svector * rhs,
00092   dbl_svector * upd,
00093   dbl_svector * soln),
00094   dbl_ILLbasis_row_solve (
00095   dbl_lpinfo * lp,
00096   dbl_svector * rhs,
00097   dbl_svector * soln),
00098   dbl_ILLbasis_free_basisinfo (
00099   dbl_lpinfo * lp),
00100   dbl_ILLbasis_free_fbasisinfo (
00101   dbl_lpinfo * lp),
00102   dbl_ILLbasis_init_basisinfo (
00103   dbl_lpinfo * lp);
00104 
00105 #endif /* dbl___BASIS_H */

Generated on Wed Apr 22 09:16:09 2009 for QSopt_ex by  doxygen 1.5.2