![]() |
deal.II version GIT relicensing-7058-gb35ee29762 2026-11-11 09:30:01+00:00
|
Attach wrapper functions to SUNDIALS' linear solver interface. We pretend that the user-supplied linear solver is matrix-free, even though it can be matrix-based. This way SUNDIALS does not need to understand our matrix types.
Definition at line 235 of file sunlinsol_wrapper.h.
Public Member Functions | |
| LinearSolverWrapper (const LinearSolveFunction< VectorType > &lsolve, std::exception_ptr &pending_exception, SUNContext linsol_ctx) | |
| ~LinearSolverWrapper () | |
| LinearSolverWrapper (const LinearSolverWrapper &)=delete | |
| LinearSolverWrapper & | operator= (const LinearSolverWrapper &)=delete |
| LinearSolverWrapper (LinearSolverWrapper &&other) noexcept | |
| LinearSolverWrapper & | operator= (LinearSolverWrapper &&other) noexcept |
| operator SUNLinearSolver () const | |
Private Attributes | |
| SUNLinearSolver | sun_linear_solver |
| std::unique_ptr< LinearSolverContent< VectorType > > | content |
|
explicit |
| SUNDIALS::internal::LinearSolverWrapper< VectorType >::~LinearSolverWrapper | ( | ) |
Destructor. Frees the SUNLinearSolver object.
|
delete |
The object owns the SUNLinearSolver and can therefore not be copied. It can be moved: the SUNLinearSolver and its content live on the heap, so the pointers that SUNDIALS holds stay valid after the move.
|
noexcept |
|
delete |
|
noexcept |
| SUNDIALS::internal::LinearSolverWrapper< VectorType >::operator SUNLinearSolver | ( | ) | const |
Implicit conversion to SUNLinearSolver.
|
private |
Definition at line 271 of file sunlinsol_wrapper.h.
|
private |
Definition at line 272 of file sunlinsol_wrapper.h.