|
My Project
|
This class implements a Blocked version of the Incomplete Sparse Approximate Inverse (ISAI) preconditioner. More...
#include <BISAI.hpp>
Public Member Functions | |
| BISAI (bool opencl_ilu_parallel, int verbosity) | |
| void | setOpencl (std::shared_ptr< cl::Context > &context, std::shared_ptr< cl::CommandQueue > &queue) override |
| bool | analyze_matrix (BlockedMatrix *mat) override |
| bool | analyze_matrix (BlockedMatrix *mat, BlockedMatrix *jacMat) override |
| bool | create_preconditioner (BlockedMatrix *mat) override |
| bool | create_preconditioner (BlockedMatrix *mat, BlockedMatrix *jacMat) override |
| void | apply (const cl::Buffer &y, cl::Buffer &x) override |
Additional Inherited Members | |
Public Types inherited from Opm::Accelerator::Preconditioner< block_size > | |
| enum | PreconditionerType { BILU0 , CPR , BISAI } |
Static Public Member Functions inherited from Opm::Accelerator::Preconditioner< block_size > | |
| static std::unique_ptr< Preconditioner > | create (PreconditionerType type, int verbosity, bool opencl_ilu_parallel) |
Protected Member Functions inherited from Opm::Accelerator::Preconditioner< block_size > | |
| Preconditioner (int verbosity_) | |
Protected Attributes inherited from Opm::Accelerator::Preconditioner< block_size > | |
| int | N = 0 |
| int | Nb = 0 |
| int | nnz = 0 |
| int | nnzb = 0 |
| int | verbosity = 0 |
| std::shared_ptr< cl::Context > | context |
| std::shared_ptr< cl::CommandQueue > | queue |
| std::vector< cl::Event > | events |
| cl_int | err |
This class implements a Blocked version of the Incomplete Sparse Approximate Inverse (ISAI) preconditioner.
Inspired by the paper "Incomplete Sparse Approximate Inverses for Parallel Preconditioning" by Anzt et. al.
|
overridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.
|
overridevirtual |
Reimplemented from Opm::Accelerator::Preconditioner< block_size >.
|
overridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.
|
overridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.
|
overridevirtual |
Reimplemented from Opm::Accelerator::Preconditioner< block_size >.
|
overridevirtual |
Reimplemented from Opm::Accelerator::Preconditioner< block_size >.