
DigitalRune Mathematics is a .NET class library containing types and algorithms to solve mathematical problems. The library was designed for use in computer graphics, video games and virtual reality applications.
This topic contains the following sections.
Minimal Requirements
Microsoft .NET Framework 4.0 Client Profile or Mono
Supported Platforms
Microsoft .NET Framework 4.0 (or higher)
Microsoft XNA Framework 4.0 (Windows, Xbox 360, Windows Phone 7)
Features
Here is an overview of features in this product.
General
Intended and optimized for use in 3D real-time applications
Robust floating-point comparisons
Algebra
General vectors and matrices
Specialized vectors and matrices for: 2D, 3D, 4D
Quaternion algebra
Matrix decompositions: Cholesky decomposition, Eigenvalue decomposition, LU decomposition, QR decomposition, Singular Value Decomposition (SVD)
Iterative solver for systems of linear equations: Jacobi method, Gauss-Seidel method, SOR method
Analysis
Numerical integration: Trapezoidal integrator, Simpson integrator, Romberg integrator
Numerical integration of ordinary differential equations: Explicit Euler integrator, Midpoint integrator, Runge-Kutta integrator
Root finding algorithms: Bisection method, Regula falsi method, Newton-Raphson method, Improved Newton-Raphson method
Interpolation
General interpolation:
Step interpolation
N-dimensional linear interpolation
Cosine interpolation
Polynomial interpolation
Quaternion interpolation: linear (LERP), spherical linear (SLERP), spherical quadrangle (SQUAD)
Scattered interpolation: Shepard's method, interpolation using Radial Basis Functions (RBF)
Interpolation curves (splines):
Basic spline curves: step, linear, Bézier, B-spline, Cardinal, Catmull-Rom, Hermite
Piecewise curves: 2D paths, 3D paths, animation curves
Length-parameterization of curves
Statistics
Various statistical distributions
Principal component analysis (PCA)
Namespaces
Following namespaces belong to DigitalRune.Mathematics: