Generated on for Gecode by doxygen 1.17.0

Floating point rounding policy. More...

#include <gecode/float.hh>

Constructor and destructor

 Rounding (void)
 Default constructor (configures full rounding mode).
 ~Rounding (void)
 Destructor (restores previous rounding mode).

Arithmetic operations

FloatNum add_down (FloatNum x, FloatNum y)
 Return lower bound of x plus y (domain: \( [-\infty;+\infty][-\infty;+\infty]\)).
FloatNum add_up (FloatNum x, FloatNum y)
 Return upper bound of x plus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).
FloatNum sub_down (FloatNum x, FloatNum y)
 Return lower bound of x minus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).
FloatNum sub_up (FloatNum x, FloatNum y)
 Return upper bound of x minus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).
FloatNum mul_down (FloatNum x, FloatNum y)
 Return lower bound of x times y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).
FloatNum mul_up (FloatNum x, FloatNum y)
 Return upper bound of x times y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).
FloatNum div_down (FloatNum x, FloatNum y)
 Return lower bound of x divided by y (domain: \( [-\infty;+\infty] ([-\infty;+\infty]-{0}) \)).
FloatNum div_up (FloatNum x, FloatNum y)
 Return upper bound of x divided y (domain: \( [-\infty;+\infty] ([-\infty;+\infty]-{0})\)).
FloatNum sqrt_down (FloatNum x)
 Return lower bound of square root of x (domain: \( ]0;+\infty] \)).
FloatNum sqrt_up (FloatNum x)
 Return upper bound of square root of x (domain: \( ]0;+\infty]\)).

Miscellaneous operations

FloatNum median (FloatNum x, FloatNum y)
 Return median of x and y (domain: \( [-\infty;+\infty][-\infty;+\infty]\)).
FloatNum int_down (FloatNum x)
 Return next downward-rounded integer of x (domain: \( [-\infty;+\infty]\)).
FloatNum int_up (FloatNum x)
 Return next upward-rounded integer of x (domain: \( [-\infty;+\infty] \)).

Exponential functions

FloatNum exp_down (FloatNum x)
 Return lower bound of exponential of x (domain: \( [-\infty;+\infty]\)).
FloatNum exp_up (FloatNum x)
 Return upper bound of exponential of x (domain: \( [-\infty;+\infty]\)).
FloatNum log_down (FloatNum x)
 Return lower bound of logarithm of x (domain: \( ]0;+\infty]\)).
FloatNum log_up (FloatNum x)
 Return upper bound of logarithm of x (domain: \( ]0;+\infty]\)).

Trigonometric functions

FloatNum sin_down (FloatNum x)
 Return lower bound of sine of x (domain: \( [0;2\pi]\)).
FloatNum sin_up (FloatNum x)
 Return upper bound of sine of x (domain: \( [0;2\pi]\)).
FloatNum cos_down (FloatNum x)
 Return lower bound of cosine of x (domain: \( [0;2\pi]\)).
FloatNum cos_up (FloatNum x)
 Return upper bound of cosine of x (domain: \( [0;2\pi]\)).
FloatNum tan_down (FloatNum x)
 Return lower bound of tangent of x (domain: \( ]-\pi/2;\pi/2[\)).
FloatNum tan_up (FloatNum x)
 Return upper bound of tangent of x (domain: \( ]-\pi/2;\pi/2[\)).

Inverse trigonometric functions

FloatNum asin_down (FloatNum x)
 Return lower bound of arcsine of x (domain: \( [-1;1]\)).
FloatNum asin_up (FloatNum x)
 Return upper bound of arcsine of x (domain: \( [-1;1]\)).
FloatNum acos_down (FloatNum x)
 Return lower bound of arccosine of x (domain: \( [-1;1]\)).
FloatNum acos_up (FloatNum x)
 Return upper bound of arccossine of x (domain: \( [-1;1]\)).
FloatNum atan_down (FloatNum x)
 Return lower bound of arctangent of x (domain: \( [-\infty;+\infty]\)).
FloatNum atan_up (FloatNum x)
 Return upper bound of arctangent of x (domain: \( [-\infty;+\infty]\)).

Hyperbolic functions

FloatNum sinh_down (FloatNum x)
 Return lower bound of hyperbolic sine of x (domain: \( [-\infty;+\infty]\)).
FloatNum sinh_up (FloatNum x)
 Return upper bound of hyperbolic sine of x (domain: \( [-\infty;+\infty]\)).
FloatNum cosh_down (FloatNum x)
 Return lower bound of hyperbolic cosine of x (domain: \( [-\infty;+\infty]\)).
FloatNum cosh_up (FloatNum x)
 Return upper bound of hyperbolic cosine of x (domain: \( [-\infty;+\infty]\)).
FloatNum tanh_down (FloatNum x)
 Return lower bound of hyperbolic tangent of x (domain: \( [-\infty;+\infty]\)).
FloatNum tanh_up (FloatNum x)
 Return upper bound of hyperbolic tangent of x (domain: \( [-\infty;+\infty]\)).

Inverse hyperbolic functions

FloatNum asinh_down (FloatNum x)
 Return lower bound of hyperbolic arcsine of x (domain: \( [-\infty;+\infty]\)).
FloatNum asinh_up (FloatNum x)
 Return upper bound of hyperbolic arcsine of x (domain: \( [-\infty;+\infty]\)).
FloatNum acosh_down (FloatNum x)
 Return lower bound of hyperbolic arccosine of x (domain: \( [1;+\infty]\)).
FloatNum acosh_up (FloatNum x)
 Return upper bound of hyperbolic arccosine of x (domain: \( [1;+\infty]\)).
FloatNum atanh_down (FloatNum x)
 Return lower bound of hyperbolic arctangent of x (domain: \( [-1;1]\)).
FloatNum atanh_up (FloatNum x)
 Return upper bound of hyperbolic arctangent of x (domain: \( [-1;1]\)).

Detailed Description

Floating point rounding policy.

Definition at line 154 of file float.hh.

Constructor & Destructor Documentation

◆ Rounding()

Gecode::Float::Rounding::Rounding ( void )
inline

Default constructor (configures full rounding mode).

Definition at line 37 of file rounding.hpp.

◆ ~Rounding()

Gecode::Float::Rounding::~Rounding ( void )
inline

Destructor (restores previous rounding mode).

Definition at line 41 of file rounding.hpp.

Member Function Documentation

◆ add_down()

FloatNum Gecode::Float::Rounding::add_down ( FloatNum x,
FloatNum y )

Return lower bound of x plus y (domain: \( [-\infty;+\infty][-\infty;+\infty]\)).

◆ add_up()

FloatNum Gecode::Float::Rounding::add_up ( FloatNum x,
FloatNum y )

Return upper bound of x plus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).

◆ sub_down()

FloatNum Gecode::Float::Rounding::sub_down ( FloatNum x,
FloatNum y )

Return lower bound of x minus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).

◆ sub_up()

FloatNum Gecode::Float::Rounding::sub_up ( FloatNum x,
FloatNum y )

Return upper bound of x minus y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).

◆ mul_down()

FloatNum Gecode::Float::Rounding::mul_down ( FloatNum x,
FloatNum y )

Return lower bound of x times y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).

◆ mul_up()

FloatNum Gecode::Float::Rounding::mul_up ( FloatNum x,
FloatNum y )

Return upper bound of x times y (domain: \( [-\infty;+\infty] [-\infty;+\infty]\)).

◆ div_down()

FloatNum Gecode::Float::Rounding::div_down ( FloatNum x,
FloatNum y )

Return lower bound of x divided by y (domain: \( [-\infty;+\infty] ([-\infty;+\infty]-{0}) \)).

◆ div_up()

FloatNum Gecode::Float::Rounding::div_up ( FloatNum x,
FloatNum y )

Return upper bound of x divided y (domain: \( [-\infty;+\infty] ([-\infty;+\infty]-{0})\)).

◆ sqrt_down()

FloatNum Gecode::Float::Rounding::sqrt_down ( FloatNum x)

Return lower bound of square root of x (domain: \( ]0;+\infty] \)).

◆ sqrt_up()

FloatNum Gecode::Float::Rounding::sqrt_up ( FloatNum x)

Return upper bound of square root of x (domain: \( ]0;+\infty]\)).

◆ median()

FloatNum Gecode::Float::Rounding::median ( FloatNum x,
FloatNum y )
inline

Return median of x and y (domain: \( [-\infty;+\infty][-\infty;+\infty]\)).

Definition at line 44 of file rounding.hpp.

◆ int_down()

FloatNum Gecode::Float::Rounding::int_down ( FloatNum x)

Return next downward-rounded integer of x (domain: \( [-\infty;+\infty]\)).

◆ int_up()

FloatNum Gecode::Float::Rounding::int_up ( FloatNum x)

Return next upward-rounded integer of x (domain: \( [-\infty;+\infty] \)).

◆ exp_down()

FloatNum Gecode::Float::Rounding::exp_down ( FloatNum x)

Return lower bound of exponential of x (domain: \( [-\infty;+\infty]\)).

◆ exp_up()

FloatNum Gecode::Float::Rounding::exp_up ( FloatNum x)

Return upper bound of exponential of x (domain: \( [-\infty;+\infty]\)).

◆ log_down()

FloatNum Gecode::Float::Rounding::log_down ( FloatNum x)

Return lower bound of logarithm of x (domain: \( ]0;+\infty]\)).

◆ log_up()

FloatNum Gecode::Float::Rounding::log_up ( FloatNum x)

Return upper bound of logarithm of x (domain: \( ]0;+\infty]\)).

◆ sin_down()

FloatNum Gecode::Float::Rounding::sin_down ( FloatNum x)

Return lower bound of sine of x (domain: \( [0;2\pi]\)).

◆ sin_up()

FloatNum Gecode::Float::Rounding::sin_up ( FloatNum x)

Return upper bound of sine of x (domain: \( [0;2\pi]\)).

◆ cos_down()

FloatNum Gecode::Float::Rounding::cos_down ( FloatNum x)

Return lower bound of cosine of x (domain: \( [0;2\pi]\)).

◆ cos_up()

FloatNum Gecode::Float::Rounding::cos_up ( FloatNum x)

Return upper bound of cosine of x (domain: \( [0;2\pi]\)).

◆ tan_down()

FloatNum Gecode::Float::Rounding::tan_down ( FloatNum x)

Return lower bound of tangent of x (domain: \( ]-\pi/2;\pi/2[\)).

◆ tan_up()

FloatNum Gecode::Float::Rounding::tan_up ( FloatNum x)

Return upper bound of tangent of x (domain: \( ]-\pi/2;\pi/2[\)).

◆ asin_down()

FloatNum Gecode::Float::Rounding::asin_down ( FloatNum x)

Return lower bound of arcsine of x (domain: \( [-1;1]\)).

◆ asin_up()

FloatNum Gecode::Float::Rounding::asin_up ( FloatNum x)

Return upper bound of arcsine of x (domain: \( [-1;1]\)).

◆ acos_down()

FloatNum Gecode::Float::Rounding::acos_down ( FloatNum x)

Return lower bound of arccosine of x (domain: \( [-1;1]\)).

◆ acos_up()

FloatNum Gecode::Float::Rounding::acos_up ( FloatNum x)

Return upper bound of arccossine of x (domain: \( [-1;1]\)).

◆ atan_down()

FloatNum Gecode::Float::Rounding::atan_down ( FloatNum x)

Return lower bound of arctangent of x (domain: \( [-\infty;+\infty]\)).

◆ atan_up()

FloatNum Gecode::Float::Rounding::atan_up ( FloatNum x)

Return upper bound of arctangent of x (domain: \( [-\infty;+\infty]\)).

◆ sinh_down()

FloatNum Gecode::Float::Rounding::sinh_down ( FloatNum x)

Return lower bound of hyperbolic sine of x (domain: \( [-\infty;+\infty]\)).

◆ sinh_up()

FloatNum Gecode::Float::Rounding::sinh_up ( FloatNum x)

Return upper bound of hyperbolic sine of x (domain: \( [-\infty;+\infty]\)).

◆ cosh_down()

FloatNum Gecode::Float::Rounding::cosh_down ( FloatNum x)

Return lower bound of hyperbolic cosine of x (domain: \( [-\infty;+\infty]\)).

◆ cosh_up()

FloatNum Gecode::Float::Rounding::cosh_up ( FloatNum x)

Return upper bound of hyperbolic cosine of x (domain: \( [-\infty;+\infty]\)).

◆ tanh_down()

FloatNum Gecode::Float::Rounding::tanh_down ( FloatNum x)

Return lower bound of hyperbolic tangent of x (domain: \( [-\infty;+\infty]\)).

◆ tanh_up()

FloatNum Gecode::Float::Rounding::tanh_up ( FloatNum x)

Return upper bound of hyperbolic tangent of x (domain: \( [-\infty;+\infty]\)).

◆ asinh_down()

FloatNum Gecode::Float::Rounding::asinh_down ( FloatNum x)

Return lower bound of hyperbolic arcsine of x (domain: \( [-\infty;+\infty]\)).

◆ asinh_up()

FloatNum Gecode::Float::Rounding::asinh_up ( FloatNum x)

Return upper bound of hyperbolic arcsine of x (domain: \( [-\infty;+\infty]\)).

◆ acosh_down()

FloatNum Gecode::Float::Rounding::acosh_down ( FloatNum x)

Return lower bound of hyperbolic arccosine of x (domain: \( [1;+\infty]\)).

◆ acosh_up()

FloatNum Gecode::Float::Rounding::acosh_up ( FloatNum x)

Return upper bound of hyperbolic arccosine of x (domain: \( [1;+\infty]\)).

◆ atanh_down()

FloatNum Gecode::Float::Rounding::atanh_down ( FloatNum x)

Return lower bound of hyperbolic arctangent of x (domain: \( [-1;1]\)).

◆ atanh_up()

FloatNum Gecode::Float::Rounding::atanh_up ( FloatNum x)

Return upper bound of hyperbolic arctangent of x (domain: \( [-1;1]\)).


The documentation for this class was generated from the following files: