Template Function Pennylane::LightningQubit::Util::CFTranspose(const T *, T *, std::size_t, std::size_t, std::size_t, std::size_t, std::size_t, std::size_t)¶
Defined in File LinearAlgebra.hpp
Function Documentation¶
-
template<class T, std::size_t BLOCKSIZE = 16>
static inline void Pennylane::LightningQubit::Util::CFTranspose(const T *mat, T *mat_t, std::size_t m, std::size_t n, std::size_t m1, std::size_t m2, std::size_t n1, std::size_t n2)¶ Calculates transpose of a matrix recursively and Cache-Friendly using blocking and Cache-optimized techniques.
- Template Parameters
T – Floating point precision type.
BLOCKSIZE – Size of submatrices in the blocking technique.
- Parameters
mat – Data array repr. a flatten (row-wise) matrix m * n.
mat_t – Pre-allocated data array to store the transpose of
mat
.m – Number of rows of
mat
.n – Number of columns of
mat
.m1 – Index of the first row.
m2 – Index of the last row.
n1 – Index of the first column.
n2 – Index of the last column.
api/function_LinearAlgebra_8hpp_1a3f685285cd0b04a98aad74542848ddec
Download Python script
Download Notebook
View on GitHub