Click or drag to resize

DoubleDouble Structure

Represents a floating point number with quadruple precision.

Namespace:  Meta.Numerics.Extended
Assembly:  Meta.Numerics (in Meta.Numerics.dll) Version: 4.0.5.0 (4.0.5.0)
Syntax
public struct DoubleDouble : IEquatable<DoubleDouble>, 
	IComparable<DoubleDouble>

The DoubleDouble type exposes the following members.

Constructors
  NameDescription
Public methodDoubleDouble
Initializes a new double double number from the given string.
Top
Methods
  NameDescription
Public methodStatic memberAbs
Computes the absolute value of a double double number.
Public methodCompareTo
Compares the current value to another.
Public methodEquals(Object)
Determines whether the current value is equal to another object.
(Overrides ValueTypeEquals(Object).)
Public methodEquals(DoubleDouble)
Determines whether the current value is equal to another value.
Public methodStatic memberExp
Computes the exponential of a double double value.
Public methodGetHashCode
Gets a hash code for the current value.
(Overrides ValueTypeGetHashCode.)
Public methodStatic memberGetRandomValue
Gets a random double double value.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodStatic memberLog
Computes the natural logarithm of a double double value.
Public methodStatic memberParse
Parses a string representation of a double double value.
Public methodStatic memberPow
Raises a double double number to an integer power.
Public methodStatic memberSqrt
Computes the square root of a double double value.
Public methodToString
Writes a string representation of the value.
(Overrides ValueTypeToString.)
Top
Operators
  NameDescription
Public operatorStatic memberAddition
Computes the sum of two double double numbers.
Public operatorStatic memberDivision
Computes the quotient of two double double numbers.
Public operatorStatic memberEquality
Determines whether two double double values are equal.
Public operatorStatic member(DoubleDouble to Double)
Converts a double double value to a double value.
Public operatorStatic memberGreaterThan
Determines whether the first value is greater than the second value.
Public operatorStatic memberGreaterThanOrEqual
Determines whether the first value is greater than or equal to the second value.
Public operatorStatic member(Double to DoubleDouble)
Converts a double value to a double double value.
Public operatorStatic memberInequality
Determines whether two double double values are unequal.
Public operatorStatic memberLessThan
Determines whether the first value is less than the second value.
Public operatorStatic memberLessThanOrEqual
Determines whether the first value is less than or equal to the second value.
Public operatorStatic memberMultiply
Computes the product of two double double numbers.
Public operatorStatic memberSubtraction
Computes the difference of two double double numbers.
Public operatorStatic memberUnaryNegation
Negates a double double number.
Top
Fields
  NameDescription
Public fieldStatic memberE
The double double vale of the base of natural logarithms.
Public fieldStatic memberOne
The double double number one.
Public fieldStatic memberPi
The double double value of pi.
Public fieldStatic memberZero
The double double number zero.
Top
Remarks

The double double format uses two Double values to effectively double the precision with which a number can be stored and manipulated as compared to to the Double structure, i.e. to approximately 31 decimal digits of accuracy.

Of all the extended precision floating point systems, double double is the fastest when implemented in software. A typical floating point operation on double doubles is just 3-4 times slower than on Doubles.

See Also