MC++
mc::Options Struct Reference

Options of mc::TModel.

#include <~tmodel.hpp>

List of all members.

Public Types

enum  BOUNDER {
  NAIVE = 0, LSB, EIGEN, BERNSTEIN,
  HYBRID
}
 Taylor model range bounder option. More...

Public Member Functions

 Options ()
 Constructor of mc::TModel::Options.
template<typename U >
 Options (U &options)
 Copy constructor of mc::TModel::Options.
template<typename U >
Optionsoperator= (U &options)
 Assignment of mc::TModel::Options.

Public Attributes

int BOUNDER_TYPE
 Taylor model range bounder - See How are the options set for the computation of a Taylor model?.
unsigned int BOUNDER_ORDER
 Order of Bernstein polynomial for Taylor model range bounding (no less than Taylor model order!). Only if mc::TModel::options::BOUNDER_TYPE is set to mc::TModel::options::BERNSTEIN.
bool PROPAGATE_BNDT
 Whether to propagate bounds in arithmetic of the template parameter along with Taylor model arithmetic.
bool INTER_WITH_BNDT
 Whether to intersect bounds derived from the Taylor model with those from the template parameter arithmetic. Only if mc::TModel::options::PROPAGATE_BNDT is set to true.
bool SCALE_VARIABLES
 Whether to scale the variable ranges to [-1,1] internally.
bool CENTER_REMAINDER
 Whether to center the remainder term during Taylor model propagation.
bool REF_MIDPOINT
 Whether to take the midpoint of the inner range as the reference in the outer composition with a univariate function (true), as opposed to taking the constant coefficient of the inner Taylor model (false).
double REF_POLY
 Scalar in \([0,1]\) related to the choice of the polynomial part in the overloaded functions mc::inter and mc::hull (see Which functions are overloaded for Taylor model arithmetic?). A value of 0. amounts to selecting the polynomial part of the left operand, whereas a value of 1. selects the right operand.
unsigned int BERNSTEIN_ORDER
 Order of Bernstein polynomial for range bounding Maximum number of iterations for determination of the exact remainder bounds in a Berstein model of convex/concave univariates exp, log, inv and sqrt.
bool BERNSTEIN_USE
 Whether to compute a Berstein model [Stancu, 1963] of the outer function in a univariate composition and use it instead of the Taylor model when its remainder term is smaller. This enables tighter Taylor models on wider variable ranges, while retaining the high-order convergence order of Taylor models, but incurs a computational overhead.
bool BERNSTEIN_OPT
 Whether to compute exact remainder bounds for Berstein models of convex/concave univariates exp, log, inv and sqrt. This provides tighter estimators, but incurs an extra computational overhead. The exact remainder bounds are computed using the golden section search method.
unsigned int BERNSTEIN_MAXIT
 Maximum number of iterations for determination of the exact remainder bounds in a Berstein model of convex/concave univariates exp, log, inv and sqrt.
double BERNSTEIN_TOL
 Termination tolerance for determination of the exact remainder bounds in a Berstein model of convex/concave univariates exp, log, inv and sqrt.
unsigned int DISPLAY_DIGITS
 Number of digits in output stream for Taylor model coefficients.

Static Public Attributes

static const std::string BOUNDER_NAME [5]
 Array of Taylor model range bounder names (for display)

The documentation for this struct was generated from the following file: