Enhanced C#
Language of your choice: library documentation

Contains generalpurpose math algorithms beyond what is provided in the .NET BCL (Base Class Library). Notable class: Math.MathEx. More...
Classes  
struct  FPI16 
Fixedpoint type based on Int32 with 16 fractional bits More...  
struct  FPI23 
Fixedpoint type based on Int32 with 23 fractional bits More...  
struct  FPI8 
Fixedpoint type based on Int32 with 8 fractional bits More...  
struct  FPL16 
Fixedpoint type based on Int64 with 16 fractional bits More...  
struct  FPL32 
Fixedpoint 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 bitoriented 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, raiseetoexponent (Exp) and logarithmofe (Log) operations. More...  
interface  IField< T > 
This defines a Field with the operations +,,*,/ More...  
interface  IFloatMath< T > 
Provides operations available on floatingpoint 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/previousrepresentable 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 floatingpoint, fixedpoint, 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 128bit numbers, multiplying 64bit numbers to produce 128bit results, and dividing 128bit numbers by 64bit 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 generalpurpose math algorithms beyond what is provided in the .NET BCL (Base Class Library). Notable class: Math.MathEx.