CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   Sparse linear systems in finite volume method (

Lionel S. January 12, 2007 16:34

Sparse linear systems in finite volume method
Hi all,

It seems that finite volume methods makes at each iteration a very big sparse linear system

Ax = b

Does someone know precisely how it is solved ? I suppose that iterative methods as conjugate gradient can be used... What do you think about it ?

It would be very easy if it was possible to make small non sparse matrix from big sparse matrix, as it can be done in finite elements methods (in structure) but I suppose that one cannot do that in finite volumes.

Kindest regards


nico January 12, 2007 19:17

Re: Sparse linear systems in finite volume method
yep, conjugate gradients method are used. The whole matrix is of course not stored. On structured grids, a few diagonals (depending of interpolation scheme) are stored. On unstructured grids, defered correction (upwind interpolation + iterations to get to higher order) is usually used, so only the main diagonal and the contribution of the face-neighbour is stored. Hope this helps.


Lionel S. January 13, 2007 06:42

Re: Sparse linear systems in finite volume method
Ok thanks... If ever you know other methods to converge faster than conjugate gradients, please make me know Bye

raju January 13, 2007 15:51

Re: Sparse linear systems in finite volume method
Sparse linear systems obtained from finite volume discretizations can also be solved using multifrontal solvers. The concept of multifrontal solvers is developed from the frontal methods used in finite element. They can solve the linear system very efficiently. The only disadvantage is its huge memory requirement. For 2D problems, these solvers can be effectively used, but for 3D, memory requirement would become a limitation.

Mulitfrontal solvers can be downloaded free on the internet. Examples of multifrontal solvers are (1) UMFPACK v5.0 (2) MUMPS solver (3) Pardiso etc.

Lionel S. January 14, 2007 18:48

Re: Sparse linear systems in finite volume method
Thank you for answering...

In fact, I have problems with conjugate gradients because the boundary conditions makes matrix not symmetric, and it doesn't converge.

I can converge if I try to solve (A' * A)x = A' * b

(where A' is A transposed) but the solution is not accruate enough. I could also use a preconditioner such as incomplete LU but inverting these preconditioners is expensive in time and memory.

Do you have an idea ?

Ben January 17, 2007 10:43

Re: Sparse linear systems in finite volume method

Can anyone tell me how does Krylov Space Methods such as GMRES compare to multifrontal solvers?

I'm currently using PETSc which's a Krylov Space package linear solver to solve my 2D FVM NS eqn. The Ns eqn is solved using the fractional step.

I've no experience with multifrontal solvers.

Thank you

raju January 19, 2007 11:04

Re: Sparse linear systems in finite volume method
I have no experience with fractional step methods. I have worked with steadty state NS implementation using Multifrontal solvers. It is very robust and efficient. When compared with segregated solvers like SIMPLE,SIMPLER etc, multifrontal solvers can be an order of magnitude faster.

All times are GMT -4. The time now is 10:47.