PETSc: Home Page

# PETSc

# Portable, Extensible Toolkit for
Scientific Computation

# News: PETSc conference and tutorial, June 15-18, 2015

The current version of PETSc is 3.6; released June 9, 2015.

PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations. It supports MPI, and GPUs through CUDA or OpenCL, as well as hybrid MPI-GPU parallelism.

- Scientific applications that use PETSc
- Features of the PETSc libraries (and a recent podcast)
- Linear system solvers accessible from PETSc
- Related packages that use PETSc
  - MOOSE - Multiphysics Object-Oriented Simulation Environment finite element framework, built on top of libMesh and PETSc
  - SLEPc - Scalable Library for Eigenvalue Problems
  - COOLFluiD - CFD, plasma and multi-physics simulation package
  - fluidity - a finite element/volume fluids code
  - OpenFVM - finite volume based CFD solver
  - OOFEM - object oriented finite element library
  - libMesh - adaptive finite element library
  - FEniCS - sophisticated Python based finite element simulation package
  - Firedrake - sophisticated Python based finite element simulation package
  - DEAL.II - sophisticated C++ based finite element simulation package
  - PHAML - The Parallel Hierarchical Adaptive MultiLevel Project
  - Chaste - Cancer, Heart and Soft Tissue Environment
  - PyClaw - A massively parallel, high order accurate, hyperbolic PDE solver
  - PetIGA - A framework for high performance Isogeometric Analysis
  - Python Bindings
    - petsc4py from Lisandro Dalcin at CIMEC
    - Elefant from the SML group at NICTA
    Java Bindings
    - jpetsctao from Hannes Sommer
- Packages that PETSc can optionally use

PETSc is developed as open-source, requests and contributions are welcome.