Blaze 3.9
Classes

Classes

class  blaze::IdentityMatrix< Type, SO, Tag >
 Efficient implementation of an $ N \times N $ identity matrix. More...
 

IdentityMatrix operators

template<RelaxationFlag RF, typename Type , bool SO, typename Tag >
constexpr bool blaze::isDefault (const IdentityMatrix< Type, SO, Tag > &m) noexcept
 Returns whether the given identity matrix is in default state. More...
 
template<typename Type , bool SO, typename Tag >
constexpr bool blaze::isIntact (const IdentityMatrix< Type, SO, Tag > &m) noexcept
 Returns whether the invariants of the given identity matrix are intact. More...
 
template<typename Type , bool SO, typename Tag >
constexpr void blaze::swap (IdentityMatrix< Type, SO, Tag > &a, IdentityMatrix< Type, SO, Tag > &b) noexcept
 Swapping the contents of two identity matrices. More...
 
template<typename MT , bool SO>
IdentityMatrix< ElementType_t< MT >, SO > blaze::declid (const Matrix< MT, SO > &m)
 Declares the given matrix expression m as identity matrix. More...
 

Detailed Description

Function Documentation

◆ declid()

template<typename MT , bool SO>
IdentityMatrix< ElementType_t< MT >, SO > blaze::declid ( const Matrix< MT, SO > &  m)
inline

Declares the given matrix expression m as identity matrix.

Parameters
mThe input matrix.
Returns
The redeclared matrix.
Exceptions
std::invalid_argumentInvalid identity matrix specification.

The declid function declares the given dense or sparse matrix expression m as identity matrix. In case the given matrix is not a square matrix, a std::invalid_argument exception is thrown.
The following example demonstrates the use of the declid function:

// ... Resizing and initialization
B = declid( A );
Efficient implementation of a compressed matrix.
Definition: CompressedMatrix.h:239
IdentityMatrix< ElementType_t< MT >, SO > declid(const Matrix< MT, SO > &m)
Declares the given matrix expression m as identity matrix.
Definition: IdentityMatrix.h:1285

◆ isDefault()

template<RelaxationFlag RF, typename Type , bool SO, typename Tag >
constexpr bool blaze::isDefault ( const IdentityMatrix< Type, SO, Tag > &  m)
constexprnoexcept

Returns whether the given identity matrix is in default state.

Parameters
mThe matrix to be tested for its default state.
Returns
true in case the given matrix's rows and columns are zero, false otherwise.

This function checks whether the identity matrix is in default (constructed) state, i.e. if it's number of rows and columns is 0. In case it is in default state, the function returns true, else it will return false. The following example demonstrates the use of the isDefault() function:

// ... Resizing and initialization
if( isDefault( I ) ) { ... }
Efficient implementation of an identity matrix.
Definition: IdentityMatrix.h:197
bool isDefault(const DiagonalMatrix< MT, SO, DF > &m)
Returns whether the given diagonal matrix is in default state.
Definition: DiagonalMatrix.h:169

Optionally, it is possible to switch between strict semantics (blaze::strict) and relaxed semantics (blaze::relaxed):

if( isDefault<relaxed>( I ) ) { ... }

◆ isIntact()

template<typename Type , bool SO, typename Tag >
constexpr bool blaze::isIntact ( const IdentityMatrix< Type, SO, Tag > &  m)
constexprnoexcept

Returns whether the invariants of the given identity matrix are intact.

Parameters
mThe identity matrix to be tested.
Returns
true in case the given matrix's invariants are intact, false otherwise.

This function checks whether the invariants of the identity matrix are intact, i.e. if its state is valid. In case the invariants are intact, the function returns true, else it will return false. The following example demonstrates the use of the isIntact() function:

// ... Resizing and initialization
if( isIntact( I ) ) { ... }
bool isIntact(const DiagonalMatrix< MT, SO, DF > &m)
Returns whether the invariants of the given diagonal matrix are intact.
Definition: DiagonalMatrix.h:207

◆ swap()

template<typename Type , bool SO, typename Tag >
constexpr void blaze::swap ( IdentityMatrix< Type, SO, Tag > &  a,
IdentityMatrix< Type, SO, Tag > &  b 
)
constexprnoexcept

Swapping the contents of two identity matrices.

Parameters
aThe first matrix to be swapped.
bThe second matrix to be swapped.
Returns
void