Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Partners
    • Contact us
Introduction
Deployment Guide
Nuget packages
Configuration
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Nuget packages
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.DataAnalysis.Models
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Providers
    • Extreme.Providers.InteropServices
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics
    • AccuracyGoal Structure
    • AlgorithmStatus Enumeration
    • ArrayAttributes Structure
    • ArrayMath Class
    • ArrayMutability Enumeration
    • BigFloat Class
    • BigInteger Structure
    • BigRational Structure
    • CategoricalVector(T) Class
    • Complex(T) Structure
    • Constants Class
    • ConvergenceCriterion Enumeration
    • CoreImplementations(T) Class
    • DecimalMath Class
    • Dimension Enumeration
    • DimensionMismatchException Class
    • DimensionType Enumeration
    • DistributedDataLocation Enumeration
    • DoubleComparer Class
    • Elementary Class
    • ElementType(T) Class
    • FunctionMath Class
    • FunctionWithDerivative Delegate
    • GenericCoreProvider(T) Class
    • GenericImplementations Class
    • ICategoricalVector Interface
    • IDistributed Interface
    • InsufficientDataException Class
    • IntegerMath Class
    • Intent Enumeration
    • Interval Structure
    • Interval(T) Structure
    • IPermutable Interface
    • ISummarizable Interface
    • Iterators Class
    • IVector Interface
    • MachineConstants Class
    • ManagedCoreProviderOfSingle Class
    • Math(T) Class
    • Matrix Class
    • Matrix(T) Class
    • MatrixDiagonal Enumeration
    • MatrixElementOrder Enumeration
    • MatrixExtensions Class
    • MatrixNorm Enumeration
    • MatrixOperationSide Enumeration
    • MatrixStructure Enumeration
    • MatrixTriangle Enumeration
    • MutabilityBehaviour Enumeration
    • NumericsConfiguration Class
    • Operations(T) Class
    • Permutation Class
    • Quad Structure
    • RandomExtensions Class
    • Range Structure
    • RoundingMode Enumeration
    • SingleConstants Class
    • SinglePrecisionImplementations Class
    • Slice Structure
    • SolutionReport(T) Class
    • SolutionReport(T, TError) Class
    • Special Class
    • SummaryOptions Class
    • SymbolicMath Class
    • TotalLossOfPrecisionException Class
    • TransposeOperation Enumeration
    • TypedVectorWrapper(K, T) Structure
    • Vector Class
    • Vector(T) Class
    • VectorExtensions Class
  • Quad Structure
    • Quad Constructors
    • Properties
    • Methods
    • Operators and Type Conversions
    • Fields

Quad Structure

Extreme Optimization Numerical Libraries for .NET Professional
Represents a real number in IEEE/IEC quadruple-precision floating-point format.

Namespace:  Extreme.Mathematics
Assembly:  Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.1
Syntax

C#
VB
C++
F#
Copy
[SerializableAttribute]
public readonly struct Quad : IComparable, 
	IEquatable<Quad>, IComparable<Quad>, IFormattable, 
	IEquatable<double>, IComparable<double>
<SerializableAttribute>
Public Structure Quad
	Implements IComparable, IEquatable(Of Quad), 
	IComparable(Of Quad), IFormattable, IEquatable(Of Double), 
	IComparable(Of Double)
[SerializableAttribute]
public value class Quad : IComparable, IEquatable<Quad>, 
	IComparable<Quad>, IFormattable, IEquatable<double>, 
	IComparable<double>
[<SealedAttribute>]
[<SerializableAttribute>]
type Quad =  
    struct
        interface IComparable
        interface IEquatable<Quad>
        interface IComparable<Quad>
        interface IFormattable
        interface IEquatable<float>
        interface IComparable<float>
    end

The Quad type exposes the following members.

Constructors

  NameDescription
Public methodQuad(BigInteger)
Constructs a new Quad for a BigInteger value.
Public methodQuad(BigRational)
Constructs a new Quad for a BigInteger value.
Public methodQuad(Decimal)
Constructs a new Quad for a Decimal value.
Public methodQuad(Double)
Constructs a new Quad.
Public methodQuad(Int32)
Constructs a new Quad.
Public methodQuad(Int64)
Constructs a new Quad.
Public methodQuad(UInt32)
Constructs a new Quad.
Public methodQuad(UInt64)
Constructs a new Quad.
Public methodQuad(Double, Double)
Constructs a new quadruple precision number from two double-precision numbers.
Public methodQuad(Int64, Int64)
Constructs a new quadruple precision number from raw data.
Top
Properties

  NameDescription
Public propertyHigh64Bits
Gets the upper 64 bits in the binary representation of the quadruple precision floating-point number.
Public propertyLow64Bits
Gets the lower 64 bits in the binary representation of the quadruple precision floating-point number.
Top
Methods

  NameDescription
Public methodStatic memberAbs
Returns the absolute value of a quadruple precision number.
Public methodStatic memberAcos
Returns the angle whose cosine is the specified number.
Public methodStatic memberAcosh
Returns the inverse hyperbolic cosine of a number.
Public methodStatic memberAsin
Returns the angle whose sine is the specified number.
Public methodStatic memberAsinh
Returns the inverse hyperbolic sine of a number.
Public methodStatic memberAtan
Returns the angle whose tangent is the specified number.
Public methodStatic memberAtan2
Returns the angle between the X-axis and the ray from the origin to the specified point.
Public methodStatic memberAtanh
Returns the inverse hyperbolic tangent of a number.
Public methodStatic memberCeiling
Returns the smallest integral value that is greater than or equal to the specified quadruple precision number.
Public methodStatic memberCompare
Compares two quadruple-precision numbers.
Public methodCompareTo(Double)
Compares a number to another number.
Public methodCompareTo(Quad)
Compares a number to another number.
Public methodStatic memberCos
Returns the cosine of the specified angle.
Public methodStatic memberCosh
Returns the hyperbolic cosine of the specified angle.
Public methodEquals(Double)
Tests whether a number equals another number.
Public methodEquals(Object)
Indicates whether this instance and a specified object are equal.
(Overrides ValueTypeEquals(Object).)
Public methodEquals(Quad)
Tests whether a number equals another number.
Public methodStatic memberErf
Evaluates the error function.
Public methodStatic memberErfc
Evaluates the complementary error function.
Public methodStatic memberExp
Returns e raised to the specified power.
Public methodStatic memberExpMinus1
Returns e raised to the specified power to the specified accuracy.
Public methodStatic memberFloor
Returns the largest integer less than or equal to the specified quadruple precision number.
Public methodGetHashCode
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodStatic memberHypot
Gets the length of the hypotenuse of a right-angled triangle with sides of specified length.
Public methodStatic memberInverseErf
Evaluates the inverse of the error function.
Public methodStatic memberInverseErfc
Evaluates the inverse of the complementary error function.
Public methodStatic memberIsFinite
Returns whether the specified quadruple-precision floating-point number is finite.
Public methodStatic memberIsNaN
Checks if the value of a value is "Not a Number."
Public methodStatic memberIsNegativeInfinity
Returns whether the specified quadruple-precision floating-point number is equal to negative infinity.
Public methodStatic memberIsPositiveInfinity
Returns whether the specified quadruple-precision floating-point number is equal to positive infinity.
Public methodStatic memberLog(Quad)
Returns the natural (base e) logarithm of a specified number.
Public methodStatic memberLog(Quad, Quad)
Returns the logarithm of a specified number in a specified base.
Public methodStatic memberLog1PlusX
Returns the logarithm of 1 plus the argument.
Public methodStatic memberMax
Returns the larger of two quadruple precision numbers.
Public methodStatic memberMin
Returns the smaller of two quadruple precision numbers.
Public methodStatic memberParse(String)
Converts a string value to a Quad.
Public methodStatic memberParse(String, NumberStyles)
Converts a string value to a Quad.
Public methodStatic memberParse(String, IFormatProvider)
Converts a string value to a Quad.
Public methodStatic memberParse(String, NumberStyles, IFormatProvider)
Converts a string value to a Quad.
Public methodStatic memberPow(Quad, Quad)
Returns a specified number raised to the specified power.
Public methodStatic memberPow(Quad, Int32)
Returns a number raised to an integer power.
Public methodStatic memberRound(Quad)
Rounds a Quad value to the nearest integral value.
Public methodStatic memberRound(Quad, Int32)
Rounds a Quad value to a specified number of fractional digits.
Public methodStatic memberRound(Quad, MidpointRounding)
Rounds a Quad value to the nearest integer. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberRound(Quad, Int32, MidpointRounding)
Rounds a Quad value to a specified number of fractional digits. A parameter specifies how to round the value if it is midway between two other numbers.
Public methodStatic memberScaleByPowerOfTwo
Multiplies a quadruple-precision value by a power of two.
Public methodStatic memberSign
Gets the sign of the quadruple precision number: -1, 0, or 1.
Public methodStatic memberSin
Returns the sine of the specified angle.
Public methodStatic memberSinh
Returns the hyperbolic sine of the specified angle.
Public methodStatic memberSqrt
Returns the square root of a number.
Public methodStatic memberSqrt1pxm1
Returns the difference between the square root of a number close to 1, and 1.
Public methodStatic memberTan
Returns the tangent of the specified angle.
Public methodStatic memberTanh
Returns the hyperbolic tangent of the specified angle.
Public methodToString
Returns a String representation of the number.
(Overrides ValueTypeToString.)
Public methodToString(IFormatProvider)
Formats the value of the current instance using the specified format.
Public methodToString(String)
Formats the value of the current instance using the specified format.
Public methodToString(String, IFormatProvider)
Formats the value of the current instance using the specified format.
Public methodStatic memberTruncate
Calculates the integral part of a specified quadruple precision number.
Public methodStatic memberTryParse(String, Quad)
Attempts to convert a string value to a Quad.
Public methodStatic memberTryParse(String, NumberStyles, IFormatProvider, Quad)
Attempts to convert a string value to a Quad.
Top
Operators

  NameDescription
Public operatorStatic memberAddition
Adds two quadruple-precision floating-point numbers.
Public operatorStatic memberDivision
Divides one quadruple-precision floating-point number by another.
Public operatorStatic memberEquality
Returns whether left quadruple-precision floating-point number is equal to another.
Public operatorStatic member(BigInteger to Quad)
Converts a BigInteger number to a Quad value.
Public operatorStatic member(Decimal to Quad)
Converts a Decimal number to a Quad value.
Public operatorStatic member(Quad to Byte)
Converts a Quad to a Byte value.
Public operatorStatic member(Quad to Decimal)
Converts a Quad to a Decimal number.
Public operatorStatic member(Quad to Double)
Converts a Quad to a double-precision floating-point number.
Public operatorStatic member(Quad to Int16)
Converts a Quad to a Int16 value.
Public operatorStatic member(Quad to Int32)
Converts a Quad to a Int32 value.
Public operatorStatic member(Quad to Int64)
Converts a Quad to a long integer.
Public operatorStatic member(Quad to SByte)
Converts a Quad to a SByte value.
Public operatorStatic member(Quad to Single)
Converts a Quad to a single-precision floating-point number.
Public operatorStatic member(Quad to UInt16)
Converts a Quad to a UInt16 value.
Public operatorStatic member(Quad to UInt32)
Converts a Quad to an unsigned integer.
Public operatorStatic member(Quad to UInt64)
Converts a Quad to a long unsigned integer.
Public operatorStatic member(Single to Quad)
Converts a single-precision floating-point number to a Quad value.
Public operatorStatic memberExponent(Quad, Quad)
Represents the exponentiation operator.
Public operatorStatic memberExponent(Quad, Int32)
Represents the exponentiation operator.
Public operatorStatic memberExponentiation(Quad, Quad)
Represents the exponentiation operator.
Public operatorStatic memberExponentiation(Quad, Int32)
Represents the exponentiation operator.
Public operatorStatic memberGreaterThan
Returns whether left quadruple-precision floating-point number is greater than another.
Public operatorStatic memberGreaterThanOrEqual
Returns whether left quadruple-precision floating-point number is greater than or equal to another.
Public operatorStatic member(Byte to Quad)
Converts a Byte value to a Quad number.
Public operatorStatic member(Double to Quad)
Converts a double-precision floating-point number to a quadruple-precision floating-point number.
Public operatorStatic member(Int16 to Quad)
Converts a 16 bit signed integer to a Quad value.
Public operatorStatic member(Int32 to Quad)
Converts a 32 bit signed integer to a Quad value.
Public operatorStatic member(Int64 to Quad)
Converts a 64 bit signed integer to a Quad value.
Public operatorStatic member(SByte to Quad)
Converts a signed byte to a Quad value.
Public operatorStatic member(UInt16 to Quad)
Converts a 16 bit unsigned integer to a Quad value.
Public operatorStatic member(UInt32 to Quad)
Converts a 32 bit unsigned integer to a Quad value.
Public operatorStatic member(UInt64 to Quad)
Converts a 64 bit unsigned integer to a Quad value.
Public operatorStatic memberInequality
Returns whether left quadruple-precision floating-point number is not equal to another.
Public operatorStatic memberLessThan
Returns whether left quadruple-precision floating-point number is less than another.
Public operatorStatic memberLessThanOrEqual
Returns whether left quadruple-precision floating-point number is less than or equal to another.
Public operatorStatic memberModulus
Computes the remainder after dividing one quadruple-precision floating-point number by another.
Public operatorStatic memberMultiply
Multiplies two quadruple-precision floating-point numbers.
Public operatorStatic memberSubtraction
Subtracts one quadruple-precision floating-point number from another.
Public operatorStatic memberUnaryNegation
Returns the quadruple-precision number with the opposite sign.
Top
Fields

  NameDescription
Public fieldStatic memberAccuracyGoal
Defines the accuracy of quadruple precision floating-point numbers.
Public fieldStatic memberE
The number e, basis of the natural logarithm, as a Quad,
Public fieldStatic memberEpsilon
Gets the machine precision quadruple precision floating-point numbers.
Public fieldStatic memberLog2
The natural logarithm of 2 as a Quad,
Public fieldStatic memberMaxValue
The largest possible Quad.
Public fieldStatic memberMinNormalizedValue
Gets the smallest positive number that has a normalized representation.
Public fieldStatic memberMinPositiveValue
Gets the smallest positive number greater than zero.
Public fieldStatic memberMinusOne
The number -1 as a Quad.
Public fieldStatic memberMinValue
The smallest possible Quad.
Public fieldStatic memberNaN
Not-a-Number, the value returned when the result is undefined.
Public fieldStatic memberNegativeInfinity
Negative infinity as a Quad,
Public fieldStatic memberNegativeZero
Negative 0 as a Quad,
Public fieldStatic memberOne
The number one as a Quad.
Public fieldStatic memberPi
The number pi as a Quad,
Public fieldStatic memberPiOverTwo
The number pi divided by 2 as a Quad,
Public fieldStatic memberPositiveInfinity
Positive infinity as a Quad,
Public fieldStatic memberZero
The number zero as a Quad.
Top
Remarks

Use the Quad structure to represent real numbers with an extended range and precision.

See Also

Reference

Extreme.Mathematics Namespace

Copyright (c) 2004-2021 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2021, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.