If you want advice you should post the error trace PETSc reports. Anyway, solving Stokes is not so trivial (without direct solvers, you may need mesh dependent information), but we have examples for it
https://gitlab.com/petsc/petsc/-/blob/master/src/ksp/ksp/tutorials/ex42.c <https://gitlab.com/petsc/petsc/-/blob/master/src/ksp/ksp/tutorials/ex42.c> https://gitlab.com/petsc/petsc/-/blob/master/src/ksp/ksp/tutorials/ex43.c <https://gitlab.com/petsc/petsc/-/blob/master/src/ksp/ksp/tutorials/ex43.c> https://gitlab.com/petsc/petsc/-/blob/master/src/snes/tutorials/ex69.c <https://gitlab.com/petsc/petsc/-/blob/master/src/snes/tutorials/ex69.c> If you scroll to the end of those files, you see a bunch of possible options either using PCFIELDSPLIT, PCBDDC or KSPFETIDP. > On Jul 28, 2020, at 12:37 PM, Bin Liu <[email protected]> wrote: > > I would like to solve a saddle point problem arising from the stokes > equation. I got successful to use the direct solvers in sequential runs. > However, I would like to extend it for distributed memory computation. I > tried to use superlu_dist, but the program returns errors. Is it possible to > solve a saddle point problem in distributed memory using superlu_dist? Could > anyone give a simple sample code to set up the parameters of the solver? > > Thanks
