User API
Macros
-
PARILU_VISIBILITY(mode)
Set the visibility of a symbol.
- Parameters:
mode – Visibility mode (hidden, default, etc.).
-
PARILU_EXTERN
Declare a symbol as external.
Functions
-
void parilu_finalize(parilu_handle **parilu)
Finalize parILU. Frees the memory allocated for the handle returned by parilu_setup() and sets the pointer to NULL.
- Parameters:
parilu – Pointer to parilu_handle to be released.
-
parilu_options *parilu_default_options()
Get the default options for the parilu_handle library. This can be used to setup a system with parilu_setup(). User is responsible for calling parilu_finalize_options() to free the memory allocated by this function.
- Returns:
-
parilu_handle *parilu_setup(const uint32_t nnz, const uint64_t *const row, const uint64_t *const col, const double *const val, const parilu_options *const options, const MPI_Comm comm)
Setup parilu. Returns a pointer to a newly allocated parilu_handle handle.
- Parameters:
nnz – Number of nonzeros in the matrix.
row – Global row index or number.
col – Global column index or number.
val – Values of the matrix. val[i] is the value of the matrix entry (row[i], col[i]).
options – Pointer to the parilu_options which stores the options.
comm – MPI communicator.
Structures
-
typedef struct parilu_options_t parilu_options
Store the options for parILU. This is a typedef for struct parilu_options_t.
-
typedef struct parilu_handle_t parilu_handle
parILU handle returned by parilu_setup(). This is a typedef of struct parilu_handle_t.
-
typedef struct parilu_matrix_t parilu_matrix
parILU matrix used to represent a sparse linear system. This is a typedef of struct parilu_matrix_t.
-
typedef struct parilu_matrix_operator_t parilu_matrix_operator
parILU matrix operator used to perform matrix-vector product. This is a typedef of struct parilu_matrix_operator_t.