Enhanced C#
Language of your choice: library documentation
|
Contains general-purpose math algorithms beyond what is provided in the .NET BCL (Base Class Library). Notable class: Math.MathEx. More...
Classes | |
struct | FPI16 |
Fixed-point type based on Int32 with 16 fractional bits More... | |
struct | FPI23 |
Fixed-point type based on Int32 with 23 fractional bits More... | |
struct | FPI8 |
Fixed-point type based on Int32 with 8 fractional bits More... | |
struct | FPL16 |
Fixed-point type based on Int64 with 16 fractional bits More... | |
struct | FPL32 |
Fixed-point type based on Int64 with 32 fractional bits More... | |
interface | IAdditionGroup< T > |
This defines a Group with the operation +, the neutral element Zero, and an operation - that is defined in terms of the inverse. A Negate operation is not provided so that this interface makes more sense for use with unsigned types. More... | |
interface | IBinaryMath< T > |
Provides additional bit-oriented integer operations. More... | |
interface | IBitwise< T > |
Provides the standard set of bitwise operators. More... | |
interface | IComplexMath< T > |
Use this interface for types such as complex numbers that satisfy the field axioms but do not have a natural order. complex numbers of course do support IHasRoot. More... | |
interface | IConvertTo< T > |
Provides methods for converting common numeric types to another numeric type "T". More... | |
interface | IExp< T > |
Provides power, logarithm, raise-e-to-exponent (Exp) and logarithm-of-e (Log) operations. More... | |
interface | IField< T > |
This defines a Field with the operations +,-,*,/ More... | |
interface | IFloatMath< T > |
Provides operations available on floating-point types (float and double), including trigonometry and exponentiation. More... | |
interface | IHasRoot< T > |
Provides the Sqrt operation and its inverse, Square. More... | |
interface | IIncrementer< T > |
Provides increment, decrement, and next/previous-representable- value operations. More... | |
interface | IIntMath< T > |
Provides operations available on all unsigned integer types (byte, uint, etc.); see also IMath{T}, IIntMath{T}, and IFloatMath{T}. More... | |
interface | IMath< T > |
Provides operations available on all system numeric types (int, uint, double, etc.); see also ISignedMath{T}, IUIntMath{T}, IIntMath{T} and IFloatMath{T}. More... | |
interface | IMultiplicationGroup< T > |
This defines a Group with the operation *, the neutral element One, the inverse Inverse and an operation / that is defined in terms of the inverse. More... | |
interface | IMultiply< T > |
Provides the multiplication operation and the multiplicative identity, one. More... | |
interface | INumTraits< T > |
This interface provides information about a numeric type T. More... | |
interface | IOneProvider< T > |
Provides the value of "one" for type T. More... | |
interface | IOrdered< T > |
Provides comparison function for type T along with absolute value (Abs), and the minimum or maximum of two values (Min, Max). More... | |
interface | IRationalMath< T > |
Use this interface for floating-point, fixed-point, and rational types. Rational types support reciprocal and negation. More... | |
interface | IRing< T > |
This defines a Ring with the operations +,* More... | |
interface | ISignedMath< T > |
Provides operations available on all signed numeric types (int, double, etc.); see also IUIntMath{T}, IIntMath{T} and IFloatMath{T}. More... | |
interface | ITrigonometry< T > |
Provides trigonometry operations. More... | |
interface | IUIntMath< T > |
Provides operations available on all unsigned integer types (byte, uint, etc.); see also IMath{T}, IIntMath{T}, and IFloatMath{T}. More... | |
interface | IZeroProvider< T > |
Provides the value of "zero" for type T. More... | |
class | Math128 |
Contains methods for manipulating 128-bit numbers, multiplying 64-bit numbers to produce 128-bit results, and dividing 128-bit numbers by 64-bit numbers. More... | |
struct | MathD |
Implements IFloatMath{T} for numbers of type System.Double. More... | |
class | MathEx |
Provides additional math functions that are not available in System.Math. More... | |
class | MathExtensions |
Standard extension methods for generic math interfaces such as IOrdered{T}. More... | |
struct | MathF |
Implements IFloatMath{T} for numbers of type System.Single. More... | |
struct | MathF16 |
Implements IRationalMath{T} for numbers of type FPI16. More... | |
struct | MathF23 |
Implements IRationalMath{T} for numbers of type FPI23. More... | |
struct | MathF8 |
Implements IRationalMath{T} for numbers of type FPI8. More... | |
struct | MathFL16 |
Implements IRationalMath{T} for numbers of type FPL16. More... | |
struct | MathFL32 |
Implements IRationalMath{T} for numbers of type FPL32. More... | |
struct | MathI |
Implements IIntMath{T} for numbers of type System.Int32. More... | |
struct | MathI16 |
Implements IIntMath{T} for numbers of type System.Int16. More... | |
struct | MathI8 |
Implements IIntMath{T} for numbers of type System.SByte. More... | |
struct | MathL |
Implements IIntMath{T} for numbers of type System.Int64. More... | |
class | Maths< T > |
This class helps generic code to perform calculations on numbers of unknown type, by providing access to various math interfaces. More... | |
struct | MathU |
Implements IUIntMath{T} for numbers of type System.UInt32. More... | |
struct | MathU16 |
Implements IUIntMath{T} for numbers of type System.UInt16. More... | |
struct | MathU8 |
Implements IUIntMath{T} for numbers of type System.Byte. More... | |
struct | MathUL |
Implements IUIntMath{T} for numbers of type System.UInt64. More... | |
Typedefs | |
using | T = System.SByte |
Contains general-purpose math algorithms beyond what is provided in the .NET BCL (Base Class Library). Notable class: Math.MathEx.