/home/coin/SVN-release/OS-2.4.1/Couenne/src/cut/sdpcuts/linquad_cuts.hpp File Reference

#include <CglCutGenerator.hpp>
#include <tracer.hpp>

Include dependency graph for linquad_cuts.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define indexQ(i, j, n)   ((n) + (i) * (2*(n)-1-(i)) / 2 + (j))
#define NEWTON_MAX_ITER   10
#define NEWTON_POW_TOLERANCE   1e-12

Functions

void linQuadCutGen (const double *sol, OsiCuts &cs)
double f_ (double x)
double fp_ (double x)
double fpp_ (double x)
double powNewton (double xc, double yc, double(*f)(double), double(*fp)(double), double(*fpp)(double))
void linQuadCutGen (const double *sol, int n, OsiCuts &cs, Tracer *tracer)
void linQuadCutGenOriginalBounds (const double *xlb, const double *xub, int n, OsiCuts &cs, Tracer *tracer)
void generateTangentDiagonalEntryCut (int n, int i, OsiCuts &cs, double xc, double yc, const double *sol, bool ifViolated)


Define Documentation

#define indexQ ( i,
j,
n   )     ((n) + (i) * (2*(n)-1-(i)) / 2 + (j))

Definition at line 16 of file linquad_cuts.hpp.

#define NEWTON_MAX_ITER   10

Definition at line 18 of file linquad_cuts.hpp.

Referenced by powNewton().

#define NEWTON_POW_TOLERANCE   1e-12

Definition at line 19 of file linquad_cuts.hpp.

Referenced by powNewton().


Function Documentation

void linQuadCutGen ( const double *  sol,
OsiCuts &  cs 
)

double f_ ( double  x  ) 

Definition at line 24 of file linquad_cuts.cpp.

Referenced by linQuadCutGen(), and linQuadCutGenOriginalBounds().

double fp_ ( double  x  ) 

Definition at line 25 of file linquad_cuts.cpp.

Referenced by linQuadCutGen().

double fpp_ ( double  x  ) 

Definition at line 26 of file linquad_cuts.cpp.

Referenced by linQuadCutGen().

double powNewton ( double  xc,
double  yc,
double(*)(double)  f,
double(*)(double)  fp,
double(*)(double)  fpp 
)

Definition at line 28 of file linquad_cuts.cpp.

References f, k, NEWTON_MAX_ITER, and NEWTON_POW_TOLERANCE.

void linQuadCutGen ( const double *  sol,
int  n,
OsiCuts &  cs,
Tracer tracer 
)

Definition at line 66 of file linquad_cuts.cpp.

References f_(), fp_(), fpp_(), generateTangentDiagonalEntryCut(), indexQ, Couenne::powNewton(), Tracer::setLinquadTime(), Tracer::setLinquadTotalCuts(), Timer::start(), and Timer::time().

Referenced by CutGen::generateCuts().

void linQuadCutGenOriginalBounds ( const double *  xlb,
const double *  xub,
int  n,
OsiCuts &  cs,
Tracer tracer 
)

Definition at line 103 of file linquad_cuts.cpp.

References f_(), generateTangentDiagonalEntryCut(), LINQUAD_BOUNDS_CUTS_PARTS, Tracer::setLinquadTime(), Tracer::setLinquadTotalCuts(), Timer::start(), and Timer::time().

void generateTangentDiagonalEntryCut ( int  n,
int  i,
OsiCuts &  cs,
double  xc,
double  yc,
const double *  sol,
bool  ifViolated 
)

Definition at line 126 of file linquad_cuts.cpp.

References indexQ.

Referenced by linQuadCutGen(), and linQuadCutGenOriginalBounds().


Generated on Thu Nov 10 03:09:14 2011 by  doxygen 1.4.7