[petsc-users] Implementing of a variable block size BILU preconditioner
Jed Brown
jed at jedbrown.org
Sat Dec 1 17:16:55 CST 2018
This would use the blocks as indicated by MatSetVariableBlockSizes, not
by using a matrix format that explicitly blocks? The information it
needs is too big/complex to yield to the preconditioner via a call like
MatInvertVariableBlockDiagonal. Instead, I would model it off MatFactor
and the ILU code. I think it would be okay to go into
MatILUFactorSymbolic_SeqAIJ and take a different code path (into your
new code) when (variable) block sizes are set.
Note that the benefits from this might be marginal -- I think the
algorithms will produce effectively identical results and doubt there is
much opportunity for performance improvement without changing data
structures (at least in the common regimes I can think of).
Ali Reza Khaz'ali via petsc-users <petsc-users at mcs.anl.gov> writes:
> Hi,
>
> I want to implement a variable block size BILU preconditioner in PETSc.
> I am wondering if modifying the PCVPBJACOBI preconditioner
> (vpbjacobi.c), to get what I want, is a good idea.
>
> Any help is much appreciated.
>
> --
> Ali Reza Khaz’ali
> Assistant Professor of Petroleum Engineering,
> Department of Chemical Engineering
> Isfahan University of Technology
> Isfahan, Iran
More information about the petsc-users
mailing list