00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef CglRedSplitParam_H
00014 #define CglRedSplitParam_H
00015
00016 #include "CglParam.hpp"
00017
00018
00021
00060
00061 class CglRedSplitParam : public CglParam {
00062
00063 public:
00064
00071 virtual void setAway(const double value);
00073 inline double getAway() const {return away_;}
00074
00078 virtual void setLUB(const double value);
00080 inline double getLUB() const {return LUB;}
00081
00085 void setEPS_ELIM(const double value);
00087 double getEPS_ELIM() const {return EPS_ELIM;}
00088
00090 virtual void setEPS_RELAX_ABS(const double eps_ra);
00092 inline double getEPS_RELAX_ABS() const {return EPS_RELAX_ABS;}
00093
00095 virtual void setEPS_RELAX_REL(const double eps_rr);
00097 inline double getEPS_RELAX_REL() const {return EPS_RELAX_REL;}
00098
00099
00100
00101 virtual void setMAXDYN(double value);
00103 inline double getMAXDYN() const {return MAXDYN_LUB;}
00104
00105
00106
00107
00108
00109 virtual void setMAXDYN_LUB(double value);
00111 inline double getMAXDYN_LUB() const {return MAXDYN_LUB;}
00112
00116 virtual void setEPS_COEFF_LUB(const double value);
00118 inline double getEPS_COEFF_LUB() const {return EPS_COEFF_LUB;}
00119
00122 virtual void setMINVIOL(double value);
00124 inline double getMINVIOL() const {return MINVIOL;}
00125
00127 virtual void setUSE_INTSLACKS(int value);
00129 inline int getUSE_INTSLACKS() const {return USE_INTSLACKS;}
00130
00132 virtual void setUSE_CG2(int value);
00134 inline int getUSE_CG2() const {return USE_CG2;}
00135
00138 virtual void setNormIsZero(const double value);
00140 inline double getNormIsZero() const {return normIsZero;}
00141
00144 virtual void setMinReduc(const double value);
00146 inline double getMinReduc() const {return minReduc;}
00147
00153 virtual void setMaxTab(const double value);
00155 inline double getMaxTab() const {return maxTab_;}
00157
00160
00161 CglRedSplitParam(const double lub = 1000.0,
00162 const double eps_elim = 1e-12,
00163 const double eps_relax_abs = 1e-8,
00164 const double eps_relax_rel = 0.0,
00165 const double max_dyn = 1e8,
00166 const double max_dyn_lub = 1e13,
00167 const double eps_coeff_lub = 1e-13,
00168 const double min_viol = 1e-7,
00169 const int use_int_slacks = 0,
00170 const int use_cg2 = 0,
00171 const double norm_zero = 1e-5,
00172 const double min_reduc = 0.05,
00173 const double away = 0.05,
00174 const double max_tab = 1e7);
00175
00177 CglRedSplitParam(const CglParam &source,
00178 const double lub = 1000.0,
00179 const double eps_elim = 1e-12,
00180 const double eps_relax_abs = 1e-8,
00181 const double eps_relax_rel = 0.0,
00182 const double max_dyn = 1e8,
00183 const double max_dyn_lub = 1e13,
00184 const double eps_coeff_lub = 1e-13,
00185 const double min_viol = 1e-7,
00186 const int use_int_slacks = 0,
00187 const int use_cg2 = 0,
00188 const double norm_zero = 1e-5,
00189 const double min_reduc = 0.05,
00190 const double away = 0.05,
00191 const double max_tab = 1e7);
00192
00194 CglRedSplitParam(const CglRedSplitParam &source);
00195
00197 virtual CglRedSplitParam* clone() const;
00198
00200 virtual CglRedSplitParam& operator=(const CglRedSplitParam &rhs);
00201
00203 virtual ~CglRedSplitParam();
00205
00206 protected:
00207
00210
00213 double LUB;
00214
00217 double EPS_ELIM;
00218
00221 double EPS_RELAX_ABS;
00222
00226 double EPS_RELAX_REL;
00227
00228
00229
00230 double MAXDYN;
00231
00232
00233
00234
00235
00236 double MAXDYN_LUB;
00237
00240 double EPS_COEFF_LUB;
00241
00244 double MINVIOL;
00245
00247 int USE_INTSLACKS;
00248
00251 int USE_CG2;
00252
00255 double normIsZero;
00256
00259 double minReduc;
00260
00263 double away_;
00264
00267 double maxTab_;
00268
00270 };
00271
00272 #endif