Boost LA

Unary Matrix Operations

#include <boost/la/matrix_minus.hpp> 
#include <boost/la/matrix_determinant.hpp> 
#include <boost/la/matrix_inverse.hpp>

namespace
boost
    {
    namespace
    la
        {
        //*** Unary matrix operations ***
        
        //Only enabled if: is_matrix<A>::value
        template <class A>
        typename deduce_matrix<A>::type
        operator-( A const & a );        
        
        //Only enabled if:
        //  is_matrix<A>::value && matrix_traits<A>::rows==matrix_traits<A>::cols
        template <class A>
        matrix_traits<A>::scalar_type
        determinant( A const & a );        
        
        //Only enabled if:
        //  is_matrix<A>::value &&
        //  matrix_traits<A>::rows==matrix_traits<A>::cols
        
        template <class A>
        typename deduce_matrix<A>::type
        inverse( A const & a, matrix_traits<A>::scalar_type det );
        
        template <class A>
        typename deduce_matrix<A>::type
        inverse( A const & a );
        }
    }

See also: Boost LA | Synopsis