|
My Project
|
This class implements a Blocked ILU0 preconditioner The decomposition is done on CPU, and reorders the rows of the matrix. More...
#include <BILU0.hpp>
Public Member Functions | |
| BILU0 (ILUReorder opencl_ilu_reorder, int verbosity) | |
| 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 |
| int * | getToOrder () override |
| int * | getFromOrder () override |
| BlockedMatrix * | getRMat () override |
| BlockedMatrix * | getRJacMat () |
| std::tuple< std::vector< int >, std::vector< int >, std::vector< int > > | get_preconditioner_structure () |
| std::pair< cl::Buffer, cl::Buffer > | get_preconditioner_data () |
Public Member Functions inherited from Opm::Accelerator::Preconditioner< block_size > | |
| virtual void | setOpencl (std::shared_ptr< cl::Context > &context, std::shared_ptr< cl::CommandQueue > &queue) |
| virtual void | apply (const cl::Buffer &y, cl::Buffer &x)=0 |
| virtual bool | analyze_matrix (BlockedMatrix *mat)=0 |
| virtual bool | analyze_matrix (BlockedMatrix *mat, BlockedMatrix *jacMat) |
| virtual bool | create_preconditioner (BlockedMatrix *mat)=0 |
| virtual bool | create_preconditioner (BlockedMatrix *mat, BlockedMatrix *jacMat) |
| virtual int * | getToOrder ()=0 |
| virtual int * | getFromOrder ()=0 |
| virtual BlockedMatrix * | getRMat ()=0 |
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, ILUReorder opencl_ilu_reorder) |
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 ILU0 preconditioner The decomposition is done on CPU, and reorders the rows of the matrix.
|
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 >.
|
inlineoverridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.
|
inlineoverridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.
|
inlineoverridevirtual |
Implements Opm::Accelerator::Preconditioner< block_size >.