If I am doing a simple mixed-poisson example using RT0 spaces, I would like to do a schur-complement approximation for preconditioning.
PETSc has interfaces for this, and one could simply have these options passed in:
-ksp_type gmres
-pc_type fieldsplit
-pc_fieldsplit_type schur
-pc_fieldsplit_schur_fact_type full
-pc_fieldsplit_schur_precondition selfp
-fieldsplit_0_ksp_type preonly
-fieldsplit_0_pc_type bjacobi
-fieldsplit_0_sub_pc_type ilu
-fieldsplit_1_ksp_type preonly
-fieldsplit_1_pc_type hypre
Where "selfp" happens to be the approximation of the laplacian, but of course one could pass in their own form. In the Firedrake project, one could do these easily, but I was wondering if FEniCS could do something similar?
Thanks,
Justin