BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
fn_trans.hpp File Reference

Matrix transpose. More...

#include "cl_Matrix.hpp"
Include dependency graph for fn_trans.hpp:

Go to the source code of this file.

Namespaces

namespace  belfem
 USER GUIDES:

Functions

template<typename T>
auto belfem::trans (Matrix< T > &aMatrix) -> decltype(trans(aMatrix.matrix_data()))
template<typename T>
auto belfem::trans (const Matrix< T > &aMatrix) -> decltype(trans(aMatrix.matrix_data()))

Detailed Description

Matrix transpose.

This header dispatches directly, because Armadillo and Blaze expose the operation under different names (arma::strans and blaze::trans). The overload accepts a generic expression type, so a caller can transpose an unevaluated backend expression as well as a materialised Matrix.

The result is the plain transpose, never the conjugate transpose. For the real matrices BELFEM uses almost everywhere the two coincide; for the complex Matrix<T> instantiations the LAPACK wrappers accept, trans does not conjugate.