Hi.
One of my students is solving some large sparse systems (more than 20K equations). The coeficient matrix
is symmetric and positive definite, with large sparsivity (1% of non zero elements in some cases).
After playing around a little bit with cholfact we decided to compare the time with a very simple implementation
of the conjugate gradient method with diagonal scaling.
The code is in
https://gist.github.com/CodeLenz/92086ba37035fe8d9ed8#file-gistfile1-txtAnd, as for example, the solution of Ax=b for
julia> A = sprand(10000,10000,0.01); A = A'+A; A=A+100*rand()*speye(10000,10000)
takes 16 seconds with cholfact(A) and 600 milliseconds !!! with DCGC (tol=1E-10)
Also, as expected, the memory consumption with CG is very low, allowing the solution
of very large systems.
The same pattern is observed for different leves of sparsivity and for different random matrices.
I would like to thank the Julia developers for such amazing tool !