My Project
Loading...
Searching...
No Matches
Opm::Accelerator::openclPreconditioner< Scalar, block_size > Class Template Referenceabstract
Inheritance diagram for Opm::Accelerator::openclPreconditioner< Scalar, block_size >:
Opm::Accelerator::Preconditioner< Scalar, block_size > Opm::Accelerator::openclBILU0< Scalar, block_size > Opm::Accelerator::openclBISAI< Scalar, block_size > Opm::Accelerator::openclCPR< Scalar, block_size >

Public Member Functions

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 create_preconditioner (BlockedMatrix< Scalar > *mat)=0
 
virtual bool create_preconditioner (BlockedMatrix< Scalar > *mat, BlockedMatrix< Scalar > *jacMat)=0
 
- Public Member Functions inherited from Opm::Accelerator::Preconditioner< Scalar, block_size >
virtual void apply (Scalar &y, Scalar &x)=0
 
virtual bool analyze_matrix (BlockedMatrix< Scalar > *mat)=0
 
virtual bool analyze_matrix (BlockedMatrix< Scalar > *mat, BlockedMatrix< Scalar > *jacMat)=0
 

Static Public Member Functions

static std::unique_ptr< openclPreconditioner< Scalar, block_size > > create (PreconditionerType type, int verbosity, bool opencl_ilu_parallel)
 
- Static Public Member Functions inherited from Opm::Accelerator::Preconditioner< Scalar, block_size >
static std::unique_ptr< Preconditionercreate (PreconditionerType type, bool opencl_ilu_parallel, int verbosity)
 

Protected Member Functions

 openclPreconditioner (int verbosity_)
 
- Protected Member Functions inherited from Opm::Accelerator::Preconditioner< Scalar, block_size >
 Preconditioner (int verbosity_)
 

Protected Attributes

std::shared_ptr< cl::Context > context
 
std::shared_ptr< cl::CommandQueue > queue
 
std::vector< cl::Event > events
 
cl_int err
 
- Protected Attributes inherited from Opm::Accelerator::Preconditioner< Scalar, block_size >
int N = 0
 
int Nb = 0
 
int nnz = 0
 
int nnzb = 0
 
int verbosity = 0
 

Member Function Documentation

◆ create_preconditioner() [1/2]

template<class Scalar , unsigned int block_size>
virtual bool Opm::Accelerator::openclPreconditioner< Scalar, block_size >::create_preconditioner ( BlockedMatrix< Scalar > * mat)
pure virtual

◆ create_preconditioner() [2/2]

template<class Scalar , unsigned int block_size>
virtual bool Opm::Accelerator::openclPreconditioner< Scalar, block_size >::create_preconditioner ( BlockedMatrix< Scalar > * mat,
BlockedMatrix< Scalar > * jacMat )
pure virtual

The documentation for this class was generated from the following files: