|
Opm::AbstractISTLSolver< SparseMatrixAdapter, Vector > Class Template Referenceabstract Abstract interface for ISTL solvers. More...
Inheritance diagram for Opm::AbstractISTLSolver< SparseMatrixAdapter, Vector >:
![]()
Detailed Descriptiontemplate<class SparseMatrixAdapter, class Vector> class Opm::AbstractISTLSolver< SparseMatrixAdapter, Vector > Abstract interface for ISTL solvers. This class defines the interface for ISTL solvers used in OPM. It provides methods for preparing the solver, setting and getting residuals, solving the system, and managing communication.
Member Typedef Documentation◆ CommunicationType
template<class SparseMatrixAdapter , class Vector >
◆ Matrix
template<class SparseMatrixAdapter , class Vector >
Constructor & Destructor Documentation◆ ~AbstractISTLSolver()
template<class SparseMatrixAdapter , class Vector >
Member Function Documentation◆ checkConvergence()
template<class SparseMatrixAdapter , class Vector >
Check the convergence of the linear solver. This method checks if the linear solver has converged based on the result and parameters.
References Opm::FlowLinearSolverParameters::ignoreConvergenceFailure_, and Opm::FlowLinearSolverParameters::relaxed_linear_solver_reduction_. Referenced by Opm::ISTLSolver< TypeTag >::checkConvergence(), and Opm::ISTLSolverTPSA< TypeTag >::checkConvergence(). ◆ comm()
template<class SparseMatrixAdapter , class Vector >
Get the communication object used by the solver. This method returns a pointer to the communication object used by the solver.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ eraseMatrix()
template<class SparseMatrixAdapter , class Vector >
Signals that the memory for the matrix internally in the solver could be erased.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ getResidual()
template<class SparseMatrixAdapter , class Vector >
Get the residual vector. This method retrieves the current residual vector from the solver.
◆ getSolveCount()
template<class SparseMatrixAdapter , class Vector >
Get the count of how many times the solver has been called. This method returns the number of times the solve() method has been called.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ iterations()
template<class SparseMatrixAdapter , class Vector >
Get the number of iterations used in the last solve. This method returns the number of iterations that the solver performed during the last call to solve().
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ numAvailableSolvers()
template<class SparseMatrixAdapter , class Vector >
Get the number of available solvers.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ prepare() [1/2]
template<class SparseMatrixAdapter , class Vector >
Prepare the solver with the given matrix and right-hand side vector. This method initializes the solver with the provided matrix and vector, preparing it for solving the system of equations.
◆ prepare() [2/2]
template<class SparseMatrixAdapter , class Vector >
Prepare the solver with the given sparse matrix and right-hand side vector. This method initializes the solver with the provided sparse matrix and vector, preparing it for solving the system of equations.
◆ setActiveSolver()
template<class SparseMatrixAdapter , class Vector >
Set the active solver by its index.
Implemented in Opm::ISTLSolver< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolverRuntimeOptionProxy< TypeTag >, and Opm::ISTLSolverTPSA< TypeTag >. ◆ setMatrix()
template<class SparseMatrixAdapter , class Vector >
Set the matrix for the solver. This method sets the matrix that the solver will use to solve the system of equations.
◆ setResidual()
template<class SparseMatrixAdapter , class Vector >
Set the residual vector. This method sets the residual vector for the solver.
◆ solve()
template<class SparseMatrixAdapter , class Vector >
Solve the system of equations Ax = b. This method solves the linear system represented by the matrix A and the right-hand side vector b, storing the solution in vector x.
Before this function is called, the following function calls should have been made:
The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||