Template Function Pennylane::LightningQubit::Util::CFTranspose(const std::complex<T> *, std::complex<T> *, size_t, size_t, size_t, size_t, size_t, size_t)¶
Defined in File LinearAlgebra.hpp
Function Documentation¶
-
template<class T, size_t BLOCKSIZE = 16>
static inline void Pennylane::LightningQubit::Util::CFTranspose(const std::complex<T> *mat, std::complex<T> *mat_t, size_t m, size_t n, size_t m1, size_t m2, size_t n1, 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 techinque.
- 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_1a845caba533b06f13b343fa6d38f89031
Download Python script
Download Notebook
View on GitHub