<div dir="ltr"><div>Hi,</div><div><br></div><div>I'm trying to learn how to use Schur complement as a preconditioner. I ran src/snes/examples/tutorials/ex70.c for the two cases:</div><div><br></div><div>./ex70 -user_pc -ksp_view</div><div>KSP Object: 1 MPI processes</div><div>  type: gmres</div><div>    GMRES: restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement</div><div>    GMRES: happy breakdown tolerance 1e-30</div><div>  maximum iterations=10000, initial guess is zero</div><div>  tolerances:  relative=1e-05, absolute=1e-50, divergence=10000</div><div>  left preconditioning</div><div>  using PRECONDITIONED norm type for convergence test</div><div>PC Object: 1 MPI processes</div><div>  type: none</div><div>  linear system matrix = precond matrix:</div><div>  Mat Object:   1 MPI processes</div><div>    type: nest</div><div>    rows=72, cols=72</div><div>      Matrix object: </div><div>        type=nest, rows=2, cols=2 </div><div>        MatNest structure: </div><div>        (0,0) : prefix="a00_", type=mpiaij, rows=48, cols=48 </div><div>        (0,1) : prefix="a01_", type=mpiaij, rows=48, cols=24 </div><div>        (1,0) : prefix="a10_", type=mpiaij, rows=24, cols=48 </div><div>        (1,1) : prefix="a11_", type=mpiaij, rows=24, cols=24 </div><div> residual u = 1.60628e-06</div><div> residual p = 1.2094e-05</div><div> residual [u,p] = 1.22002e-05</div><div> discretization error u = 0.0106473</div><div> discretization error p = 1.85787</div><div> discretization error [u,p] = 1.8579</div><div><br></div><div><br></div><div>./ex70 -user_ksp -ksp_view</div><div>[0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------</div><div>[0]PETSC ERROR: No support for this operation for this object type</div><div>[0]PETSC ERROR: Cannot locate function PCFieldSplitGetSubKSP_C in object</div><div>[0]PETSC ERROR: See <a href="http://www.mcs.anl.gov/petsc/documentation/faq.html">http://www.mcs.anl.gov/petsc/documentation/faq.html</a> for trouble shooting.</div><div>[0]PETSC ERROR: Petsc Release Version 3.5.1, unknown </div><div>[0]PETSC ERROR: ./ex70 on a darwin-gnu-fort-debug named <a href="http://gmbook.dhcp.lbnl.us">gmbook.dhcp.lbnl.us</a> by gbisht Fri Oct 31 09:28:38 2014</div><div>[0]PETSC ERROR: Configure options -with-hdf5-dir=/opt/local/ --with-blas-lapack-lib=/System/Library/Frameworks/Accelerate.framework/Versions/Current/Accelerate --download-parmetis=yes --download-metis=yes --download-sundials=yes --with-mpich=/opt/local --with-cc=/opt/local/bin/mpicc-mpich-gcc48 --with-cxx=/opt/local/bin/mpicxx-mpich-gcc48 --with-fc=/opt/local/bin/mpifort-mpich-gcc48 PETSC_ARCH=darwin-gnu-fort-debug --download-sowing=1</div><div>[0]PETSC ERROR: #1 PCFieldSplitGetSubKSP() line 1637 in /Users/gbisht/Research/Models/PETSc/petsc3.5.1/src/ksp/pc/impls/fieldsplit/fieldsplit.c</div><div>[0]PETSC ERROR: #2 StokesSetupPC() line 113 in /Users/gbisht/Research/Models/PETSc/petsc3.5.1/src/snes/examples/tutorials/ex70.c</div><div>[0]PETSC ERROR: #3 main() line 686 in /Users/gbisht/Research/Models/PETSc/petsc3.5.1/src/snes/examples/tutorials/ex70.c</div><div>[0]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint@mcs.anl.gov----------</div><div>application called MPI_Abort(MPI_COMM_WORLD, 56) - process 0</div><div><br></div><div><br></div><div>Is my installation of PETSc incorrect? Would you suggest any particular starting examples that demonstrate how to use Schur complement as a preconditioner?</div><div><br></div><div>Thanks,</div><div>Gautam.</div><div><br></div></div>