Reference documentation for deal.II version 9.5.0
|
#include <deal.II/lac/ginkgo_solver.h>
Classes | |
struct | AdditionalData |
Public Member Functions | |
SolverBicgstab (SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData()) | |
SolverBicgstab (SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData()) | |
void | initialize (const SparseMatrix< ValueType > &matrix) |
void | apply (Vector< ValueType > &solution, const Vector< ValueType > &rhs) |
void | solve (const SparseMatrix< ValueType > &matrix, Vector< ValueType > &solution, const Vector< ValueType > &rhs) |
SolverControl & | control () const |
Protected Attributes | |
const AdditionalData | additional_data |
SolverControl & | solver_control |
std::shared_ptr< gko::LinOpFactory > | solver_gen |
std::shared_ptr< gko::stop::ResidualNormReduction<>::Factory > | residual_criterion |
std::shared_ptr< gko::log::Convergence<> > | convergence_logger |
std::shared_ptr< gko::stop::Combined::Factory > | combined_factory |
std::shared_ptr< gko::Executor > | executor |
Private Member Functions | |
void | initialize_ginkgo_log () |
Private Attributes | |
std::shared_ptr< gko::matrix::Csr< ValueType, IndexType > > | system_matrix |
const std::string | exec_type |
An implementation of the solver interface using the Ginkgo Bicgstab solver.
Definition at line 271 of file ginkgo_solver.h.
SolverBicgstab< ValueType, IndexType >::SolverBicgstab | ( | SolverControl & | solver_control, |
const std::string & | exec_type, | ||
const AdditionalData & | data = AdditionalData() |
||
) |
Constructor.
[in,out] | solver_control | The solver control object is then used to set the parameters and set up the Bicgstab solver from the Bicgstab factory which solves the linear system. |
[in] | exec_type | The execution paradigm for the Bicgstab solver. |
[in] | data | The additional data required by the solver. |
Definition at line 337 of file ginkgo_solver.cc.
SolverBicgstab< ValueType, IndexType >::SolverBicgstab | ( | SolverControl & | solver_control, |
const std::string & | exec_type, | ||
const std::shared_ptr< gko::LinOpFactory > & | preconditioner, | ||
const AdditionalData & | data = AdditionalData() |
||
) |
Constructor.
[in,out] | solver_control | The solver control object is then used to set the parameters and set up the Bicgstab solver from the Bicgstab factory which solves the linear system. |
[in] | exec_type | The execution paradigm for the Bicgstab solver. |
[in] | preconditioner | The preconditioner for the solver. |
[in] | data | The additional data required by the solver. |
Definition at line 353 of file ginkgo_solver.cc.
|
inherited |
Initialize the matrix and copy over its data to Ginkgo's data structures.
Definition at line 218 of file ginkgo_solver.cc.
|
inherited |
Solve the linear system Ax=b
. Dependent on the information provided by derived classes one of Ginkgo's linear solvers is chosen.
Definition at line 88 of file ginkgo_solver.cc.
|
inherited |
Solve the linear system Ax=b
. Dependent on the information provided by derived classes one of Ginkgo's linear solvers is chosen.
Definition at line 292 of file ginkgo_solver.cc.
|
inherited |
Access to the object that controls convergence.
Definition at line 209 of file ginkgo_solver.cc.
|
privateinherited |
Initialize the Ginkgo logger object with event masks. Refer to Ginkgo's logging event masks.
Definition at line 76 of file ginkgo_solver.cc.
|
protected |
Store a copy of the settings for this particular solver.
Definition at line 317 of file ginkgo_solver.h.
|
protectedinherited |
Reference to the object that controls convergence of the iterative solvers.
Definition at line 148 of file ginkgo_solver.h.
|
protectedinherited |
The Ginkgo generated solver factory object.
Definition at line 153 of file ginkgo_solver.h.
|
protectedinherited |
The residual criterion object that controls the reduction of the residual based on the tolerance set in the solver_control member.
Definition at line 160 of file ginkgo_solver.h.
|
protectedinherited |
The Ginkgo convergence logger used to check for convergence and other solver data if needed.
Definition at line 166 of file ginkgo_solver.h.
|
protectedinherited |
The Ginkgo combined factory object is used to create a combined stopping criterion to be passed to the solver.
Definition at line 172 of file ginkgo_solver.h.
|
protectedinherited |
The execution paradigm in Ginkgo. The choices are between gko::OmpExecutor
, gko::CudaExecutor
and gko::ReferenceExecutor
and more details can be found in Ginkgo's documentation.
Definition at line 179 of file ginkgo_solver.h.
|
privateinherited |
Ginkgo matrix data structure. First template parameter is for storing the array of the non-zeros of the matrix. The second is for the row pointers and the column indices.
Definition at line 198 of file ginkgo_solver.h.
|
privateinherited |
The execution paradigm as a string to be set by the user. The choices are between omp
, cuda
and reference
and more details can be found in Ginkgo's documentation.
Definition at line 205 of file ginkgo_solver.h.