PETSc is a sophisticated package and fully understanding its usage requires time. However, application programmers can easily begin to use PETSc from a high level and then gradually learn more details according to their needs. Users should read the users manual before attempting to do any serious coding with PETSc!
- PETSc users manual - pdf (fully searchable with hyperlinks)
- TAO users manual - pdf (fully searchable with hyperlinks)
- Index of all help topics
- Index of all manual pages
- Strategies for using PETSc with Fortran
PETSc Manual Pages and Examples MPI
- Vector Operations (Vec)
-
Matrix Operations (Mat)
- Matrix colorings (MatColoring), orderings (MatOrdering), and partitionings (MatPartitioning)
- Finite difference computation of Jacobians (MatFD)
-
Data and grid management
- Star Forest Communication (PetscSF)
- Index sets (IS)
- Data Management (DM) between Vec and Mat, and the distributed mesh datastructures
- DMDA structured grids
- DMPlex unstructured grids
- DMNetwork graphs and networks
- DMFOREST a forest of trees
- DMPATCH
- DMSWARM particles
- DMMOAB
- DMLABEL selecting parts of meshes
- Discretization Technology (DT)
- Application Orderings (AO)
-
Linear Solvers (KSP)
- Summary table of all linear solvers
- Preconditioners (PC)
- Geometric multigrid
- Krylov Subspace Methods (KSP)
-
Nonlinear Solvers (SNES)
- Summary table of all nonlinear solvers
- Full Approximation Storage (FAS) nonlinear multigrid
- Matrix-free nonlinear solvers (MATMFFD)
- Time Stepping (TS) ODE solvers
-
Optimization Solvers (Tao)
- Utilities
The manual pages are split into four categories; we recommend that you begin with basic functionality and then gradually explore more sophisticated library features.
- Beginner - Basic usage
- Intermediate - Setting options for algorithms and data structures
- Advanced - Setting more advanced options and customization
- Developer - Interfaces intended primarily for library developers
Supplementary Documentation
- Installation - detailed instructions for installing PETSc
- Changes - changes and new features in recent versions of PETSc
- Bug Reporting - details on how to report bugs
- Code Management - hints for efficient management of large-scale application codes
- FAQ - frequently asked questions about PETSc
- License - statement of the PETSc copyright