You are here:  

DigitalRune Mathematics Library for .NET and XNA

DigitalRune Mathematics is a mathematics library for the Microsoft .NET Framework and the XNA Framework. The library is designed and optimized for use in 3D applications and games.

Supported Platforms

  • Microsoft .NET Framework 3.5 or higher
  • Microsoft XNA Framework 3.1 (Windows, Xbox 360)

The XNA Framework is supported, but not required to use DigitalRune Mathematics. Support for the upcoming XNA Framework 4 (Windows, Xbox 360 and Windows Phone 7) will be available on release.

Please contact us if you need support for any other platform (for example: Mono, .NET Compact Framework, Silverlight, or XNA 4 CTP).

Features

General

  • Fully managed C# class library
  • Intended and optimized for use in 3D real-time applications
  • Robust floating-point comparisons
  • Optional support for the Microsoft XNA Framework (Windows, Xbox 360)

Algebra

  • General n-dimensional vectors and matrices (single and double precision)
  • Specialized vectors and matrices for: 2D, 3D, 4D (single and double precision)
  • 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 probability distributions
  • Prinicipal component analysis (PCA)
Documentation

The download package includes the full MSDN-style documentation and sample applications (incl. source code).

The documentation can also be viewed online:

Online Documentation

Download

A 30-day trial version is available for download:

Download Area

(Note: Trial versions do not include support for Xbox 360.)

Licensing and Pricing

Licensing and pricing will be announced within the next weeks. Source code licenses will be available.

History

The library has been in development since 2007. In 2009 it was made available for selected partners. Version 1.1 (June 2010) is the first public release.

So far, the library has served as the foundation for academical and commercial 3D applications including collision detection, physics simulation and graphics libraries. 

 
Home | Products | Services | Downloads | Buy | Support | About