transpose.h
TILEDARRAY_FORCE_INLINE void for_each_block(Op &&op, Result *const result, const Args *const ... args)
Definition: vector_op.h:162
static TILEDARRAY_FORCE_INLINE void block_scatter(Op &&op, Result *const result, const Result *const arg, const std::size_t result_stride)
Definition: transpose.h:94
void scatter_to(T *const data, std::size_t stride) const
Definition: vector_op.h:279
static constexpr std::size_t offset
Definition: transpose.h:73
TransposeUnwind< N - 1 > TransposeUnwindN1
Definition: transpose.h:71
static TILEDARRAY_FORCE_INLINE void gather_trans(Op &&op, Result *MADNESS_RESTRICT const result, const std::size_t arg_stride, const Args *MADNESS_RESTRICT const ... args)
Definition: transpose.h:47
TILEDARRAY_FORCE_INLINE std::enable_if<(sizeof...(Args) >=0)>::type for_each_block_ptr(Op &&op, Result *const result, const Args *const ... args)
Definition: vector_op.h:182
static TILEDARRAY_FORCE_INLINE void gather_trans(Op &&op, Result *MADNESS_RESTRICT const result, const std::size_t arg_stride, const Args *MADNESS_RESTRICT const ... args)
Definition: transpose.h:76
void transpose(InputOp &&input_op, OutputOp &&output_op, const std::size_t m, const std::size_t n, const std::size_t result_stride, Result *result, const std::size_t arg_stride, const Args *const ... args)
Matrix transpose and initialization.
Definition: transpose.h:178
Definition: array_impl.cpp:28
TransposeUnwind< TILEDARRAY_LOOP_UNWIND - 1 > TransposeUnwindN
Definition: transpose.h:106
TILEDARRAY_FORCE_INLINE void transpose_block(InputOp &&input_op, OutputOp &&output_op, const std::size_t result_stride, Result *const result, const std::size_t arg_stride, const Args *const ... args)
Definition: transpose.h:110
std::integral_constant< std::size_t, ~std::size_t(TILEDARRAY_LOOP_UNWIND - 1ul)> index_mask
Definition: vector_op.h:54
static TILEDARRAY_FORCE_INLINE void block_scatter(Op &&op, Result *const result, const Result *const arg, const std::size_t)
Definition: transpose.h:60
Definition: vector_op.h:263
Partial transpose algorithm automatic loop unwinding.
Definition: transpose.h:69