Opm::AbstractISTLSolver< TypeTag > Class Template Referenceabstract Abstract interface for ISTL solvers. More...
Inheritance diagram for Opm::AbstractISTLSolver< TypeTag >:
![]()
Detailed Descriptiontemplate<class TypeTag> class Opm::AbstractISTLSolver< TypeTag > 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 TypeTag >
◆ Matrix
template<class TypeTag >
◆ SparseMatrixAdapter
template<class TypeTag >
◆ Vector
template<class TypeTag >
Constructor & Destructor Documentation◆ ~AbstractISTLSolver()
template<class TypeTag >
Member Function Documentation◆ checkConvergence()
template<class TypeTag >
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(). ◆ comm()
template<class TypeTag >
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 >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ eraseMatrix()
template<class TypeTag >
Signals that the memory for the matrix internally in the solver could be erased.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ getResidual()
template<class TypeTag >
Get the residual vector. This method retrieves the current residual vector from the solver.
Implemented in Opm::ISTLSolverGpuBridge< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ getSolveCount()
template<class TypeTag >
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 >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ iterations()
template<class TypeTag >
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 >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ numAvailableSolvers()
template<class TypeTag >
Get the number of available solvers.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ prepare() [1/2]
template<class TypeTag >
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.
Implemented in Opm::ISTLSolverGpuBridge< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ prepare() [2/2]
template<class TypeTag >
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.
Implemented in Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ setActiveSolver()
template<class TypeTag >
Set the active solver by its index.
Implemented in Opm::ISTLSolver< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ setMatrix()
template<class TypeTag >
Set the matrix for the solver. This method sets the matrix that the solver will use to solve the system of equations.
Implemented in Opm::ISTLSolverGpuBridge< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ setResidual()
template<class TypeTag >
Set the residual vector. This method sets the residual vector for the solver.
Implemented in Opm::ISTLSolverGpuBridge< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. ◆ solve()
template<class TypeTag >
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:
Implemented in Opm::ISTLSolverGpuBridge< TypeTag >, Opm::gpuistl::ISTLSolverGPUISTL< TypeTag >, Opm::ISTLSolver< TypeTag >, and Opm::ISTLSolverRuntimeOptionProxy< TypeTag >. The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||