#include </cur/unifexp/mapunimi.h>
Public Member Functions | |
mapUnimodalIntv (const numType &_gamma1, const numType &_gamma2=1) | |
The constructor. | |
std::string | name () const |
Returns the name of the object. | |
int | countCritical () const |
Returns the number of critical points. | |
numType | criticalPoint (int n) const |
Returns the subsequent critical points. | |
numType | leftBound () const |
Returns the left bound of the domain of the map. | |
numType | rightBound () const |
Returns the right bound of the domain of the map. | |
void | image (const numType &x1, const numType &x2, numType &y1, numType &y2) const |
Computes an enclosure of the image of the given interval. | |
numType | minLogDerivative (const numType &x1, const numType &x2, const numType &y1, const numType &y2) const |
Computes the minimal log of the derivative over those points in the interval [x1,x2] whose images may fall into [y1,y2]. | |
Private Member Functions | |
numType | gammaRoot (numType x, bool upperBound) const |
An auxiliary function for the computation of the root of degree gamma of the absolute value of a number. | |
Private Attributes | |
interval | gamma |
The exponent of the map. | |
interval | log2gamma |
The cached value of log (2 gamma). |
It is suitable for rigorous computations. Recommended values of gamma are between 1 and 3. Valid values of the parameter are between 0.5+ and 1 (optimal value: 1).
Definition at line 59 of file mapunimi.h.
unifexp::mapUnimodalIntv< numType >::mapUnimodalIntv | ( | const numType & | _gamma1, | |
const numType & | _gamma2 = 1 | |||
) | [inline] |
The constructor.
Provide the numerator and the denominator for the exponent gamma to make sure its value is computed in a rigorous way as an interval.
Definition at line 108 of file mapunimi.h.
std::string unifexp::mapUnimodalIntv< numType >::name | ( | ) | const [inline, virtual] |
Returns the name of the object.
Implements unifexp::mapType< numType >.
Definition at line 117 of file mapunimi.h.
References unifexp::mapUnimodalIntv< numType >::gamma, and unifexp::mapUnimodalIntv< numType >::leftBound().
int unifexp::mapUnimodalIntv< numType >::countCritical | ( | ) | const [inline, virtual] |
Returns the number of critical points.
Implements unifexp::mapType< numType >.
Definition at line 125 of file mapunimi.h.
numType unifexp::mapUnimodalIntv< numType >::criticalPoint | ( | int | n | ) | const [inline, virtual] |
Returns the subsequent critical points.
Implements unifexp::mapType< numType >.
Definition at line 131 of file mapunimi.h.
numType unifexp::mapUnimodalIntv< numType >::leftBound | ( | ) | const [inline, virtual] |
Returns the left bound of the domain of the map.
Implements unifexp::mapType< numType >.
Definition at line 137 of file mapunimi.h.
Referenced by unifexp::mapUnimodalIntv< numType >::gammaRoot(), unifexp::mapUnimodalIntv< numType >::image(), unifexp::mapUnimodalIntv< numType >::minLogDerivative(), and unifexp::mapUnimodalIntv< numType >::name().
numType unifexp::mapUnimodalIntv< numType >::rightBound | ( | ) | const [inline, virtual] |
Returns the right bound of the domain of the map.
Implements unifexp::mapType< numType >.
Definition at line 143 of file mapunimi.h.
Referenced by unifexp::mapUnimodalIntv< numType >::gammaRoot(), unifexp::mapUnimodalIntv< numType >::image(), and unifexp::mapUnimodalIntv< numType >::minLogDerivative().
void unifexp::mapUnimodalIntv< numType >::image | ( | const numType & | x1, | |
const numType & | x2, | |||
numType & | y1, | |||
numType & | y2 | |||
) | const [inline, virtual] |
Computes an enclosure of the image of the given interval.
Implements unifexp::mapType< numType >.
Definition at line 170 of file mapunimi.h.
References unifexp::mapUnimodalIntv< numType >::gamma, unifexp::mapUnimodalIntv< numType >::leftBound(), unifexp::mapType< numType >::paramMax, unifexp::mapType< numType >::paramMin, and unifexp::mapUnimodalIntv< numType >::rightBound().
numType unifexp::mapUnimodalIntv< numType >::minLogDerivative | ( | const numType & | x1, | |
const numType & | x2, | |||
const numType & | y1, | |||
const numType & | y2 | |||
) | const [inline, virtual] |
Computes the minimal log of the derivative over those points in the interval [x1,x2] whose images may fall into [y1,y2].
Implements unifexp::mapType< numType >.
Definition at line 195 of file mapunimi.h.
References unifexp::mapUnimodalIntv< numType >::gamma, unifexp::mapUnimodalIntv< numType >::gammaRoot(), unifexp::mapUnimodalIntv< numType >::leftBound(), unifexp::mapUnimodalIntv< numType >::log2gamma, unifexp::mapType< numType >::paramMax, unifexp::mapType< numType >::paramMin, and unifexp::mapUnimodalIntv< numType >::rightBound().
numType unifexp::mapUnimodalIntv< numType >::gammaRoot | ( | numType | x, | |
bool | upperBound | |||
) | const [inline, private] |
An auxiliary function for the computation of the root of degree gamma of the absolute value of a number.
Returns the upper or lower bound for the result.
Definition at line 149 of file mapunimi.h.
References unifexp::mapUnimodalIntv< numType >::gamma, unifexp::mapUnimodalIntv< numType >::leftBound(), and unifexp::mapUnimodalIntv< numType >::rightBound().
Referenced by unifexp::mapUnimodalIntv< numType >::minLogDerivative().
interval unifexp::mapUnimodalIntv< numType >::gamma [private] |
The exponent of the map.
Definition at line 93 of file mapunimi.h.
Referenced by unifexp::mapUnimodalIntv< numType >::gammaRoot(), unifexp::mapUnimodalIntv< numType >::image(), unifexp::mapUnimodalIntv< numType >::minLogDerivative(), and unifexp::mapUnimodalIntv< numType >::name().
interval unifexp::mapUnimodalIntv< numType >::log2gamma [private] |
The cached value of log (2 gamma).
Definition at line 96 of file mapunimi.h.
Referenced by unifexp::mapUnimodalIntv< numType >::minLogDerivative().