This class does not implement a solver, but converts the BCSR format to normal CSR and uses amgcl for solving Note amgcl also implements blocked solvers, but looks like it needs unblocked input data.
More...
|
| amgclSolverBackend (int linear_solver_verbosity, int maxit, Scalar tolerance, unsigned int platformID, unsigned int deviceID) |
| Construct an amgcl solver.
|
|
| ~amgclSolverBackend () override |
| Destroy a openclSolver, and free memory.
|
|
SolverStatus | solve_system (std::shared_ptr< BlockedMatrix< Scalar > > matrix, Scalar *b, std::shared_ptr< BlockedMatrix< Scalar > > jacMatrix, WellContributions< Scalar > &wellContribs, GpuResult &res) override |
| Solve linear system, A*x = b, matrix A must be in blocked-CSR format.
|
|
void | get_result (Scalar *x) override |
| Get result after linear solve, and peform postprocessing if necessary.
|
|
| GpuSolver (int linear_solver_verbosity, int max_it, Scalar tolerance_) |
| Construct a GpuSolver.
|
|
| GpuSolver (int linear_solver_verbosity, int max_it, Scalar tolerance_, unsigned int deviceID_) |
|
| GpuSolver (int linear_solver_verbosity, int max_it, double tolerance_, unsigned int platformID_, unsigned int deviceID_) |
|
virtual | ~GpuSolver ()=default |
| Define virtual destructor, so that the derivedclass destructor will be called.
|
|
template<
class Scalar,
unsigned int block_size>
class Opm::Accelerator::amgclSolverBackend< Scalar, block_size >
This class does not implement a solver, but converts the BCSR format to normal CSR and uses amgcl for solving Note amgcl also implements blocked solvers, but looks like it needs unblocked input data.