PETSc.jl

PETSc.jl is a Julia wrapper for the Portable, Extensible Toolkit for Scientific Computation PETSc package, which allows solving ordinary and partial differential equations in parallel on laptops or massively parallel high-performance systems.

The use of Julia greatly simplifies the code that developers have to write, while allowing to employ Julia features such as automatic differentiation. The Julia wrapper also comes with a pre-built library, which greatly simplifies the process of getting your first code working in parallel, on different operating systems. In many cases, the Julia code is significantly shorter than its C counterpart.

This wrapper mimics the PETSc-functionality as closely as possible, but remains work in progress (meaning that not everything has been translated yet). See the official user guide if you want to learn more about PETSc in general. For Julia-specific examples, have a look at our examples or tests.