Main considerations of this library compared to other(s)

May 19, 2015 at 11:04 AM
I've been wondering how this library relates to other library code (e.g. MathNet). There is also code in the MathNET library for sparse matrices. Given that MathNet is a larger library, what is the particular purpose of this library? Is the main idea to make it faster or simpler than the larger libs? Because i know your library Triangle.Net (which is really nice) i was wondering about this one as well. So my main question is what are your considerations for this library? Thanks in advance.
May 19, 2015 at 3:01 PM
Edited May 19, 2015 at 3:03 PM
Support for solving large systems is very limited in MathNet. You have a couple of iterative solvers and that's it ( You might know that iterative solvers need good preconditioners to be efficient (or even to converge at all). The only perconditioner in MathNet that is optimized for sparse matrices is MILU(0), which I contributed. The library also lacks any optimization for sparse, symmetric matrices.

After all, I did this project mainly to learn about sparse direct solvers. Tim Davis' book (Direct Methods for Sparse Linear Systems) is a really good starting point and since the C# version performs pretty well, I thought: why not publish it.

I don't know about other implementations for the .NET platform, so people might find it useful.
May 19, 2015 at 3:38 PM
Okay, it is interesting that the largest contributor of mathnet recognizes what you just described. Maybe it could be useful for that project to integrate the sparse solvers you published here. Anyhow thanks for sharing .