Thanks a lot. Does PCFieldSplitSetFields() implicitly number the fields it creates or am I missing something more fundamental e.g.
PCFieldSplitSetFields(pc,isPressure)// field 0 for pressure PCFieldSplitSetIS(pc,isVelocity)//field 1 for the 3 velocity components where I could use something like -ksp_type preonly -pc_type fieldsplit -pc_fieldsplit_type MULTIPLICATIVE -fieldsplit_0_ksp_type richardson -fieldsplit_0_pc_type boomeramg -fieldsplit_1_ksp_type gmres -fieldsplit_1_pc_type none I tried to set the options to do the inner solve for the fixed point iteration on p219 of Hoffman and Johnson, "Comp. Turb. Incomp. Flow", which I understand as amg on the pressure field followed by 3 iterations of gmres on the velocity after updating the pressure. Thanks, Chris On May 12, 2010, at 3:40 AM, Jed Brown wrote: > On Wed, 12 May 2010 01:05:47 -0400, Matthew Knepley > <knepley at gmail.com> wrote: >> FieldSplit is very simple. You just give an IS for each field which >> numbers the dof in that field. Then you can combine the solvers >> additively or multiplicatively on the command line. I do not think >> we >> have a specific example, but you can do this from the command line >> for >> any DA example, such as SNES ex19. > > A few examples: > > $ grep pc_fieldsplit `find src -name makefile` > > Chris, PCFieldSplit has not changed since the release, but support for > more general factorization (Schur) splits and geometric multigrid > inside > of splits will go into petsc-dev. > > Jed
