Instructor: Kevin Green (University of Saskatchewan)
Title: Scientific computing with PETSc
Introduction to scientific computing using PETSc.
Objectives:
- Give general intro to numerical linear algebra with PETSc.
- Introduce PETSc solvers for ODEs and PDEs: how to set up and solve linear, nonlinear, and initial value problems in PETSc.
- Introduce HPC with PETSc, look at PETSc data structures built on top of MPI.
- Provided with a series of examples and practical exercises, the attendees will run code on the cluster.
Contents:
- Morning:
- what is PETSc, and why it is useful
- finding documentation for PETSc
- loading PETSc on Cedar
- the main data structures we will be working with (Vec, Mat, DMDA) and how to manipulate them in parallel
- solving linear systems by preconditioned iterative methods
- solving linear systems by direct methods
- Afternoon:
- setting up and solving nonlinear problems
- something went wrong! checking your Jacobians
- setting up and solving initial value problems
- profiling your PETSc code. Scaling
- estimating memory usage
Duration: 6 hours
Level: intermediate
Prerequisites: Introduction to HPC session and programming experience in C or Fortran