[petsc-users] Question about preconditioner

Barry Smith bsmith at petsc.dev
Thu Feb 16 09:27:01 CST 2023


   If your  matrix has the form 

(   A   B )
(   C   0 )

then often PCFIELDSPLIT can be a useful preconditioner with the option -pc_fieldsplit_detect_saddle_point



> On Feb 16, 2023, at 2:42 AM, user_gong Kim <ksi2443 at gmail.com> wrote:
> 
>  
> Hello,
> 
>  
> There are some questions about some preconditioners.
> 
> The questions are from problem Au=b. The global matrix A has zero value diagonal terms.
> 
> 1.     Which preconditioner is preferred for matrix A which has zero value in diagonal terms?
> The most frequently used basic 2 preconditioners are jacobi and SOR (gauss seidel). As people knows both methods should have non zero diagonal terms. Although the improved method is applied in PETSc, jacobi can also solve the case with zero diagonal term, but I ask because I know that it is not recommended.
> 
> 2.     Second question is about running code with the two command options below in a single process.
> 1st command : -ksp_type gmres -pc_type bjacobi -sub_pc_type jacobi
> 2nd command : -ksp_type gmres -pc_type hpddm -sub_pc_type jacobi
> When domain decomposition methods such as bjacobi or hpddm are parallel, the global matrix is divided for each process. As far as I know, running it in a single process should eventually produce the same result if the sub pc type is the same. However, in the second option, ksp did not converge.
> In this case, I wonder how to analyze the situation.
> How can I monitor and see the difference between the two?
> 
>  
>  
> Thanks,
> 
> Hyung Kim
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20230216/ea9ad26e/attachment.html>


More information about the petsc-users mailing list