Существуют ли оптимизированные Редкие матрицы в С#?
Существуют ли какие-либо оптимизированные решения Sparse Matrix в С#?
Ответ 1
Существует Math.NET.
У него есть несколько запасных матриц реализация. (ссылка на старый сайт Math.NET. Больше нет онлайн-версии документации).
Ответ 2
Если вы ищете высокоэффективную разрешенную матричную реализацию, проверьте NMath из программного обеспечения CenterSpace.
Здесь представлен неполный список функциональных возможностей, вырезанных из здесь на веб-сайте CenterSpace.
- Полнофункциональный структурированный разреженный матричные классы, в том числе треугольные, симметричный, эрмитовый, полосатый, тридиагональные, симметричные, и Эрмитаж.
- Функции для преобразование между основными матрицами и структурированные разреженные типы матриц.
- Функции для переноса структурированных разреженные матрицы, вычисление внутренних продуктов и вычислительной матрицы нормы.
- Классы для факторинга структурированные разреженные матрицы, в том числе LU-факторизация для полос и тридиагональные матрицы, Бунч-Кауфман факторизация для симметричных и Эрмитовых матриц и Холецкого разложение для симметричных и Эрмитово положительно определенные матрицы. После построения матрицы факторизации можно использовать для решения линейные системы и вычислить детерминанты, обратные и условия номера.
- Общий разреженный вектор и матричные классы и матрица факторизации.
- ортогональным классы разложения для общих матрицы, включая QR-декомпозицию и разложение по сингулярным значениям (СВД).
- Продвинутые наименьшие квадраты классы факторизации для общих матриц, включая Cholesky, QR и СВД.
- LU-факторизация для общих матриц, а также функции для решение линейных систем, вычисление детерминанты, обратные и условия числа.
Пол