On Tue, Dec 6, 2022 at 5:16 AM 김성익 <ksi2443@gmail.com> wrote:

Hello,

 

I have some questions about pc and mumps_icntl.

1.     What’s the difference between adopt preconditioner by code (for example, PetscCall(PCSetType(pc,PCLU)) and option -pc_type lu??

If you call KSPSetFromOptions(), then they are the same.
 

And also, What’s the priority between code pcsettype and option -pc_type ??

 PCSetType() will force the change. If you call KSPSetFromOptions() after that, -pc_type will override the change.

2.     When I tried to use METIS in MUMPS, I adopted metis by option (for example, -mat_mumps_icntl_7 5). In this situation, it is impossible to use metis without pc_type lu.

This is incorrect. You might still call PCSetType() if you want, but you must call KSPSetFromOptions() after that.
 

However, in my case pc type lu makes the performance poor. So I don’t want to use lu preconditioner. How can I do this?

This statement is incoherent. MUMPS is LU preconditioning, so if you use MUMPS you are using LU.

  Thanks,

     Matt
 

Thanks,

Hyung Kim



--
What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
-- Norbert Wiener