User-Guide#
Argonne National Laboratory
Mathematics and Computer Science Division
Prepared by
S. Balay 1, S. Abhyankar 1,2, M. F. Adams 3, S. Benson 1, J. Brown 1,10, P. Brune 1, K. Buschelman 1, E. M. Constantinescu 1, L. Dalcin 4, A. Dener 1, V. Eijkhout 6, J. Faibussowitsch 1,18, W. D. Gropp 1,18, V. Hapla 8, T. Isaac 1,14, P. Jolivet 12,22, D. Karpeev 1, D. Kaushik 1, M. G. Knepley 1,9, F. Kong 1,11, S. Kruger 15, D. A. May 7,21, L. Curfman McInnes 1, R. Tran Mills 1, L. Mitchell 13,20, T. Munson 1, J. E. Roman 16, K. Rupp 1,19, P. Sanan 1,8, J. Sarich 1, B. F. Smith 1,17, H. Suh 1, S. Zampini 4, H. Zhang 1,5, H. Zhang 1, and J. Zhang 1
This work was supported by the Office of Advanced Scientific Computing Research, Office of Science, U.S. Department of Energy, under Contract DE-AC02-06CH11357.
- Introduction to PETSc
- The Solvers in PETSc/TAO
- Vectors and Parallel Data
- Matrices
- KSP: Linear System Solvers
- SNES: Nonlinear Solvers
- TS: Scalable ODE and DAE Solvers
- Basic TS Options
- DAE Formulations
- Using Implicit-Explicit (IMEX) Methods
- IMEX Methods for fast-slow systems
- GLEE methods
- Using fully implicit methods
- Using the Explicit Runge-Kutta timestepper with variable timesteps
- Special Cases
- Monitoring and visualizing solutions
- Error control via variable time-stepping
- Handling of discontinuities
- Explicit integrators with finite element mass matrices
- Performing sensitivity analysis with the TS ODE Solvers
- Using Sundials from PETSc
- Using TChem from PETSc
- Solving Steady-State Problems with Pseudo-Timestepping
- TAO: Optimization Solvers
- DM: Interfacing Between Solvers and Models/Discretizations
- Additional Information
- PETSc for Fortran Users
- Checking the PETSc version
- Using MATLAB with PETSc
- Profiling
- Hints for Performance Tuning
- STREAMS: Example Study
- The Use of BLAS and LAPACK in PETSc and external libraries
- Other PETSc Features
- Developer Environments
- Advanced Features of Matrices and Solvers
- Running PETSc Tests