![]() |
deal.II version GIT relicensing-6834-g5b78e6bcdf 2026-10-01 11:20:01+00:00
|
#include <deal.II/matrix_free/portable_matrix_free.h>
A block vector used for source and destination vectors in device functions like MatrixFree::cell_loop().
The maximum number of block is limited by the constant n_max_dof_handlers.
Definition at line 95 of file portable_matrix_free.h.
Public Member Functions | |
| DeviceBlockVector () | |
| DeviceBlockVector (const DeviceBlockVector &other)=default | |
| DeviceBlockVector (const DeviceVector< Number > &src) | |
| template<typename MemorySpace > | |
| DeviceBlockVector (const LinearAlgebra::distributed::BlockVector< Number, MemorySpace > &src) | |
| DeviceVector< Number > & | block (unsigned int index) |
| const DeviceVector< Number > & | block (unsigned int index) const |
Private Attributes | |
| unsigned int | n_blocks |
| Kokkos::Array< DeviceVector< Number >, n_max_dof_handlers > | blocks |
|
inline |
Constructor.
Definition at line 101 of file portable_matrix_free.h.
|
default |
Constructor.
|
inlineexplicit |
Constructor from a DeviceVector. Creates a DeviceBlockVector with a single block.
Definition at line 114 of file portable_matrix_free.h.
|
inline |
Constructor from a LinearAlgebra::distributed::BlockVector. Creates a DeviceVector from each block and stores it.
Definition at line 124 of file portable_matrix_free.h.
|
inline |
Access block index.
Definition at line 144 of file portable_matrix_free.h.
|
inline |
Access block index.
Definition at line 154 of file portable_matrix_free.h.
|
private |
The number of components / blocks
Definition at line 164 of file portable_matrix_free.h.
|
private |
Storage for the blocks
Definition at line 169 of file portable_matrix_free.h.