Scippy

SCIP

Solving Constraint Integer Programs

intervalarithext.h File Reference

Detailed Description

C++ extensions to interval arithmetics for provable bounds.

Author
Stefan Vigerske

Definition in file intervalarithext.h.

#include "scip/intervalarith.h"
#include "scip/pub_message.h"

Go to the source code of this file.

Macros

#define SCIP_INTERVALARITH_UNDEFFUNC(function)
 

Functions

SCIPInterval operator+ (const SCIPInterval &x, const SCIPInterval &y)
 
SCIPInterval operator- (const SCIPInterval &x, const SCIPInterval &y)
 
SCIPInterval operator- (const SCIPInterval &y)
 
SCIPInterval operator* (const SCIPInterval &x, const SCIPInterval &y)
 
SCIPInterval operator/ (const SCIPInterval &x, const SCIPInterval &y)
 
SCIPInterval cos (const SCIPInterval &x)
 
SCIPInterval exp (const SCIPInterval &x)
 
SCIPInterval log (const SCIPInterval &x)
 
SCIPInterval pow (const SCIPInterval &x, const SCIPInterval &y)
 
SCIPInterval pow (const SCIPInterval &x, const SCIP_Real &y)
 
SCIPInterval signpow (const SCIPInterval &x, const SCIP_Real p)
 
SCIPInterval sin (const SCIPInterval &x)
 
SCIPInterval square (const SCIPInterval &x)
 
SCIPInterval sqrt (const SCIPInterval &x)
 
SCIPInterval abs (const SCIPInterval &x)
 
SCIPInterval sign (const SCIPInterval &x)
 

Macro Definition Documentation

#define SCIP_INTERVALARITH_UNDEFFUNC (   function)
Value:
inline \
SCIPInterval function( \
const SCIPInterval& x /**< operand */ \
) \
{ \
SCIPerrorMessage("Error: " #function " not implemented for intervals.\n"); \
return SCIPInterval(); \
}

macro for easy definition of not implemented interval functions

Definition at line 393 of file intervalarithext.h.

Function Documentation

SCIPInterval operator+ ( const SCIPInterval x,
const SCIPInterval y 
)
inline

addition of two intervals

Parameters
xfirst operand
ysecond operand

Definition at line 181 of file intervalarithext.h.

References SCIPInterval::infinity.

SCIPInterval operator- ( const SCIPInterval x,
const SCIPInterval y 
)
inline

substraction for two intervals

Parameters
xfirst operand
ysecond operand

Definition at line 195 of file intervalarithext.h.

References SCIPInterval::infinity.

SCIPInterval operator- ( const SCIPInterval y)
inline

negation of an interval

Parameters
yoperand

Definition at line 209 of file intervalarithext.h.

SCIPInterval operator* ( const SCIPInterval x,
const SCIPInterval y 
)
inline

multiplication of two intervals

Parameters
xfirst operand
ysecond operand

Definition at line 222 of file intervalarithext.h.

References SCIPInterval::infinity.

SCIPInterval operator/ ( const SCIPInterval x,
const SCIPInterval y 
)
inline

division for two intervals

Parameters
xfirst operand
ysecond operand

Definition at line 236 of file intervalarithext.h.

References SCIPInterval::infinity.

SCIPInterval cos ( const SCIPInterval x)
inline

cosine of an interval

Parameters
xoperand

Definition at line 250 of file intervalarithext.h.

References SCIPerrorMessage.

Referenced by evalAbs().

SCIPInterval exp ( const SCIPInterval x)
inline

exponential of an interval

Parameters
xoperand

Definition at line 262 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by evalAbs().

SCIPInterval log ( const SCIPInterval x)
inline

natural logarithm of an interval

Parameters
xoperand

Definition at line 275 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by evalAbs().

SCIPInterval pow ( const SCIPInterval x,
const SCIPInterval y 
)
inline

power of an interval to another interval

Parameters
xfirst operand
ysecond operand

Definition at line 288 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by atomic_posintpower< Type >::atomic_posintpower(), atomic_signpower< Type >::atomic_signpower(), atomic_signpower< SCIPInterval >::atomic_signpower(), and evalAbs().

SCIPInterval pow ( const SCIPInterval x,
const SCIP_Real y 
)
inline

power of an interval to a scalar

Parameters
xfirst operand
yexponent

Definition at line 302 of file intervalarithext.h.

References SCIPInterval::infinity.

SCIPInterval signpow ( const SCIPInterval x,
const SCIP_Real  p 
)
inline

signpower of an interval to a scalar

Parameters
xfirst operand
pexponent

Definition at line 316 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by atomic_signpower< SCIPInterval >::atomic_signpower().

SCIPInterval sin ( const SCIPInterval x)
inline

sine of an interval

Parameters
xoperand

Definition at line 330 of file intervalarithext.h.

References SCIPerrorMessage.

Referenced by evalAbs().

SCIPInterval square ( const SCIPInterval x)
inline

square an interval

Parameters
xoperand

Definition at line 342 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by atomic_signpower< SCIPInterval >::atomic_signpower().

SCIPInterval sqrt ( const SCIPInterval x)
inline

square root of an interval

Parameters
xoperand

Definition at line 355 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by evalAbs(), and evalMax().

SCIPInterval abs ( const SCIPInterval x)
inline

absolute value of an interval

Parameters
xoperand

Definition at line 368 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by atomic_signpower< SCIPInterval >::atomic_signpower(), and evalMax().

SCIPInterval sign ( const SCIPInterval x)
inline

sign of an interval

Parameters
xoperand

Definition at line 381 of file intervalarithext.h.

References SCIPInterval::infinity.

Referenced by atomic_signpower< SCIPInterval >::atomic_signpower(), evalAbs(), and SCIPlpiGetRealSolQuality().