Allows you to use the matrix element based preconditioners in the LLNL package hypre

Options Database Keys

-pc_hypre_type - One of pilut, parasails, boomeramg, euclid
Too many others to list, run with - pc_type hypre -pc_hypre_type XXX -help to see options for the XXX preconditioner

Notes: Apart from pc_hypre_type (for which there is PCHYPRESetType()), the many hypre options can ONLY be set via the options database (e.g. the command line or with PetscOptionsSetValue(), there are no functions to set them)

The options -pc_hypre_boomeramg_max_iter and -pc_hypre_boomeramg_rtol refer to the number of iterations (V-cycles) that boomeramg does EACH time it is called. So for example, if it is set to 2 then 2-V-cycles are being used to define the preconditioner. -ksp_max_iter and -ksp_rtol STILL determine the total number of iterations and tolerance for the Krylov solver. For example, if -pc_hypre_boomeramg_max_iter is 2 and -ksp_max_it is 10 then AT MOST twenty V-cycles of boomeramg will be called.

If you wish to use boomerAMG WITHOUT a Krylov method use -ksp_type richardson NOT -ksp_type preonly and use -ksp_max_it to control the number of V-cycles. (see the PETSc FAQ.html at the PETSc website under the Documentation tab).

See Also

PCCreate(), PCSetType(), PCType (for list of available types), PC,

Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages