C-XSC - A C++ Class Library for Extended Scientific Computing 2.5.4
|
The Multiple-Precision Data Type l_real. More...
#include <l_real.hpp>
Public Member Functions | |
l_real (const dotprecision &) noexcept | |
Constructor of class l_real. | |
l_real (const double &) noexcept | |
Constructor of class l_real. | |
l_real (const l_real &) noexcept | |
Constructor of class l_real. | |
l_real (const l_rmatrix &) noexcept | |
Constructor of class l_real. | |
l_real (const l_rmatrix_slice &) noexcept | |
Constructor of class l_real. | |
l_real (const l_rvector &) noexcept | |
Constructor of class l_real. | |
l_real (const l_rvector_slice &) noexcept | |
Constructor of class l_real. | |
l_real (const real &) noexcept | |
Constructor of class l_real. | |
l_real (int) noexcept | |
Constructor of class l_real. | |
l_real (long) noexcept | |
Constructor of class l_real. | |
l_real (void) noexcept | |
Constructor of class l_real. | |
l_real & | operator= (const dotprecision &) noexcept |
Implementation of standard assigning operator. | |
l_real & | operator= (const l_real &) noexcept |
Implementation of standard assigning operator. | |
l_real & | operator= (const lx_real &) noexcept |
Implementation of standard assigning operator. | |
l_real & | operator= (const real &) noexcept |
Implementation of standard assigning operator. | |
real & | operator[] (int) const noexcept |
Access to the single components used to store the long data type value. | |
Friends | |
real | _l_real (const l_rmatrix &) noexcept |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC. | |
real | _l_real (const l_rmatrix_slice &) noexcept |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC. | |
real | _l_real (const l_rvector &) noexcept |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC. | |
real | _l_real (const l_rvector_slice &) noexcept |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC. | |
l_real | abs (const l_real &lr1) |
The absolute value of a l_real value. | |
void | accumulate (dotprecision &d, const l_real &lr, const real &r) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
void | accumulate (dotprecision &d, const l_real &lr1, const l_real &lr2) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
void | accumulate (dotprecision &d, const real &r, const l_real &lr) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
void | accumulate (idotprecision &a, const l_real &b, const l_real &c) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
void | accumulate (idotprecision &a, const l_real &b, const real &c) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
void | accumulate (idotprecision &a, const real &b, const l_real &c) |
The accurate scalar product of the last two arguments added to the value of the first argument. | |
l_real | adjust (const l_real &x) |
Sets the precision of a specific long datatype value. | |
int | expo_gr (const l_real &x) |
Returns the maximum of the expo-function. | |
int | expo_sm (const l_real &x) |
Returns the minimum of the expo-function. | |
l_real | Inf (const l_interval &li) |
Returns the infimum of an l_interval. | |
l_real | mid (const l_interval &li) |
Returns the rounded middle of the l_interval. | |
bool | operator! (const l_real &lr) |
Implementation of standard negation operation. | |
bool | operator!= (const dotprecision &d, const l_real &lr) |
Implementation of standard negated equality operation. | |
bool | operator!= (const idotprecision &i, const l_real &r) |
Implementation of standard negated equality operation. | |
bool | operator!= (const interval &i, const l_real &r) |
Implementation of standard negated equality operation. | |
bool | operator!= (const l_real &lr, const dotprecision &d) |
Implementation of standard negated equality operation. | |
bool | operator!= (const l_real &lr, const real &r) |
Implementation of standard negated equality operation. | |
bool | operator!= (const l_real &lr1, const l_real &lr2) |
Implementation of standard negated equality operation. | |
bool | operator!= (const l_real &r, const idotprecision &i) |
Implementation of standard negated equality operation. | |
bool | operator!= (const l_real &r, const interval &i) |
Implementation of standard negated equality operation. | |
bool | operator!= (const real &r, const l_real &lr) |
Implementation of standard negated equality operation. | |
l_real | operator* (const l_real &lr, const real &r) |
Implementation of standard algebraic multiplication operation. | |
l_real | operator* (const l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic multiplication operation. | |
l_real | operator* (const real &r, const l_real &lr) |
Implementation of standard algebraic multiplication operation. | |
l_real & | operator*= (l_real &lr, const real &r) |
Implementation of standard algebraic multiplication and allocation operation. | |
l_real & | operator*= (l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic multiplication and allocation operation. | |
real & | operator*= (real &r, const l_real &lr) |
Implementation of standard algebraic multiplication and allocation operation. | |
dotprecision | operator+ (const dotprecision &r, const l_real &lr) |
Implementation of standard algebraic addition operation. | |
dotprecision | operator+ (const l_real &lr, const dotprecision &r) |
Implementation of standard algebraic addition operation. | |
l_real | operator+ (const l_real &lr, const real &r) |
Implementation of standard algebraic addition operation. | |
l_real | operator+ (const l_real &lr1) |
Implementation of standard algebraic positive sign operation. | |
l_real | operator+ (const l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic addition operation. | |
l_real | operator+ (const real &r, const l_real &lr) |
Implementation of standard algebraic addition operation. | |
dotprecision & | operator+= (dotprecision &d, const l_real &lr) noexcept |
Implementation of standard algebraic addition and allocation operation. | |
l_real & | operator+= (l_real &lr, const real &r) |
Implementation of standard algebraic addition and allocation operation. | |
l_real & | operator+= (l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic addition and allocation operation. | |
real & | operator+= (real &r, const l_real &lr) |
Implementation of standard algebraic addition and allocation operation. | |
dotprecision | operator- (const dotprecision &r, const l_real &lr) |
Implementation of standard algebraic subtraction operation. | |
dotprecision | operator- (const l_real &lr, const dotprecision &r) |
Implementation of standard algebraic subtraction operation. | |
l_real | operator- (const l_real &lr, const real &r) |
Implementation of standard algebraic subtraction operation. | |
l_real | operator- (const l_real &lr1) |
Implementation of standard algebraic negative sign operation. | |
l_real | operator- (const l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic subtraction operation. | |
l_real | operator- (const real &r, const l_real &lr) |
Implementation of standard algebraic subtraction operation. | |
dotprecision & | operator-= (dotprecision &d, const l_real &lr) noexcept |
Implementation of standard algebraic subtraction and allocation operation. | |
l_real & | operator-= (l_real &lr, const real &r) |
Implementation of standard algebraic subtraction and allocation operation. | |
l_real & | operator-= (l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic subtraction and allocation operation. | |
real & | operator-= (real &r, const l_real &lr) |
Implementation of standard algebraic subtraction and allocation operation. | |
l_real | operator/ (const l_real &lr, const real &r) |
Implementation of standard algebraic division operation. | |
l_real | operator/ (const l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic division operation. | |
l_real | operator/ (const real &r, const l_real &lr) |
Implementation of standard algebraic division operation. | |
l_real & | operator/= (l_real &lr, const real &r) |
Implementation of standard algebraic division and allocation operation. | |
l_real & | operator/= (l_real &lr1, const l_real &lr2) |
Implementation of standard algebraic division and allocation operation. | |
real & | operator/= (real &r, const l_real &lr) |
Implementation of standard algebraic division and allocation operation. | |
bool | operator< (const dotprecision &d, const l_real &lr) |
Implementation of standard less-than operation. | |
bool | operator< (const idotprecision &i, const l_real &r) |
Implementation of standard less-than operation. | |
bool | operator< (const interval &i, const l_real &r) |
Implementation of standard less-than operation. | |
bool | operator< (const l_real &lr, const dotprecision &d) |
Implementation of standard less-than operation. | |
bool | operator< (const l_real &lr, const real &r) |
Implementation of standard less-than operation. | |
bool | operator< (const l_real &lr1, const l_real &lr2) |
Implementation of standard less-than operation. | |
bool | operator< (const l_real &r, const idotprecision &i) |
Implementation of standard less-than operation. | |
bool | operator< (const l_real &r, const interval &i) |
Implementation of standard less-than operation. | |
bool | operator< (const real &r, const l_real &lr) |
Implementation of standard less-than operation. | |
std::ostream & | operator<< (std::ostream &s, const l_real &lr) |
Implementation of standard output method. | |
std::string & | operator<< (std::string &s, const l_real &lr) |
Implementation of standard output method. | |
bool | operator<= (const dotprecision &d, const l_real &lr) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const idotprecision &i, const l_real &r) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const interval &i, const l_real &r) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const l_real &lr, const dotprecision &d) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const l_real &lr, const real &r) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const l_real &lr1, const l_real &lr2) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const l_real &r, const idotprecision &i) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const l_real &r, const interval &i) |
Implementation of standard less-or-equal-than operation. | |
bool | operator<= (const real &r, const l_real &lr) |
Implementation of standard less-or-equal-than operation. | |
bool | operator== (const dotprecision &d, const l_real &lr) |
Implementation of standard equality operation. | |
bool | operator== (const idotprecision &i, const l_real &r) |
Implementation of standard equality operation. | |
bool | operator== (const interval &i, const l_real &r) |
Implementation of standard equality operation. | |
bool | operator== (const l_real &lr, const dotprecision &d) |
Implementation of standard equality operation. | |
bool | operator== (const l_real &lr, const real &r) |
Implementation of standard equality operation. | |
bool | operator== (const l_real &lr1, const l_real &lr2) |
Implementation of standard equality operation. | |
bool | operator== (const l_real &r, const idotprecision &i) |
Implementation of standard equality operation. | |
bool | operator== (const l_real &r, const interval &i) |
Implementation of standard equality operation. | |
bool | operator== (const real &r, const l_real &lr) |
Implementation of standard equality operation. | |
bool | operator> (const dotprecision &d, const l_real &lr) |
Implementation of standard greater-than operation. | |
bool | operator> (const idotprecision &i, const l_real &r) |
Implementation of standard greater-than operation. | |
bool | operator> (const interval &i, const l_real &r) |
Implementation of standard greater-than operation. | |
bool | operator> (const l_real &lr, const dotprecision &d) |
Implementation of standard greater-than operation. | |
bool | operator> (const l_real &lr, const real &r) |
Implementation of standard greater-than operation. | |
bool | operator> (const l_real &lr1, const l_real &lr2) |
Implementation of standard greater-than operation. | |
bool | operator> (const l_real &r, const idotprecision &i) |
Implementation of standard greater-than operation. | |
bool | operator> (const l_real &r, const interval &i) |
Implementation of standard greater-than operation. | |
bool | operator> (const real &r, const l_real &lr) |
Implementation of standard greater-than operation. | |
bool | operator>= (const dotprecision &d, const l_real &lr) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const idotprecision &i, const l_real &r) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const interval &i, const l_real &r) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const l_real &lr, const dotprecision &d) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const l_real &lr, const real &r) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const l_real &lr1, const l_real &lr2) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const l_real &r, const idotprecision &i) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const l_real &r, const interval &i) |
Implementation of standard greater-or-equal-than operation. | |
bool | operator>= (const real &r, const l_real &lr) |
Implementation of standard greater-or-equal-than operation. | |
void | operator>> (const char *s, l_real &lr) |
Implementation of standard input method. | |
void | operator>> (const std::string &s, l_real &lr) |
Implementation of standard input method. | |
std::istream & | operator>> (std::istream &s, l_real &lr) |
Implementation of standard input method. | |
std::string & | operator>> (std::string &s, l_real &lr) |
Implementation of standard input method. | |
idotprecision | operator| (const dotprecision &a, const l_real &b) |
Returns the convex hull of the arguments. | |
idotprecision | operator| (const l_real &a, const dotprecision &b) |
Returns the convex hull of the arguments. | |
l_interval | operator| (const l_real &a, const l_real &b) |
Returns the convex hull of the arguments. | |
l_interval | operator| (const l_real &a, const real &b) |
Returns the convex hull of the arguments. | |
l_interval | operator| (const real &a, const l_real &b) |
Returns the convex hull of the arguments. | |
l_real | rnd_down (const dotprecision &a) |
Rounds the argument down to the next l_real value. | |
l_real | rnd_up (const dotprecision &a) |
Rounds the argument up to the next l_real value. | |
int | sign (const l_real &lr) |
The sign of a l_real value. | |
int | StagPrec (const l_real &lr) |
Returns the precision of the long datatype value. | |
l_real | Sup (const l_interval &li) |
Returns the supremum of an l_interval. | |
bool | zero_ (const l_real &lr) |
Checks if the argument is zero. | |
The Multiple-Precision Data Type l_real.
The multiple-precision data type l_real is a variant of the scalar type real, which provides support for longer numbers, thus increasing the accuracy of the data type.
The multiple-precision arithmetic is based on the staggered correction principle briefly described below.
A real staggered correction mulitple-precision number
Definition at line 77 of file l_real.hpp.
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
|
friend |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
|
friend |
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
|
friend |
Returns the maximum of the expo-function.
x | The value for which to calculate |
Result for a multiple-precisionnumber
Definition at line 744 of file l_real.cpp.
|
friend |
Returns the minimum of the expo-function.
x | The value for which to calculate |
Result for a multiple-precisionnumber
Definition at line 725 of file l_real.cpp.