CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   Good library to solve huge linear system (

Ricardo Bonon May 17, 2000 16:58

Good library to solve huge linear system
Hello everybody,

I am developing some unsteady, viscous, unstructured triangular mesh codes to simulate the filling of a cavity with plastic material.

I am in need of a good, reliable, free, well documented library of functions to solve linear systems.

Iīve tried to work whit a C library called LASPack (not LAPACK), and itīs well documented and free, but has some difficulties to solve systems of more than 5000 variables.

Could you advise me about a good library to solve this problem. I would prefer a C library. Thank you.

Jens May 18, 2000 05:12

Re: Good library to solve huge linear system
I use aztec from sandia labs but i have not yet made experiences with more than 5000 variables


Sergei Chernyshenko May 18, 2000 09:08

Re: Good library to solve huge linear system
Try SuperLU,

Frank Bramkamp May 19, 2000 06:24

Re: Good library to solve huge linear system
The PETSc library from Argonne does a good job. It has C and fortran interfaces. You can use it in a uni-processor and parallel environment.

It is designed for sparse matrizes. 5000 unknowns is no problem. My problems have about 100000 unknowns, which is still a small problem. PETSc has got GMRES, BiCGSTAB ..various preconditioners (ILU, jacobi etc), and all kinds of stuff what one needs for solving large, sparse systems of linear equations.

You can also define a matrix free GMRES context, include your own preconditioners etc...

I don't have the address at hand right now, but if you look for "petsc", you should easily find it. The manual is a bit short sometimes (lots of functions), but the basic usage is not too difficult and there are many examples one should have a look at. The online manual is also extensive.

I guess it's similar to the atztec solver from sandia. I have the feeling that more people use petsc, though.

Hope this is useful.


All times are GMT -4. The time now is 20:03.