00001 #ifndef __LPC_H__ 00002 #define __LPC_H__ 00003 00004 #include <vector> 00005 #include "VolVolume.hpp" 00006 00007 using std::vector; 00008 00009 class VOL_lp { 00010 public: 00011 int ncols, nrows, nels; 00012 int maxcols, nints; 00013 VOL_ivector mrow; 00014 VOL_ivector mcstrt; 00015 VOL_dvector dels; 00016 VOL_dvector dcost; 00017 VOL_dvector dloc; 00018 VOL_dvector dupc; 00019 VOL_dvector dlor; 00020 VOL_dvector dupr; 00021 VOL_ivector intnums; 00022 VOL_ivector check_col; 00023 vector<int> mr; 00024 vector<int> mc; 00025 vector<double> els; 00026 vector<double> cost; 00027 VOL_lp(); 00028 ~VOL_lp(){ } 00029 void build_col(int row, double el); 00030 void rhs(int row, double lb, double ub); 00031 void finish_up(); 00032 int n_cols(){ return ncols; } 00033 void set_nrows( const int n); 00034 void intcol(int j); 00035 void addobj( double xx); 00036 void addel(int row, double el); 00037 void startcol(); 00038 void ub(const int i, const double x); 00039 void lb(const int i, const double x); 00040 void init_bounds( const int n); 00041 }; 00042 00043 #endif