|
Ginkgo
Generated from pipelines/1330831941 branch based on master. Ginkgo version 1.8.0
A numerical linear algebra library targeting many-core architectures
|
5 #ifndef GKO_PUBLIC_CORE_SOLVER_BATCH_CG_HPP_
6 #define GKO_PUBLIC_CORE_SOLVER_BATCH_CG_HPP_
12 #include <ginkgo/core/base/batch_lin_op.hpp>
13 #include <ginkgo/core/base/batch_multi_vector.hpp>
14 #include <ginkgo/core/base/exception_helpers.hpp>
15 #include <ginkgo/core/base/lin_op.hpp>
16 #include <ginkgo/core/base/types.hpp>
17 #include <ginkgo/core/solver/batch_solver_base.hpp>
18 #include <ginkgo/core/stop/batch_stop_enum.hpp>
50 template <
typename ValueType = default_precision>
56 using value_type = ValueType;
63 parameters_type, Factory> {};
68 explicit Cg(std::shared_ptr<const Executor> exec);
71 std::shared_ptr<const BatchLinOp> system_matrix);
75 log::detail::log_data<real_type>* log_data)
const override;
84 #endif // GKO_PUBLIC_CORE_SOLVER_BATCH_CG_HPP_
The EnableBatchLinOp mixin can be used to provide sensible default implementations of the majority of...
Definition: batch_lin_op.hpp:251
Definition: batch_lin_op.hpp:60
Definition: batch_cg.hpp:61
MultiVector stores multiple vectors in a batched fashion and is useful for batched operations.
Definition: batch_multi_vector.hpp:53
This mixin provides apply and common iterative solver functionality to all the batched solvers.
Definition: batch_solver_base.hpp:204
The Ginkgo namespace.
Definition: abstract_factory.hpp:20
Definition: batch_solver_base.hpp:153
#define GKO_ENABLE_BUILD_METHOD(_factory_name)
Defines a build method for the factory, simplifying its construction by removing the repetitive typin...
Definition: abstract_factory.hpp:394
Cg or the Conjugate Gradient is a Krylov subspace solver.
Definition: batch_cg.hpp:51
#define GKO_ENABLE_BATCH_LIN_OP_FACTORY(_batch_lin_op, _parameters_name, _factory_name)
This macro will generate a default implementation of a BatchLinOpFactory for the BatchLinOp subclass ...
Definition: batch_lin_op.hpp:359
Definition: batch_cg.hpp:64
typename detail::remove_complex_s< T >::type remove_complex
Obtain the type which removed the complex of complex/scalar type or the template parameter of class b...
Definition: math.hpp:326
This mixin inherits from (a subclass of) PolymorphicObject and provides a base implementation of a ne...
Definition: polymorphic_object.hpp:662