Loading...
Searching...
No Matches
Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar > Class Template Referenceabstract
Inheritance diagram for Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar >:

## Public Member Functions

virtual void | apply (const ApplyScalar &y, ApplyScalar &x, WellContributions< Scalar > &wellContribs)=0
virtual bool | analyze_matrix (BlockedMatrix< Scalar > *mat)=0
virtual bool | analyze_matrix (BlockedMatrix< Scalar > *mat, BlockedMatrix< Scalar > *jacMat)=0
virtual bool | create_preconditioner (BlockedMatrix< Scalar > *mat)=0
virtual bool | create_preconditioner (BlockedMatrix< Scalar > *mat, BlockedMatrix< Scalar > *jacMat)=0

## Static Public Member Functions

static std::unique_ptr< Preconditioner > | create (PreconditionerType type, bool opencl_ilu_parallel, int verbosity)

## Protected Member Functions

| Preconditioner (int verbosity_)

## Protected Attributes

int | N = 0
int | Nb = 0
int | nnz = 0
int | nnzb = 0
int | verbosity = 0

## Member Function Documentation

## analyze_matrix() [1/2]

template<class Scalar, unsigned int block_size, class ApplyScalar = Scalar>

virtual bool Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar >::analyze_matrix | ( | BlockedMatrix< Scalar > * | mat | ) |

pure virtual

Implemented in Opm::Accelerator::rocsparseBILU0< Scalar, block_size >, and Opm::Accelerator::rocsparseCPR< Scalar, block_size >.

## analyze_matrix() [2/2]

template<class Scalar, unsigned int block_size, class ApplyScalar = Scalar>

virtual bool Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar >::analyze_matrix | ( | BlockedMatrix< Scalar > * | mat,
|  | BlockedMatrix< Scalar > * | jacMat )

pure virtual

Implemented in Opm::Accelerator::rocsparseBILU0< Scalar, block_size >, and Opm::Accelerator::rocsparseCPR< Scalar, block_size >.

## create_preconditioner() [1/2]

template<class Scalar, unsigned int block_size, class ApplyScalar = Scalar>

virtual bool Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar >::create_preconditioner | ( | BlockedMatrix< Scalar > * | mat | ) |

pure virtual

Implemented in Opm::Accelerator::rocsparseBILU0< Scalar, block_size >, and Opm::Accelerator::rocsparseCPR< Scalar, block_size >.

## create_preconditioner() [2/2]

template<class Scalar, unsigned int block_size, class ApplyScalar = Scalar>

virtual bool Opm::Accelerator::Preconditioner< Scalar, block_size, ApplyScalar >::create_preconditioner | ( | BlockedMatrix< Scalar > * | mat,
|  | BlockedMatrix< Scalar > * | jacMat )

pure virtual

Implemented in Opm::Accelerator::rocsparseBILU0< Scalar, block_size >, and Opm::Accelerator::rocsparseCPR< Scalar, block_size >.

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

- opm/simulators/linalg/gpubridge/Preconditioner.hpp