Вопрос

Существует ли стабильная библиотека линейной алгебры (точнее, векторов, матриц, многомерных массивов и основных операций над ними) для C#?

Поиск выявил несколько библиотек с открытым исходным кодом, которые либо не обновлялись в течение нескольких лет, либо находятся на ранней стадии бета-тестирования, а также Centerspace NMath.Какие альтернативы стоит проверить?

Это было полезно?

Решение

Математика.NET.Мы используем его в производстве.

Другие советы

Видеть: http://en.wikipedia.org/wiki/List_of_numerical_libraries

http://www.alglib.net/ - Открытый источник.Многоязычная библиотека.

http://www.mathdotnet.com/ - Открытый источник.Как упоминалось другими.dnAnalytics заменяется на http://numerics.mathdotnet.com/ в этом.

http://www.lutzroeder.com/dotnet/ - У Лутца Рёдера есть порт Mapack.Net с открытым исходным кодом для LAPACK.

http://www.extremeoptimization.com/ - Коммерческий.

Я использую ILNumerics.NET.

www.ilnumerics.net

Очень хорошая и стабильная поддержка.Хотя у меня нет никакого сравнения.

Мы оценили nMath и остались весьма довольны его программируемостью и скоростью.Их сотрудники службы поддержки даже работали на выходных, чтобы выяснить найденную нами ошибку.Нам понравилось, что они использовали библиотеку Intel Kernel Math вместо собственных вычислений.[Отредактировано, чтобы добавить:уже много лет используем в производстве]

Несколько недель назад я нашел новую библиотеку С#. ФинМатематика содержит реализации множества различных методов и приемов, включая базовую линейную алгебру, такие как:

  1. Векторные и матричные реализации (простые в использовании интерфейсы высокого уровня, охватывающие большую часть БЛАС функциональность)
  2. Алгоритмы матричных факторизаций (LU, QR, SVD, Cholesky).

И много других полезных вещей, таких как статистика, факторный и кластерный анализ, решатель линейного и квадратичного программирования и т. д.

К сожалению, это не бесплатно, но очень быстро, поскольку использует МКЛ для самых сложных вычислений и в то же время распространяется как одна библиотека, поддерживает как 32-битные, так и 64-битные режимы и не требует специального обслуживания, например, заботы о собственных библиотеках.

Вы рассмотрели днАналитика?

.Сетевая матрица это аналогичный вопрос, на который вы, возможно, захотите посмотреть ответы на другие идеи.

Хотя он не обновляется, не имеет открытого исходного кода и не предназначен для коммерческого использования, можно попробовать D* от Microsoft Research.Это очень круто символический математическая библиотека, специально для выполнения производных, но на самом деле это небольшая Matlab в руках .NET-программиста.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top