There are a lot of PETSc things to help you out. You could also use a fieldsplit preconditioner, and approximate the Schur complement, see this documentation page.
There are a lot of PETSc things to help you out. You could also use a fieldsplit preconditioner, and approximate the Schur complement, see this documentation page.