C # biblioteca álgebra lineal
-
23-08-2019 - |
Pregunta
¿Hay álgebra lineal estable (más específicamente, vectores, matrices, matrices multidimensionales y operaciones básicas en ellos) biblioteca para C #?
Búsqueda produjo algunas bibliotecas de código abierto que, o bien no se actualizan por un par de años o que están en una etapa temprana beta - y Centerspace NMath. ¿Qué alternativas son vale la pena mirar?
Solución
Math.NET . Lo estamos usando en la producción.
Otros consejos
Ver: http://en.wikipedia.org/wiki/List_of_numerical_libraries
http://www.alglib.net/ - El código abierto. biblioteca en varios idiomas.
http://www.mathdotnet.com/ - El código abierto. Como han mencionado otros. dnAnalytics se sustituye por http://numerics.mathdotnet.com/ en este.
http://www.lutzroeder.com/dotnet/ - Lutz Roeder tiene un código abierto Mapack.Net puerto de LAPACK.
http://www.extremeoptimization.com/ -. Comercial
Estoy utilizando ILNumerics.NET
Muy buen soporte y estable. No tengo ninguna comparación embargo.
Hemos evaluado NMath y eran bastante satisfechos con su capacidad de programación y velocidad. Su personal de apoyo, incluso trabajó durante un fin de averiguar un error que encontramos. Nos gustó que utilizan la biblioteca del núcleo de Intel Math en vez de rodar sus propios valores numéricos. [Editado para agregar: han estado utilizando durante años en la producción]
Pocas semanas me encontré con una nueva biblioteca de C # FinMath contiene implementaciones de muchos diversos métodos y técnicas que incluyen álgebra lineal básica, como por ejemplo:
- vectoriales y matriciales implementaciones (fácil de usar interfaces de alto nivel que cubren la mayor parte de toda la funcionalidad BLAS )
- Algoritmos de factorización de la matriz (LU, QR, SVD, Cholesky).
Y muchas otras cosas útiles, como las estadísticas, los factores y análisis de conglomerados, lineal y solucionador de programación cuadrática y etc.
Por desgracia, no es gratis, pero es extremadamente rápido, ya que utiliza MKL para más compleja cálculos y, al mismo tiempo que se distribuye como una sola biblioteca es compatible con los modos de 32 y 64 bits y no requiere un mantenimiento especial de usar, como el cuidado bibliotecas nativas.
¿Has mirado en dnAnalytics ?
.Net Matrix es una pregunta similar que es posible que desee ver las respuestas para otras ideas.
A pesar de que no se actualiza, no de código abierto, y no para el uso comercial, uno podría querer echa un vistazo a D * de Microsoft Research. Es un muy simpático simbólica biblioteca matemática, sobre todo para hacer derivados, pero en realidad es un poco de MATLAB en manos de un programador .NET.
http://research.microsoft.com/ en-us / descargas / 4714703d-782c-4e37-830d-0e3b7662f743