CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   Sparse solver for block-diagonal matrix (https://www.cfd-online.com/Forums/main/90170-sparse-solver-block-diagonal-matrix.html)

 alberto_cuoci July 3, 2011 04:26

Sparse solver for block-diagonal matrix

1 Attachment(s)
Hello everybody,

I would like to solve a very large (and very sparse) linear system, whose sparsity pattern is reported below:

http://www.cfd-online.com/Forums/E:%5Cimmagine2.bmphttp://www.cfd-online.com/Forums/E:%5Cimmagine2.bmpAttachment 8264

There are N dense blocks (whose local dimension is NB) along the main diagonal. The off-diagonal blocks are not dense, but only the elements along the local diagonal are present (as reported in the Figure). The sparsity pattern is symmetric, but in terms of values, the matrix is NOT symmetric.
Usually the block dimension NB is equal to 50 and the number of blocks N is equal to 100,000. The max number of off-diagonal blocks is 4 (of course per each main block, which means that the maximum total number of off-diagonal blocks is 4*N).

I was looking for a good iterative solver to manage and exploit this kind of structure, or the most appropriate technique available for solving this system in the most efficient way. Up to now I used a generic sparse iterative solver for linear systems, without exploiting the particular pattern here described.
Do you have any suggestions or comments?