|
numerics 0.1.0
|
Dense row-major owning matrix. More...
#include <matrix.hpp>
Public Member Functions | |
| BasicMatrix () | |
| BasicMatrix (idx rows, idx cols) | |
| BasicMatrix (idx rows, idx cols, T val) | |
| ~BasicMatrix () | |
| BasicMatrix (const BasicMatrix &o) | |
| BasicMatrix (BasicMatrix &&o) noexcept | |
| BasicMatrix & | operator= (const BasicMatrix &o) |
| BasicMatrix & | operator= (BasicMatrix &&o) noexcept |
| constexpr idx | rows () const noexcept |
| constexpr idx | cols () const noexcept |
| constexpr idx | size () const noexcept |
| T * | data () |
| const T * | data () const |
| T & | operator() (idx i, idx j) |
| T | operator() (idx i, idx j) const |
| void | to_gpu () |
| void | to_cpu () |
| T * | gpu_data () |
| const T * | gpu_data () const |
| bool | on_gpu () const |
Dense row-major owning matrix.
Definition at line 17 of file matrix.hpp.
|
inline |
Definition at line 19 of file matrix.hpp.
|
inline |
Definition at line 24 of file matrix.hpp.
|
inline |
Definition at line 29 of file matrix.hpp.
References num::BasicMatrix< T >::size().
|
inline |
Definition at line 36 of file matrix.hpp.
References num::cuda::free().
|
inline |
Definition at line 44 of file matrix.hpp.
References num::BasicMatrix< T >::size().
|
inlinenoexcept |
Definition at line 51 of file matrix.hpp.
|
inlineconstexprnoexcept |
Definition at line 88 of file matrix.hpp.
Referenced by num::operators::DenseOp::apply(), num::cg(), num::operators::DenseOp::cols(), num::backends::lapack::eig_sym(), num::backends::omp::eig_sym(), num::backends::seq::eig_sym(), num::gauss_seidel(), num::gmres(), num::inverse_iteration(), num::jacobi(), num::lanczos(), num::lu_solve(), num::backends::blas::matmul(), num::backends::gpu::matmul(), num::backends::omp::matmul(), num::backends::seq::matmul(), num::backends::seq::matmul_blocked(), num::backends::seq::matmul_register_blocked(), num::backends::blas::matvec(), num::backends::gpu::matvec(), num::backends::omp::matvec(), num::backends::seq::matvec(), num::power_iteration(), num::backends::lapack::qr(), num::backends::seq::qr(), num::qr_solve(), num::rayleigh_iteration(), num::backends::lapack::svd(), num::backends::seq::svd(), num::svd_truncated(), num::kernel::dense::trsv_lower(), and num::kernel::dense::trsv_upper().
|
inline |
Definition at line 91 of file matrix.hpp.
Referenced by num::backends::lapack::eig_sym(), num::kernel::dense::ger(), num::backends::lapack::lu(), num::backends::blas::matadd(), num::backends::omp::matadd(), num::backends::seq::matadd(), num::backends::blas::matmul(), num::backends::omp::matmul(), num::backends::seq::matmul_blocked(), num::backends::seq::matmul_register_blocked(), num::backends::blas::matvec(), num::backends::seq::matvec(), num::backends::lapack::qr(), num::backends::lapack::svd(), num::kernel::dense::trsv_lower(), and num::kernel::dense::trsv_upper().
|
inline |
Definition at line 92 of file matrix.hpp.
|
inline |
Definition at line 116 of file matrix.hpp.
Referenced by num::backends::gpu::matmul(), and num::backends::gpu::matvec().
|
inline |
Definition at line 117 of file matrix.hpp.
|
inline |
Definition at line 118 of file matrix.hpp.
|
inline |
Definition at line 94 of file matrix.hpp.
|
inline |
Definition at line 95 of file matrix.hpp.
|
inlinenoexcept |
Definition at line 70 of file matrix.hpp.
References num::cuda::free().
|
inline |
Definition at line 60 of file matrix.hpp.
References num::BasicMatrix< T >::size().
|
inlineconstexprnoexcept |
Definition at line 87 of file matrix.hpp.
Referenced by num::operators::DenseOp::apply(), num::cg(), num::detail::dense_expm_pade6(), num::backends::lapack::eig_sym(), num::backends::omp::eig_sym(), num::backends::seq::eig_sym(), num::gauss_seidel(), num::gmres(), num::inverse_iteration(), num::jacobi(), num::lanczos(), num::backends::lapack::lu(), num::backends::seq::lu(), num::lu_det(), num::lu_inv(), num::lu_solve(), num::lu_solve(), num::backends::blas::matmul(), num::backends::gpu::matmul(), num::backends::omp::matmul(), num::backends::seq::matmul(), num::backends::seq::matmul_blocked(), num::backends::seq::matmul_register_blocked(), num::backends::blas::matvec(), num::backends::gpu::matvec(), num::backends::omp::matvec(), num::backends::seq::matvec(), num::kernel::subspace::mgs_orthogonalize(), num::power_iteration(), num::backends::lapack::qr(), num::backends::seq::qr(), num::qr_solve(), num::rayleigh_iteration(), num::operators::DenseOp::rows(), num::backends::lapack::svd(), num::backends::seq::svd(), num::svd_truncated(), num::kernel::dense::trsv_lower(), and num::kernel::dense::trsv_upper().
|
inlineconstexprnoexcept |
Definition at line 89 of file matrix.hpp.
Referenced by num::BasicMatrix< T >::BasicMatrix(), num::BasicMatrix< T >::BasicMatrix(), num::backends::blas::matadd(), num::backends::omp::matadd(), num::backends::seq::matadd(), num::BasicMatrix< T >::operator=(), num::BasicMatrix< T >::to_cpu(), and num::BasicMatrix< T >::to_gpu().
|
inline |
Definition at line 106 of file matrix.hpp.
References num::cuda::free(), num::BasicMatrix< T >::size(), and num::cuda::to_host().
|
inline |
Definition at line 97 of file matrix.hpp.
References num::cuda::alloc(), num::BasicMatrix< T >::size(), and num::cuda::to_device().