Blaze  3.6
Classes

Classes

class  blaze::StaticMatrix< Type, M, N, SO >
 Efficient implementation of a fixed-sized matrix.The StaticMatrix class template is the representation of a fixed-size matrix with statically allocated elements of arbitrary type. The type of the elements, the number of rows and columns and the storage order of the matrix can be specified via the four template parameters: More...
 

StaticMatrix operators

template<typename Type , size_t M, size_t N, bool SO>
void blaze::reset (StaticMatrix< Type, M, N, SO > &m)
 Resetting the given static matrix. More...
 
template<typename Type , size_t M, size_t N, bool SO>
void blaze::reset (StaticMatrix< Type, M, N, SO > &m, size_t i)
 Reset the specified row/column of the given static matrix. More...
 
template<typename Type , size_t M, size_t N, bool SO>
void blaze::clear (StaticMatrix< Type, M, N, SO > &m)
 Clearing the given static matrix. More...
 
template<typename Type , size_t M, size_t N, bool SO>
bool blaze::isIntact (const StaticMatrix< Type, M, N, SO > &m) noexcept
 Returns whether the invariants of the given static matrix are intact. More...
 
template<typename Type , size_t M, size_t N, bool SO>
void blaze::swap (StaticMatrix< Type, M, N, SO > &a, StaticMatrix< Type, M, N, SO > &b) noexcept
 Swapping the contents of two static matrices. More...
 
template<bool RF, typename Type , size_t M, size_t N, bool SO>
bool blaze::isDefault (const StaticMatrix< Type, M, N, SO > &m)
 Returns whether the given dynamic matrix is in default state. More...
 

Detailed Description

Function Documentation

◆ clear()

template<typename Type , size_t M, size_t N, bool SO>
void blaze::clear ( StaticMatrix< Type, M, N, SO > &  m)
inline

Clearing the given static matrix.

Parameters
mThe matrix to be cleared.
Returns
void

Clearing a static matrix is equivalent to resetting it via the reset() function.

◆ isDefault()

template<bool RF, typename Type , size_t M, size_t N, bool SO>
bool blaze::isDefault ( const StaticMatrix< Type, M, N, SO > &  m)
inline

Returns whether the given dynamic 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 static matrix is in default (constructed) state. 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:

// ... Initialization
if( isDefault( A ) ) { ... }

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

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

◆ isIntact()

template<typename Type , size_t M, size_t N, bool SO>
bool blaze::isIntact ( const StaticMatrix< Type, M, N, SO > &  m)
inlinenoexcept

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

Parameters
mThe static 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 static 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:

// ... Initialization
if( isIntact( A ) ) { ... }

◆ reset() [1/2]

template<typename Type , size_t M, size_t N, bool SO>
void blaze::reset ( StaticMatrix< Type, M, N, SO > &  m)
inline

Resetting the given static matrix.

Parameters
mThe matrix to be resetted.
Returns
void

◆ reset() [2/2]

template<typename Type , size_t M, size_t N, bool SO>
void blaze::reset ( StaticMatrix< Type, M, N, SO > &  m,
size_t  i 
)
inline

Reset the specified row/column of the given static matrix.

Parameters
mThe matrix to be resetted.
iThe index of the row/column to be resetted.
Returns
void

This function resets the values in the specified row/column of the given static matrix to their default value. In case the given matrix is a rowMajor matrix the function resets the values in row i, if it is a columnMajor matrix the function resets the values in column i. Note that the capacity of the row/column remains unchanged.

◆ swap()

template<typename Type , size_t M, size_t N, bool SO>
void blaze::swap ( StaticMatrix< Type, M, N, SO > &  a,
StaticMatrix< Type, M, N, SO > &  b 
)
inlinenoexcept

Swapping the contents of two static matrices.

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