
Hi All,
For the matrix decomp solvers and LU inverse we have two sets of methods XXSolve and XXSolveFactored. With LAPACK, you first factor the matrix and then call the solve routine using the factored matrix (so our XXFactor and XXSolveFactored methods). XXFactor
overwrites the original matrix.The XXSolve methods does the factorization and solve in one step. The question is should the XXSolve (and LUInverse) method overwrite the original matrix or not? Should we leave it to the users to clone the
matrix first if they want to preserve the matrix?
The current managed provider overwrites the matrix. I'm leaning towards not overwriting. The reason against is that users probably aren't expecting that behavior. The reason for is performance and memory use since we'd have to clone the matrix prior
to factoring it (but users could use the two step method if these are a concern).
What does everyone else think?
Regards,
Marcus


Coordinator
Mar 1, 2011 at 9:08 PM

I also think we should make the API as intuitive as possible first. It sounds like overwriting the matrix could be a source of much confusion to first time suers. Power users should be able to figure out that they can do the two step method if they want
better perf and memory usage.
Just my 2 cents. Cheers, Jurgen

