PETSc
PETSc (Portable, Extensible Toolkit for Scientific Computation) is a suite of data structures and routines for the scalable solution of scientific applications modeled by partial differential equations. It provides parallel linear and nonlinear solvers, time integrators, and miscellaneous components for discretization, mesh management, and preconditioning. PETSc is designed for high-performance computing on distributed-memory architectures using the Message Passing Interface (MPI). It aims to enable robust, scalable, and portable software for large-scale scientific computations.
The core library exposes a small set of abstract objects and modular components. Vec and Mat represent
PETSc emphasizes portability and performance, with support for various architectures, GPUs, and accelerators through backends and