HYPRE.jl
HYPRE.jl is a Julia wrapper for the HYPRE library, which provide parallel solvers for sparse linear systems.
diff --git a/dev/index.html b/dev/index.html index dd4686e..31fbe0a 100644 --- a/dev/index.html +++ b/dev/index.html @@ -1,2 +1,2 @@ -
HYPRE.jl is a Julia wrapper for the HYPRE library, which provide parallel solvers for sparse linear systems.
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.
HYPRE.jl is a Julia wrapper for the HYPRE library, which provide parallel solvers for sparse linear systems.
HYPRE.jl provide a high level interface to the HYPRE library. The goal of this interface is that the style and API should feel natural to most Julia programmers (it is "Julian"). In particular, you can use standard sparse matrices together with HYPRE's solvers through this interface.
The high level interface does not (currently) provide access to all of HYPREs functionality, but it can easily be combined with the low level interface when necessary.
HYPRE.jl also provide a low level interface for interacting with HYPRE. The goal of this interface is to stay close to the HYPRE C API. In fact, this interface is automatically generated based on HYPRE's header files, so this API maps one-to-one with the C API, see LibHYPRE C API for more details.
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.
The submodule HYPRE.LibHYPRE contains auto-generated bindings to the HYPRE library and give access to the HYPRE C API directly[1]. The module exports all HYPRE_* symbols. Function names and arguments are identical to the C-library – refer to the HYPRE manual for details.
The example program examples/ex5.jl is an (almost) line-to-line translation of the corresponding example program examples/ex5.c written in C, and showcases how HYPRE.jl can be used to interact with the HYPRE library directly.
Functions from the LibHYPRE submodule can be used together with the high level interface. This is useful when you need some functionality from the library which isn't exposed in the high level interface. Many functions require passing a reference to a matrix/vector or a solver. These can be obtained as follows:
| C type signature | Argument to pass |
|---|---|
HYPRE_IJMatrix | A.ijmatrix where A::HYPREMatrix |
HYPRE_ParCSRMatrix | A.parmatrix where A::HYPREMatrix |
HYPRE_IJVector | b.ijvector where b::HYPREVector |
HYPRE_ParVector | b.parvector where b::HYPREVector |
HYPRE_Solver | s.solver where s::HYPRESolver |
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.
The submodule HYPRE.LibHYPRE contains auto-generated bindings to the HYPRE library and give access to the HYPRE C API directly[1]. The module exports all HYPRE_* symbols. Function names and arguments are identical to the C-library – refer to the HYPRE manual for details.
The example program examples/ex5.jl is an (almost) line-to-line translation of the corresponding example program examples/ex5.c written in C, and showcases how HYPRE.jl can be used to interact with the HYPRE library directly.
Functions from the LibHYPRE submodule can be used together with the high level interface. This is useful when you need some functionality from the library which isn't exposed in the high level interface. Many functions require passing a reference to a matrix/vector or a solver. These can be obtained as follows:
| C type signature | Argument to pass |
|---|---|
HYPRE_IJMatrix | A.ijmatrix where A::HYPREMatrix |
HYPRE_ParCSRMatrix | A.parmatrix where A::HYPREMatrix |
HYPRE_IJVector | b.ijvector where b::HYPREVector |
HYPRE_ParVector | b.parvector where b::HYPREVector |
HYPRE_Solver | s.solver where s::HYPRESolver |
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.
Loading search...
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.
Loading search...
Settings
This document was generated with Documenter.jl version 0.28.0-DEV on Tuesday 26 July 2022. Using Julia version 1.7.3.