ppALIGN API documentation
xdouble Class Reference
#include <xdouble.hpp>
Public Member Functions | |
| xdouble () | |
| xdouble (const xdouble &a) | |
| xdouble (const double &x) | |
| xdouble (const int &x) | |
| xdouble (const long &x) | |
| xdouble (const unsigned int &x) | |
| xdouble (const unsigned long &x) | |
| double | to_double () const |
assignment operators for xdouble | |
| xdouble & | operator= (double a) |
| xdouble & | operator= (int a) |
| xdouble & | operator= (long a) |
| xdouble & | operator= (unsigned int &a) |
| xdouble & | operator= (unsigned long &a) |
| xdouble & | operator+= (const xdouble &b) |
| xdouble & | operator-= (const xdouble &b) |
| xdouble & | operator*= (const xdouble &b) |
| xdouble & | operator/= (const xdouble &b) |
increment / decrement operators for xdouble | |
| xdouble & | operator++ () |
| xdouble & | operator-- () |
| xdouble | operator++ (int) |
| xdouble | operator-- (int) |
| void | normalize () |
| double | mantissa () const |
| long | exponent () const |
Friends | |
iostream for xdouble | |
| std::ostream & | operator<< (std::ostream &ost, const xdouble &v) |
| std::istream & | operator>> (std::istream &ist, xdouble &v) |
Unary operators for xdouble | |
| xdouble | operator- (const xdouble &a) |
Addition | |
| xdouble | operator+ (const xdouble &a, const xdouble &b) |
| xdouble | operator+ (const double &a, const xdouble &b) |
| xdouble | operator+ (const int &a, const xdouble &b) |
| xdouble | operator+ (const unsigned int &a, const xdouble &b) |
| xdouble | operator+ (const long &a, const xdouble &b) |
| xdouble | operator+ (const unsigned long &a, const xdouble &b) |
| xdouble | operator+ (const xdouble &a, const double &b) |
| xdouble | operator+ (const xdouble &a, const int &b) |
| xdouble | operator+ (const xdouble &a, const unsigned int &b) |
| xdouble | operator+ (const xdouble &a, const long &b) |
| xdouble | operator+ (const xdouble &a, const unsigned long &b) |
Substruction (difference) | |
| xdouble | operator- (const xdouble &a, const xdouble &b) |
| xdouble | operator- (const double &a, const xdouble &b) |
| xdouble | operator- (const int &a, const xdouble &b) |
| xdouble | operator- (const unsigned int &a, const xdouble &b) |
| xdouble | operator- (const long &a, const xdouble &b) |
| xdouble | operator- (const unsigned long &a, const xdouble &b) |
| xdouble | operator- (const xdouble &a, const double &b) |
| xdouble | operator- (const xdouble &a, const int &b) |
| xdouble | operator- (const xdouble &a, const unsigned int &b) |
| xdouble | operator- (const xdouble &a, const long &b) |
| xdouble | operator- (const xdouble &a, const unsigned long &b) |
Multiplication (times) | |
| xdouble | operator* (const xdouble &a, const xdouble &b) |
| xdouble | operator* (const double &a, const xdouble &b) |
| xdouble | operator* (const int &a, const xdouble &b) |
| xdouble | operator* (const unsigned int &a, const xdouble &b) |
| xdouble | operator* (const long &a, const xdouble &b) |
| xdouble | operator* (const unsigned long &a, const xdouble &b) |
| xdouble | operator* (const xdouble &a, const double &b) |
| xdouble | operator* (const xdouble &a, const int &b) |
| xdouble | operator* (const xdouble &a, const unsigned int &b) |
| xdouble | operator* (const xdouble &a, const long &b) |
| xdouble | operator* (const xdouble &a, const unsigned long &b) |
Division (quotient) | |
| xdouble | operator/ (const xdouble &a, const xdouble &b) |
| xdouble | operator/ (const double &a, const xdouble &b) |
| xdouble | operator/ (const int &a, const xdouble &b) |
| xdouble | operator/ (const unsigned int &a, const xdouble &b) |
| xdouble | operator/ (const long &a, const xdouble &b) |
| xdouble | operator/ (const unsigned long &a, const xdouble &b) |
| xdouble | operator/ (const xdouble &a, const double &b) |
| xdouble | operator/ (const xdouble &a, const int &b) |
| xdouble | operator/ (const xdouble &a, const unsigned int &b) |
| xdouble | operator/ (const xdouble &a, const long &b) |
| xdouble | operator/ (const xdouble &a, const unsigned long &b) |
comparision operators for xdouble | |
| long | xcompare (const xdouble &a, const xdouble &b) |
| long | xcompare (const double &a, const xdouble &b) |
| long | xcompare (const xdouble &a, const double &b) |
| long | operator== (const xdouble &a, const xdouble &b) |
| long | operator!= (const xdouble &a, const xdouble &b) |
| long | operator<= (const xdouble &a, const xdouble &b) |
| long | operator>= (const xdouble &a, const xdouble &b) |
| long | operator< (const xdouble &a, const xdouble &b) |
| long | operator> (const xdouble &a, const xdouble &b) |
| long | operator== (const double &a, const xdouble &b) |
| long | operator!= (const double &a, const xdouble &b) |
| long | operator<= (const double &a, const xdouble &b) |
| long | operator>= (const double &a, const xdouble &b) |
| long | operator< (const double &a, const xdouble &b) |
| long | operator> (const double &a, const xdouble &b) |
| long | operator== (const int &a, const xdouble &b) |
| long | operator!= (const int &a, const xdouble &b) |
| long | operator<= (const int &a, const xdouble &b) |
| long | operator>= (const int &a, const xdouble &b) |
| long | operator< (const int &a, const xdouble &b) |
| long | operator> (const int &a, const xdouble &b) |
| long | operator== (const unsigned int &a, const xdouble &b) |
| long | operator!= (const unsigned int &a, const xdouble &b) |
| long | operator<= (const unsigned int &a, const xdouble &b) |
| long | operator>= (const unsigned int &a, const xdouble &b) |
| long | operator< (const unsigned int &a, const xdouble &b) |
| long | operator> (const unsigned int &a, const xdouble &b) |
| long | operator== (const long &a, const xdouble &b) |
| long | operator!= (const long &a, const xdouble &b) |
| long | operator<= (const long &a, const xdouble &b) |
| long | operator>= (const long &a, const xdouble &b) |
| long | operator< (const long &a, const xdouble &b) |
| long | operator> (const long &a, const xdouble &b) |
| long | operator== (const unsigned long &a, const xdouble &b) |
| long | operator!= (const unsigned long &a, const xdouble &b) |
| long | operator<= (const unsigned long &a, const xdouble &b) |
| long | operator>= (const unsigned long &a, const xdouble &b) |
| long | operator< (const unsigned long &a, const xdouble &b) |
| long | operator> (const unsigned long &a, const xdouble &b) |
| long | operator== (const xdouble &a, const double &b) |
| long | operator!= (const xdouble &a, const double &b) |
| long | operator<= (const xdouble &a, const double &b) |
| long | operator>= (const xdouble &a, const double &b) |
| long | operator< (const xdouble &a, const double &b) |
| long | operator> (const xdouble &a, const double &b) |
| long | operator== (const xdouble &a, const int &b) |
| long | operator!= (const xdouble &a, const int &b) |
| long | operator<= (const xdouble &a, const int &b) |
| long | operator>= (const xdouble &a, const int &b) |
| long | operator< (const xdouble &a, const int &b) |
| long | operator> (const xdouble &a, const int &b) |
| long | operator== (const xdouble &a, const unsigned int &b) |
| long | operator!= (const xdouble &a, const unsigned int &b) |
| long | operator<= (const xdouble &a, const unsigned int &b) |
| long | operator>= (const xdouble &a, const unsigned int &b) |
| long | operator< (const xdouble &a, const unsigned int &b) |
| long | operator> (const xdouble &a, const unsigned int &b) |
| long | operator== (const xdouble &a, const long &b) |
| long | operator!= (const xdouble &a, const long &b) |
| long | operator<= (const xdouble &a, const long &b) |
| long | operator>= (const xdouble &a, const long &b) |
| long | operator< (const xdouble &a, const long &b) |
| long | operator> (const xdouble &a, const long &b) |
| long | operator== (const xdouble &a, const unsigned long &b) |
| long | operator!= (const xdouble &a, const unsigned long &b) |
| long | operator<= (const xdouble &a, const unsigned long &b) |
| long | operator>= (const xdouble &a, const unsigned long &b) |
| long | operator< (const xdouble &a, const unsigned long &b) |
| long | operator> (const xdouble &a, const unsigned long &b) |
mathematical functions | |
| xdouble | sqrt (const xdouble &) |
| long | sign (const xdouble &) |
| xdouble | trunc (const xdouble &) |
| xdouble | floor (const xdouble &) |
| xdouble | ceil (const xdouble &) |
| xdouble | fabs (const xdouble &) |
| void | power2 (xdouble &z, long e) |
| xdouble | power (const xdouble &z, long e) |
| xdouble | power2_xdouble (long e) |
| double | log (const xdouble &a) |
| xdouble | xexp (double a) |
combined arithmetric | |
| void | MulAdd (xdouble &z, const xdouble &a, const xdouble &b, const xdouble &c) |
| void | MulSub (xdouble &z, const xdouble &a, const xdouble &b, const xdouble &c) |
Detailed Description
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble.
- Examples:
Definition at line 46 of file xdouble.hpp.
Constructor & Destructor Documentation
| xdouble::xdouble | ( | ) | [inline] |
default constructor
Definition at line 61 of file xdouble.hpp.
| xdouble::xdouble | ( | const xdouble & | a | ) | [inline] |
| xdouble::xdouble | ( | const double & | x | ) | [inline] |
| xdouble::xdouble | ( | const int & | x | ) | [inline] |
| xdouble::xdouble | ( | const long & | x | ) | [inline] |
| xdouble::xdouble | ( | const unsigned int & | x | ) | [inline] |
conversion from unsigned int
- Parameters:
-
x an unsigned int value
Definition at line 86 of file xdouble.hpp.
| xdouble::xdouble | ( | const unsigned long & | x | ) | [inline] |
Member Function Documentation
| long xdouble::exponent | ( | ) | const [inline] |
| double xdouble::mantissa | ( | ) | const [inline] |
| void xdouble::normalize | ( | ) | [inline] |
Normalize the value. Usually this function need not be called manually.
Definition at line 603 of file xdouble.hpp.
| xdouble xdouble::operator++ | ( | int | ) | [inline] |
Postfix increment a++
Definition at line 318 of file xdouble.hpp.
| xdouble& xdouble::operator++ | ( | ) | [inline] |
Prefix increment ++a
Definition at line 312 of file xdouble.hpp.
| xdouble xdouble::operator-- | ( | int | ) | [inline] |
Postfix increment a--
Definition at line 321 of file xdouble.hpp.
| xdouble& xdouble::operator-- | ( | ) | [inline] |
Prefix decrement --a
Definition at line 315 of file xdouble.hpp.
| xdouble & xdouble::operator= | ( | unsigned long & | a | ) | [inline] |
Assignment from unsigned long
- Parameters:
-
a an unsigned long value
Definition at line 642 of file xdouble.hpp.
| xdouble & xdouble::operator= | ( | unsigned int & | a | ) | [inline] |
Assignment from unsigned int
- Parameters:
-
a an unsigned int value
Definition at line 641 of file xdouble.hpp.
| xdouble & xdouble::operator= | ( | long | a | ) | [inline] |
| xdouble & xdouble::operator= | ( | int | a | ) | [inline] |
| xdouble & xdouble::operator= | ( | double | a | ) | [inline] |
| double xdouble::to_double | ( | ) | const [inline] |
Friends And Related Function Documentation
z = a + b*c
- Parameters:
-
z object that is changed a first term b prefactor second term c number
z = a - b*c
- Parameters:
-
z object that is changed a first term b prefactor second term c number
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 271 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 269 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 267 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 265 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 263 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 261 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 259 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 257 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 255 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator*(const xdouble & a,const xdouble & b);
Definition at line 253 of file xdouble.hpp.
Multiplication (times)
- Parameters:
-
a first factor b second factor
- Returns:
- a*b
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 209 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 207 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 205 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 203 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 201 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 199 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 197 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 195 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 193 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator+(const xdouble & a,const xdouble & b);
Definition at line 191 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 239 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 237 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 235 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 233 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 231 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 229 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 227 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 225 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 223 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator-(const xdouble & a,const xdouble & b);
Definition at line 221 of file xdouble.hpp.
Substruction (difference)
- Returns:
- a - b
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 302 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 300 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 298 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 296 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 294 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 292 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 290 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 288 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 286 of file xdouble.hpp.
Numerical datatype for very large / small numbers. double precission with large exponent based on mantisse and exponent. The code is based on the NTL library. All methods are implemented inline. Hence, no library is needed for xdouble. operator/(const xdouble & a,const xdouble & b);
Definition at line 284 of file xdouble.hpp.
| std::ostream& operator<< | ( | std::ostream & | ost, | |
| const xdouble & | v | |||
| ) | [friend] |
Outstream operator for xdouble.
- Note:
- the value must not exceed the normal double
Definition at line 159 of file xdouble.hpp.
| std::istream& operator>> | ( | std::istream & | ist, | |
| xdouble & | v | |||
| ) | [friend] |
Instream operator for xdouble
Definition at line 163 of file xdouble.hpp.
The documentation for this class was generated from the following file:
- src/xdouble.hpp