About the interface to petsc

I want to learn more about how to use the interface of PETSc to solve a problem using domain decomposition. From the file hpddm of Freefem Source, I don’t know how to use the preconditioner designed by ourself and how to use the two-level method. Who can tell me, thanks a lot.

I don’t know if you can use a custom preconditioner (I think no).

For other parameter of PETSc, you have to directly write your parameters in the sparams parameter of the set function. For exemple if you want to use ASM, you have to write:

set(A, sparams="-pc_type asm -ksp_view -sub_ksp_type gmres -ksp_type fgmres");

The PETSc SNES non linear solver is equally interfaced

Thanks for your answer.

And if I have a new preconditioner, how to use it by “set”? is there any reference?