MPIBAIJ and sor

Barry Smith bsmith at
Tue Oct 27 15:35:50 CDT 2009


    There is no MatRelax_ for BAIJ matrices and it is only written for  
SBAIJ (symmetric storage) for block size 1.

    Most people end up using ILU(0) or ICC(0) for relaxing with block  
matrices. It converges much better (generally) and takes the same  
amount of time. The only drawback is that it requires another copy of  
the matrix (uses more memory) for the "factored" version. Most people  
are time constrained instead of memory constrained so this is not an  

    It would not be terribly difficult to add relaxation for BAIJ; it  
has to be done one block size at a time. What block size do you need,  
are you interested in writing it?


On Oct 27, 2009, at 3:28 PM, Stephan Kramer wrote:

> Hi all,
> I'm slightly confused by the fact that if I use my BAIJ matrix in  
> parallel and select the sor preconditioner. it complains about mat- 
> >ops->relax and mat->ops->pbrelax not being defined. Also I can't  
> find a MatRelax_MPIBAIJ in src/mat/impls/baij/mpi/mpibaij.c as I  
> would have expected. Is there no sor type relaxation for parallel  
> block matrices at all?
> Cheers
> Stephan

More information about the petsc-users mailing list