The batch Identity matrix, which represents a batch of Identity matrices. More...
#include <ginkgo/core/matrix/batch_identity.hpp>
Public Types | |
| using | value_type = ValueType |
| using | index_type = int32 |
| using | unbatch_type = gko::matrix::Identity<ValueType> |
| using | absolute_type = remove_complex<Identity> |
| using | complex_type = to_complex<Identity> |
Public Types inherited from gko::EnablePolymorphicAssignment< Identity< default_precision > > | |
| using | result_type |
Public Types inherited from gko::ConvertibleTo< Identity< default_precision > > | |
| using | result_type |
Public Member Functions | |
| Identity * | apply (ptr_param< const MultiVector< value_type > > b, ptr_param< MultiVector< value_type > > x) |
| Apply the matrix to a multi-vector. | |
| Identity * | apply (ptr_param< const MultiVector< value_type > > alpha, ptr_param< const MultiVector< value_type > > b, ptr_param< const MultiVector< value_type > > beta, ptr_param< MultiVector< value_type > > x) |
| Apply the matrix to a multi-vector with a linear combination of the given input vector. | |
| const Identity * | apply (ptr_param< const MultiVector< value_type > > b, ptr_param< MultiVector< value_type > > x) const |
| const Identity * | apply (ptr_param< const MultiVector< value_type > > alpha, ptr_param< const MultiVector< value_type > > b, ptr_param< const MultiVector< value_type > > beta, ptr_param< MultiVector< value_type > > x) const |
Public Member Functions inherited from gko::EnableAbstractPolymorphicObject< Identity< default_precision >, BatchLinOp > | |
| std::unique_ptr< Identity< default_precision > > | create_default (std::shared_ptr< const Executor > exec) const |
| std::unique_ptr< Identity< default_precision > > | create_default () const |
| std::unique_ptr< Identity< default_precision > > | clone (std::shared_ptr< const Executor > exec) const |
| std::unique_ptr< Identity< default_precision > > | clone () const |
| Identity< default_precision > * | copy_from (const PolymorphicObject *other) |
| std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, Identity< default_precision > > * | copy_from (std::unique_ptr< Derived > &&other) |
| std::enable_if_t< std::is_base_of< PolymorphicObject, std::decay_t< Derived > >::value, Identity< default_precision > > * | copy_from (const std::unique_ptr< Derived > &other) |
| Identity< default_precision > * | copy_from (const std::shared_ptr< const PolymorphicObject > &other) |
| Identity< default_precision > * | move_from (ptr_param< PolymorphicObject > other) |
| Identity< default_precision > * | clear () |
Public Member Functions inherited from gko::EnablePolymorphicAssignment< Identity< default_precision > > | |
| void | convert_to (result_type *result) const override |
| void | move_to (result_type *result) override |
Public Member Functions inherited from gko::ConvertibleTo< Identity< default_precision > > | |
| void | convert_to (ptr_param< result_type > result) const |
| void | move_to (ptr_param< result_type > result) |
Static Public Member Functions | |
| static std::unique_ptr< Identity > | create (std::shared_ptr< const Executor > exec, const batch_dim< 2 > &size=batch_dim< 2 >{}) |
| Creates an Identity matrix of the specified size. | |
Friends | |
| class | EnablePolymorphicObject< Identity, BatchLinOp > |
The batch Identity matrix, which represents a batch of Identity matrices.
| ValueType | precision of matrix elements |
| Identity * gko::batch::matrix::Identity< ValueType >::apply | ( | ptr_param< const MultiVector< value_type > > | alpha, |
| ptr_param< const MultiVector< value_type > > | b, | ||
| ptr_param< const MultiVector< value_type > > | beta, | ||
| ptr_param< MultiVector< value_type > > | x ) |
Apply the matrix to a multi-vector with a linear combination of the given input vector.
Represents the matrix vector multiplication, x = alpha * I
| alpha | the scalar to scale the matrix-vector product with |
| b | the multi-vector to be applied to |
| beta | the scalar to scale the x vector with |
| x | the output multi-vector |
| const Identity * gko::batch::matrix::Identity< ValueType >::apply | ( | ptr_param< const MultiVector< value_type > > | alpha, |
| ptr_param< const MultiVector< value_type > > | b, | ||
| ptr_param< const MultiVector< value_type > > | beta, | ||
| ptr_param< MultiVector< value_type > > | x ) const |
| Identity * gko::batch::matrix::Identity< ValueType >::apply | ( | ptr_param< const MultiVector< value_type > > | b, |
| ptr_param< MultiVector< value_type > > | x ) |
Apply the matrix to a multi-vector.
Represents the matrix vector multiplication, x = I * b, where x and b are both multi-vectors.
| b | the multi-vector to be applied to |
| x | the output multi-vector |
| const Identity * gko::batch::matrix::Identity< ValueType >::apply | ( | ptr_param< const MultiVector< value_type > > | b, |
| ptr_param< MultiVector< value_type > > | x ) const |
|
static |