/home/coin/SVN-release/OS-2.4.0/Couenne/src/cut/sdpcuts/linquad_cuts.hpp

Go to the documentation of this file.
00001 /* $Id: linquad_cuts.hpp 508 2011-02-15 21:52:44Z pbelotti $
00002  *
00003  * Name:    linquad_cuts.hpp
00004  * Author:  Andrea Qualizza
00005  * Purpose: 
00006  *
00007  * This file is licensed under the Eclipse Public License (EPL)
00008  */
00009 
00010 #ifndef LINQUAD_CUTS_HPP
00011 #define LINQUAD_CUTS_HPP
00012 
00013 #include <CglCutGenerator.hpp>
00014 #include <tracer.hpp>
00015 
00016 #define indexQ(i,j,n) ((n) + (i) * (2*(n)-1-(i)) / 2 + (j))
00017 
00018 #define NEWTON_MAX_ITER 10
00019 #define NEWTON_POW_TOLERANCE 1e-12
00020 
00021 
00022 void linQuadCutGen(const double *sol, OsiCuts &cs);
00023 
00024 double f_  (double x);
00025 double fp_ (double x);
00026 double fpp_(double x);
00027 double powNewton(double xc, double yc, double (*f)(double),double (*fp)(double),double (*fpp)(double));
00028 void linQuadCutGen(const double *sol, int n, OsiCuts &cs, Tracer *tracer);
00029 void linQuadCutGenOriginalBounds(const double *xlb, const double *xub, int n, OsiCuts &cs, Tracer *tracer);
00030 
00031 void generateTangentDiagonalEntryCut(int n,int i,OsiCuts &cs,double xc,double yc,const double* sol, bool ifViolated);
00032 
00033 
00034 
00035 #endif
00036 

Generated on Thu Sep 22 03:05:57 2011 by  doxygen 1.4.7