"Identity solver" for linear systems. More...
#include <identity_solver.hpp>
Public Types | |
| using | OperatorType = OperatorT |
| Operator type to be solved. | |
| using | SolutionVectorType = SrcOf< OperatorType > |
| Solution vector type. | |
| using | RHSVectorType = DstOf< OperatorType > |
| Right-hand side vector type. | |
Public Member Functions | |
| void | solve_impl (OperatorType &A, SolutionVectorType &x, const RHSVectorType &b) |
| Solve the linear system by assigning the right-hand side to the solution. Implements \( x = b \). | |
"Identity solver" for linear systems.
Implements a "no-op" solve operation by directly assigning the right-hand side to the solution vector: \( x \gets b \). Satisfies the SolverLike concept (see solver.hpp). Can be used as a placeholder for "no preconditioner".
OperatorT is essentially ignored (does not need to be the identity operator).
| OperatorT | Operator type (must satisfy OperatorLike). |
| using terra::linalg::solvers::IdentitySolver< OperatorT >::OperatorType = OperatorT |
Operator type to be solved.
| using terra::linalg::solvers::IdentitySolver< OperatorT >::RHSVectorType = DstOf< OperatorType > |
Right-hand side vector type.
| using terra::linalg::solvers::IdentitySolver< OperatorT >::SolutionVectorType = SrcOf< OperatorType > |
Solution vector type.
|
inline |
Solve the linear system by assigning the right-hand side to the solution. Implements \( x = b \).
| A | Operator (matrix), unused. |
| x | Solution vector (output). |
| b | Right-hand side vector (input). |