[petsc-users] extract preconditioner matrix

김성익 ksi2443 at gmail.com
Wed Dec 14 20:46:18 CST 2022


I'm work on FEM (especially for solving contact mechanics).
In contact mechanics, original global jacobian matrix has nondiagonal
dominance in some rows.
I want to remove this effect(nondiagonal dominance) by using some
techniques.
Because I saw the many references that nondiagonal dominance is harmful for
iterative solver.
So my goal is, combine algebraic multigrid with some tuning jacobian matrix.
To this goal, I am investigating what is possible and what is impossible.

Thanks,
Hyung Kim




2022년 12월 15일 (목) 오전 11:34, Barry Smith <bsmith at petsc.dev>님이 작성:

>
>
> On Dec 14, 2022, at 9:10 PM, 김성익 <ksi2443 at gmail.com> wrote:
>
> Hello,
>
>
>
> I tried to find the way to adapt my own preconditioner.
> In other words, I want to apply and solve a new preconditioner rather than
> using the existing one in Petsc.
>
> So, my questions are as below
> 1. Is this possible to adapt my own preconditioner??
>
>
>    There are a variety of ways to provide your own preconditioner; you can
> use https://petsc.org/release/docs/manualpages/PC/PCSHELL/ and take the
> preconditioner completely in your own hands. But often one builds a
> preconditioner by combining multiple simpler preconditioners: for example
> PCFIELDSPLIT discuss in https://petsc.org/release/docs/manual/ksp/, even
> block Jacobi
> https://petsc.org/release/docs/manualpages/PC/PCBJACOBI/#pcbjacobi is
> built up with smaller preconditioners.
>
>   What particular type of preconditioner are you planning to build? Other
> users may have ideas on how to do it.
>
>
> 2. Also is it possible to extract preconditioner matrix created in Petsc?
>
>
> I'm not sure what you mean by this. Preconditioners are very rarely
> represented directly by a matrix (that would be too inefficient). Rather
> one provides functions that apply the action of the preconditioner. As
> noted above one provides such functions in PETSc using
> https://petsc.org/release/docs/manualpages/PC/PCSHELL/.
>
>
>
> 3. Is this possible to separate preconditioning & solving procedure to
> check the result of each process in Petsc??
>
>
>    The KSP and the PC work together to provide an over all good solver.
> One can focus on the preconditioner's quality by using it with several
> different Krylov methods. For example the KSPRICHARDSON (-ksp_typre
> richardson) does essentially nothing so the convergence (or lack of
> convergence) is determined by the preconditioner only. For non positive
> definite matrices
> https://petsc.org/release/docs/manualpages/KSP/KSPBCGS/#kspbcgs is
> generally weaker than
> https://petsc.org/release/docs/manualpages/KSP/KSPGMRES/#kspgmres so how
> your preconditioner works with these two different KSP methods can help you
> evaluate the preconditioner.
>
>   Feel free to ask more detailed questions as you use the PETSc solvers,
>
>   Barry
>
>
>
> Thanks,
> Hyung Kim
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20221215/2233be2e/attachment.html>


More information about the petsc-users mailing list