web-dev-qa-db-fra.com

Bibliothèque d'algèbre linéaire C #

Existe-t-il une bibliothèque d'algèbre linéaire stable (plus spécifiquement, des vecteurs, des matrices, des tableaux multidimensionnels et des opérations de base sur eux) pour C #?

La recherche a produit quelques bibliothèques open source qui ne sont pas mises à jour depuis quelques années ou qui en sont à un stade bêta précoce - et Centerspace NMath. Quelles alternatives méritent d'être vérifiées?

44
ima

Math.NET . Nous l'utilisons en production.

25
Rinat Abdullin

Voir: http://en.wikipedia.org/wiki/List_of_numerical_libraries

http://www.alglib.net/ - Open source. Bibliothèque multilingue.

http://www.mathdotnet.com/ - Open source. Comme mentionné par d'autres. dnAnalytics est remplacé par http://numerics.mathdotnet.com/ dans ce document.

http://www.lutzroeder.com/dotnet/ - Lutz Roeder a un port open source Mapack.Net de LAPACK.

http://www.extremeoptimization.com/ - Commercial.

9
nietras

J'utilise ILNumerics.NET

www.ilnumerics.net

Très bon maintien et stable. Je n'ai cependant aucune comparaison.

6
Marc

Nous avons évalué nMath et avons été très satisfaits de sa programmabilité et de sa vitesse. Leur personnel de soutien a même travaillé pendant un week-end pour découvrir un bug que nous avons trouvé. Nous avons aimé qu'ils utilisent la bibliothèque Intel Kernel Math au lieu de rouler leurs propres chiffres. [Modifié pour ajouter: ont été utilisés dans la production depuis des années]

4
Sebastian Good

Il y a quelques semaines, j'ai trouvé une nouvelle bibliothèque c # FinMath contient des implémentations de nombreuses méthodes et techniques diverses, y compris l'algèbre linéaire de base, telles que:

  1. Implémentations vectorielles et matricielles (interfaces de haut niveau faciles à utiliser couvrant surtout BLAS fonctionnalité)
  2. Algorithmes de factorisation matricielle (LU, QR, SVD, Cholesky).

Et bien d'autres choses utiles comme les statistiques, l'analyse factorielle et de cluster, le solveur de programmation linéaire et quadratique, etc.

Malheureusement, ce n'est pas gratuit, mais il est extrêmement rapide, car il utilise MKL pour les calculs les plus complexes et en même temps, il est distribué en tant que bibliothèque unique prenant en charge 32 bits et Modes 64 bits et ne nécessite aucune maintenance particulière à utiliser, comme prendre soin des bibliothèques natives.

2
Wisdom's Wind

. Net Matrix est une question similaire que vous voudrez peut-être regarder les réponses pour d'autres idées.

1
JB King

Bien qu'il ne soit pas mis à jour, ni open source, ni à usage commercial, on peut vouloir consulter D * de Microsoft Research. C'est une bibliothèque mathématique symbolique très cool, en particulier pour faire des dérivés, mais c'est vraiment un petit matlab entre les mains d'un programmeur .NET.

http://research.Microsoft.com/en-us/downloads/4714703d-782c-4e37-830d-0e3b7662f74

1
Ziriax

Avez-vous étudié dnAnalytics ?

1
cletus