![]() |
Modules | |
Column | |
Row | |
Submatrix | |
Subvector | |
Functions | |
template<typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, ColumnExprTrait_< MT > > | blaze::column (Matrix< MT, SO > &matrix, size_t index) |
Creating a view on a specific column of the given matrix. More... | |
template<typename MT , bool SO> | |
const DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, ColumnExprTrait_< const MT > > | blaze::column (const Matrix< MT, SO > &matrix, size_t index) |
Creating a view on a specific column of the given constant matrix. More... | |
template<typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, ColumnExprTrait_< MT > > | blaze::column (Matrix< MT, SO > &&matrix, size_t index) |
Creating a view on a specific column of the given temporary matrix. More... | |
template<typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, RowExprTrait_< MT > > | blaze::row (Matrix< MT, SO > &matrix, size_t index) |
Creating a view on a specific row of the given matrix. More... | |
template<typename MT , bool SO> | |
const DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, RowExprTrait_< const MT > > | blaze::row (const Matrix< MT, SO > &matrix, size_t index) |
Creating a view on a specific row of the given constant matrix. More... | |
template<typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, RowExprTrait_< MT > > | blaze::row (Matrix< MT, SO > &&matrix, size_t index) |
Creating a view on a specific row of the given temporary matrix. More... | |
template<typename MT , bool SO> | |
SubmatrixExprTrait_< MT, unaligned > | blaze::submatrix (Matrix< MT, SO > &matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given matrix. More... | |
template<typename MT , bool SO> | |
const SubmatrixExprTrait_< const MT, unaligned > | blaze::submatrix (const Matrix< MT, SO > &matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given constant matrix. More... | |
template<typename MT , bool SO> | |
SubmatrixExprTrait_< MT, unaligned > | blaze::submatrix (Matrix< MT, SO > &&matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given temporary matrix. More... | |
template<bool AF, typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, SubmatrixExprTrait_< MT, AF > > | blaze::submatrix (Matrix< MT, SO > &matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given matrix. More... | |
template<bool AF, typename MT , bool SO> | |
const DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, SubmatrixExprTrait_< const MT, AF > > | blaze::submatrix (const Matrix< MT, SO > &matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given constant matrix. More... | |
template<bool AF, typename MT , bool SO> | |
DisableIf_< Or< IsComputation< MT >, IsTransExpr< MT > >, SubmatrixExprTrait_< MT, AF > > | blaze::submatrix (Matrix< MT, SO > &&matrix, size_t row, size_t column, size_t m, size_t n) |
Creating a view on a specific submatrix of the given temporary matrix. More... | |
template<typename VT , bool TF> | |
SubvectorExprTrait_< VT, unaligned > | blaze::subvector (Vector< VT, TF > &vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given vector. More... | |
template<typename VT , bool TF> | |
const SubvectorExprTrait_< const VT, unaligned > | blaze::subvector (const Vector< VT, TF > &vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given constant vector. More... | |
template<typename VT , bool TF> | |
SubvectorExprTrait_< VT, unaligned > | blaze::subvector (Vector< VT, TF > &&vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given temporary vector. More... | |
template<bool AF, typename VT , bool TF> | |
DisableIf_< Or< IsComputation< VT >, IsTransExpr< VT > >, SubvectorExprTrait_< VT, AF > > | blaze::subvector (Vector< VT, TF > &vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given vector. More... | |
template<bool AF, typename VT , bool TF> | |
const DisableIf_< Or< IsComputation< VT >, IsTransExpr< VT > >, SubvectorExprTrait_< const VT, AF > > | blaze::subvector (const Vector< VT, TF > &vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given constant vector. More... | |
template<bool AF, typename VT , bool TF> | |
DisableIf_< Or< IsComputation< VT >, IsTransExpr< VT > >, SubvectorExprTrait_< VT, AF > > | blaze::subvector (Vector< VT, TF > &&vector, size_t index, size_t size) |
Creating a view on a specific subvector of the given temporary vector. More... | |
|
inline |
Creating a view on a specific column of the given matrix.
matrix | The matrix containing the column. |
index | The index of the column. |
std::invalid_argument | Invalid column access index. |
This function returns an expression representing the specified column of the given matrix.
In case the column is not properly specified (i.e. if the specified index is greater than or equal to the total number of the columns in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific column of the given constant matrix.
matrix | The constant matrix containing the column. |
index | The index of the column. |
std::invalid_argument | Invalid column access index. |
This function returns an expression representing the specified column of the given constant matrix.
In case the column is not properly specified (i.e. if the specified index is greater than or equal to the total number of the columns in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific column of the given temporary matrix.
matrix | The matrix containing the column. |
index | The index of the column. |
std::invalid_argument | Invalid column access index. |
This function returns an expression representing the specified column of the given temporary matrix. In case the column is not properly specified (i.e. if the specified index is greater than or equal to the total number of the columns in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific row of the given matrix.
matrix | The matrix containing the row. |
index | The index of the row. |
std::invalid_argument | Invalid row access index. |
This function returns an expression representing the specified row of the given matrix.
In case the row is not properly specified (i.e. if the specified index is greater than or equal to the total number of the rows in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific row of the given constant matrix.
matrix | The constant matrix containing the row. |
index | The index of the row. |
std::invalid_argument | Invalid row access index. |
This function returns an expression representing the specified row of the given constant matrix.
In case the row is not properly specified (i.e. if the specified index is greater than or equal to the total number of the rows in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific row of the given temporary matrix.
matrix | The matrix containing the row. |
index | The index of the row. |
std::invalid_argument | Invalid row access index. |
This function returns an expression representing the specified row of the given temporary matrix. In case the row is not properly specified (i.e. if the specified index is greater than or equal to the total number of the rows in the given matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific submatrix of the given matrix.
matrix | The matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing the specified submatrix of the given matrix. The following example demonstrates the creation of a dense and sparse submatrix:
In case the submatrix is not properly specified (i.e. if the specified row or column is larger than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) a std::invalid_argument exception is thrown.
Please note that this function creates an unaligned dense or sparse submatrix. For instance, the creation of the dense submatrix is equivalent to the following three function calls:
In contrast to unaligned submatrices, which provide full flexibility, aligned submatrices pose additional alignment restrictions. However, especially in case of dense submatrices this may result in considerable performance improvements. In order to create an aligned submatrix the following function call has to be used:
Note however that in this case the given arguments row, columns, m, and n are subject to additional checks to guarantee proper alignment.
|
inline |
Creating a view on a specific submatrix of the given constant matrix.
matrix | The constant matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing the specified submatrix of the given constant matrix. The following example demonstrates the creation of a dense and sparse submatrix:
In case the submatrix is not properly specified (i.e. if the specified row or column is larger than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) a std::invalid_argument exception is thrown.
Please note that this function creates an unaligned dense or sparse submatrix. For instance, the creation of the dense submatrix is equivalent to the following three function calls:
In contrast to unaligned submatrices, which provide full flexibility, aligned submatrices pose additional alignment restrictions. However, especially in case of dense submatrices this may result in considerable performance improvements. In order to create an aligned submatrix the following function call has to be used:
Note however that in this case the given arguments row, columns, m, and n are subject to additional checks to guarantee proper alignment.
|
inline |
Creating a view on a specific submatrix of the given temporary matrix.
matrix | The temporary matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing the specified submatrix of the given temporary matrix. In case the submatrix is not properly specified (i.e. if the specified row or column is greater than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific submatrix of the given matrix.
matrix | The matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing an aligned or unaligned submatrix of the given dense or sparse matrix, based on the specified alignment flag AF. The following example demonstrates the creation of both an aligned and unaligned submatrix:
In case the submatrix is not properly specified (i.e. if the specified row or column is larger than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) a std::invalid_argument exception is thrown.
In contrast to unaligned submatrices, which provide full flexibility, aligned submatrices pose additional alignment restrictions and the given row, and column arguments are subject to additional checks to guarantee proper alignment. However, especially in case of dense submatrices this may result in considerable performance improvements.
The alignment restrictions refer to system dependent address restrictions for the used element type and the available vectorization mode (SSE, AVX, ...). In order to be properly aligned the first element of each row/column of the submatrix must be aligned. The following source code gives some examples for a double precision row-major dynamic matrix, assuming that padding is enabled and that AVX is available, which packs 4 double
values into a SIMD vector:
In case any alignment restrictions are violated, a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific submatrix of the given constant matrix.
matrix | The constant matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing an aligned or unaligned submatrix of the given dense or sparse matrix, based on the specified alignment flag AF. The following example demonstrates the creation of both an aligned and unaligned submatrix:
In case the submatrix is not properly specified (i.e. if the specified row or column is larger than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) a std::invalid_argument exception is thrown.
In contrast to unaligned submatrices, which provide full flexibility, aligned submatrices pose additional alignment restrictions and the given row, and column arguments are subject to additional checks to guarantee proper alignment. However, especially in case of dense submatrices this may result in considerable performance improvements.
The alignment restrictions refer to system dependent address restrictions for the used element type and the available vectorization mode (SSE, AVX, ...). In order to be properly aligned the first element of each row/column of the submatrix must be aligned. The following source code gives some examples for a double precision row-major dynamic matrix, assuming that padding is enabled and that AVX is available, which packs 4 double
values into a SIMD vector:
In case any alignment restrictions are violated, a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific submatrix of the given temporary matrix.
matrix | The temporary matrix containing the submatrix. |
row | The index of the first row of the submatrix. |
column | The index of the first column of the submatrix. |
m | The number of rows of the submatrix. |
n | The number of columns of the submatrix. |
std::invalid_argument | Invalid submatrix specification. |
This function returns an expression representing an aligned or unaligned submatrix of the given temporary dense or sparse matrix, based on the specified alignment flag AF. In case the submatrix is not properly specified (i.e. if the specified row or column is larger than the total number of rows or columns of the given matrix or the submatrix is specified beyond the number of rows or columns of the matrix) or any alignment restrictions are violated, a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific subvector of the given vector.
vector | The vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing the specified subvector of the given vector. The following example demonstrates the creation of a dense and sparse subvector:
In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) a std::invalid_argument exception is thrown.
Please note that this function creates an unaligned dense or sparse subvector. For instance, the creation of the dense subvector is equivalent to the following three function calls:
In contrast to unaligned subvectors, which provide full flexibility, aligned subvectors pose additional alignment restrictions. However, especially in case of dense subvectors this may result in considerable performance improvements. In order to create an aligned subvector the following function call has to be used:
Note however that in this case the given index and size are subject to additional checks to guarantee proper alignment.
|
inline |
Creating a view on a specific subvector of the given constant vector.
vector | The constant vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing the specified subvector of the given constant vector. The following example demonstrates the creation of a dense and sparse subvector:
In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) a std::invalid_argument exception is thrown.
Please note that this function creates an unaligned dense or sparse subvector. For instance, the creation of the dense subvector is equivalent to the following three function calls:
In contrast to unaligned subvectors, which provide full flexibility, aligned subvectors pose additional alignment restrictions. However, especially in case of dense subvectors this may result in considerable performance improvements. In order to create an aligned subvector the following function call has to be used:
Note however that in this case the given index and size are subject to additional checks to guarantee proper alignment.
|
inline |
Creating a view on a specific subvector of the given temporary vector.
vector | The temporary vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing the specified subvector of the given temporary vector. In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific subvector of the given vector.
vector | The vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing an aligned or unaligned subvector of the given dense or sparse vector, based on the specified alignment flag AF. The following example demonstrates the creation of both an aligned and unaligned subvector:
In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) a std::invalid_argument exception is thrown.
In contrast to unaligned subvectors, which provide full flexibility, aligned subvectors pose additional alignment restrictions and the given index is subject to additional checks to guarantee proper alignment. However, especially in case of dense subvectors this may result in considerable performance improvements.
The alignment restrictions refer to system dependent address restrictions for the used element type and the available vectorization mode (SSE, AVX, ...). In order to be properly aligned the first element of the subvector must be aligned. The following source code gives some examples for a double precision dynamic vector, assuming that AVX is available, which packs 4 double
values into a SIMD vector:
In case any alignment restrictions are violated, a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific subvector of the given constant vector.
vector | The constant vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing an aligned or unaligned subvector of the given constant dense or sparse vector, based on the specified alignment flag AF. The following example demonstrates the creation of both an aligned and unaligned subvector:
In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) a std::invalid_argument exception is thrown.
In contrast to unaligned subvectors, which provide full flexibility, aligned subvectors pose additional alignment restrictions and the given index is subject to additional checks to guarantee proper alignment. However, especially in case of dense subvectors this may result in considerable performance improvements.
The alignment restrictions refer to system dependent address restrictions for the used element type and the available vectorization mode (SSE, AVX, ...). In order to be properly aligned the first element of the subvector must be aligned. The following source code gives some examples for a double precision dynamic vector, assuming that AVX is available, which packs 4 double
values into a SIMD vector:
In case any alignment restrictions are violated, a std::invalid_argument exception is thrown.
|
inline |
Creating a view on a specific subvector of the given temporary vector.
vector | The temporary vector containing the subvector. |
index | The index of the first element of the subvector. |
size | The size of the subvector. |
std::invalid_argument | Invalid subvector specification. |
This function returns an expression representing an aligned or unaligned subvector of the given temporary dense or sparse vector, based on the specified alignment flag AF. In case the subvector is not properly specified (i.e. if the specified first index is greater than the total size of the given vector or the subvector is specified beyond the size of the vector) or any alignment restrictions are violated, a std::invalid_argument exception is thrown.