fn_trace.hpp File Reference

Go to the source code of this file.

Functions

template<typename T1 >
T1::elem_type trace (const Base< typename T1::elem_type, T1 > &X)
 Immediate trace (sum of diagonal elements) of a square dense matrix.
template<typename T1 , typename T2 >
T1::elem_type trace (const Glue< T1, T2, glue_plus > &X)
 Immediate trace (sum of diagonal elements) of A + B. A and B must be square and have the same dimensions.
template<typename T1 , typename T2 >
T1::elem_type trace (const Glue< T1, T2, glue_minus > &X)
 Immediate trace (sum of diagonal elements) of A - B. A and B must be square and have the same dimensions.
template<typename T1 , typename T2 >
T1::elem_type trace (const Glue< T1, T2, glue_schur > &X)
 Immediate trace (sum of diagonal elements) of A % B (where % is the element-wise multiplication operator). A and B must be square and have the same dimensions.
template<typename T1 >
T1::elem_type trace (const Op< T1, op_scalar_times > &in)
 trace (sum of diagonal elements) of k * T1, where k is a scalar and T1 is converted to a dense matrix.
template<typename eT >
eT trace (const Op< Mat< eT >, op_diagmat > &X)
 trace (sum of diagonal elements) of a diagonal matrix
template<typename eT >
eT trace (const Op< Mat< eT >, op_diagmat_vec > &X)