/home/coin/SVN-release/OS-2.0.0/Couenne/src/expression/operators/exprPow.hpp File Reference

#include <math.h>
#include "exprOp.hpp"
#include "exprMul.hpp"
#include "exprClone.hpp"
#include "exprConst.hpp"

Include dependency graph for exprPow.hpp:

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

Go to the source code of this file.

Classes

class  exprPow
 Power of an expression (binary operator). More...

Functions

CouNumber safe_pow (CouNumber base, CouNumber exponent)
 compute power and check for integer-and-odd inverse exponent
void addPowEnvelope (const CouenneCutGenerator *, OsiCuts &, int, int, CouNumber, CouNumber, CouNumber, CouNumber, CouNumber, int)
 add upper/lower envelope to power in convex/concave areas
CouNumber powNewton (CouNumber, CouNumber, unary_function, unary_function, unary_function)
 find proper tangent point to add deepest tangent cut
CouNumber powNewton (CouNumber, CouNumber, funtriplet *)
 find proper tangent point to add deepest tangent cut


Function Documentation

CouNumber safe_pow ( CouNumber  base,
CouNumber  exponent 
) [inline]

compute power and check for integer-and-odd inverse exponent

Definition at line 117 of file exprPow.hpp.

References COUENNE_EPS, COUENNE_INFINITY, and COUENNE_round.

Referenced by exprPow::closestFeasible(), kpowertriplet::F(), powertriplet::F(), kpowertriplet::Fp(), powertriplet::Fp(), kpowertriplet::FpInv(), powertriplet::FpInv(), kpowertriplet::Fpp(), powertriplet::Fpp(), exprPow::generateCuts(), exprPow::getBounds(), exprPow::gradientNorm(), exprPow::impliedBound(), exprPow::isCuttable(), negPowSelectBranch(), exprPow::operator()(), and exprPow::selectBranch().

void addPowEnvelope ( const CouenneCutGenerator ,
OsiCuts &  ,
int  ,
int  ,
CouNumber  ,
CouNumber  ,
CouNumber  ,
CouNumber  ,
CouNumber  ,
int   
)

add upper/lower envelope to power in convex/concave areas

Definition at line 24 of file conv-exprPow-envelope.cpp.

References COU_MAX_COEFF, log(), and powNewton().

Referenced by exprPow::generateCuts().

CouNumber powNewton ( CouNumber  ,
CouNumber  ,
unary_function  ,
unary_function  ,
unary_function   
)

find proper tangent point to add deepest tangent cut

Definition at line 27 of file powNewton.cpp.

References COU_POW_TOLERANCE, f, k, and MAX_ITER.

CouNumber powNewton ( CouNumber  ,
CouNumber  ,
funtriplet  
)

find proper tangent point to add deepest tangent cut

Definition at line 73 of file powNewton.cpp.

References COU_POW_TOLERANCE, k, and MAX_ITER.


Generated on Mon Aug 3 03:05:33 2009 by  doxygen 1.4.7