This package provides a low level interface for PETSc and allows combining julia features (such as automatic differentiation) with the PETSc infrastructure and nonlinear solvers.
This package can be added with the julia command:
]add PETSc
The installation can be tested with
]test PETSc
By default, the package uses a pre-built binary of
PETSc
along with a
default installation of MPI.jl
. Note that the distributed version of PETSc is using real,
Float64
numbers; build details can be found
here
If you want to use the package with custom builds of the PETSc library, this can
be done by specifying the environment variable JULIA_PETSC_LIBRARY
. This is a
colon separated list of paths to custom builds of PETSc; the reason for using
multiple builds is to enable single, double, and complex numbers in the same
julia session. These should be built against the same version of MPI as used
with MPI.jl
After setting the variable you should
]build PETSc
and the library will be persistently set until the next time the build command is issued.
To see the currently set library use
using PETSc
PETSc.libs