Views
Technical committee meetings
>>
Minutes 19 June 2006
>>
OpenCMISS/libMesh Development Notes
>>
PETSc solver options
last edited 1 year ago by taus007
Using PETSc with libMesh
- Use command line
-ksp_typeto choose the PETSc solver kind.- Options are:
richardson, chebychev, cg, gmres, tcqmr, bcgs, cgs, tfqmr, cr, lsqr, bicg, or preonly.
- Options are:
- Use
-ksp_gmres_restartwith gmres andksp_richardson_scalefor richardson. - Use command line
-pc_typeto choose the PETSc preconditioner.- Options are:
jacobi, bjacobi, sor, eisenstat, icc, ilu, asm, ksp, lu, or cholesky - Loads of options exist for using these preconditioners as well. See most recent PETSc manual.
- Loads of externally supplied solvers as well that need to be hooked in. An important one for our work is BoomerAMG from HYPRE. Use as follows:
-pc_type hypre -pc_type_hypre boomeramg -ksp_type richardsonto just use BoomerAMG to solve. See PETSc FAQ and manual for more options.- Options from HYPRE (and for
-pc_type_hypre)pilut, parasails, boomeramg, euclid - Note that it is best to use BoomerAMG with
gmresbecause the AMG preconditioner by default is not symmetric.
- Options from HYPRE (and for
- Options are:
- Use command line
-log_summaryto get lots of PETSc information about your run (Others claim that -log_info works too but I didn't find this with a 2.3.2-p7 version of PETSc.) - Use
-ksp_rtol, -ksp_atol, -ksp_divtol, and -ksp_max_itfor setting other options. - Monitor convergence with
-ksp_monitorand see info about preconditioners etc. with-ksp_view.