MTL 4: mtl::matrix< T, Shape, Storage, Orientation > Struct Template Reference
double
, complex<float>
, and bool
. In essence, any builtin or user defined type can be used for the EltType
, however, if one uses the matrix with a particular algorithm, the EltType
must support the operations required by the algorithm. For MTL algorithms these typically include the usual numerical operators such as addition and multiplication. The std::complex
class is a good example of what is required in a numerical type. The documentation for each algorithm will include the requirements on the element type.
More...
#include <matrix.h>
Public Attributes | |
const std::size_t | compressed_linear_search_limit = 10 |
Maximal number of entries that is searched linearly; above this std::lower_bound is used. | |
const std::size_t | dense_non_recursive_product_limit = 10000 |
Maximal matrix size of dense matrices that is multiplied without recursion. | |
const std::size_t | sorted_block_insertion_limit = 5 |
Maximal number of columns in block that is inserted separately; above this the block is presorted (only row-major sparse matrices). |
double
, complex<float>
, and bool
. In essence, any builtin or user defined type can be used for the EltType
, however, if one uses the matrix with a particular algorithm, the EltType
must support the operations required by the algorithm. For MTL algorithms these typically include the usual numerical operators such as addition and multiplication. The std::complex
class is a good example of what is required in a numerical type. The documentation for each algorithm will include the requirements on the element type.
tparam: Shape - This argument specifies the general positioning of the non zero elements in the matrix, but does not specify the actual storage format. In addition it specifies certain properties such as symmetry. The choices for this argument include rectangle
, banded
, diagonal
, triangle
, and symmetric
. Hermitian is not yet implemented. tparam: Storage - The argument specifies the storage scheme used to lay out the matrix elements (and sometimes the element indices) in memory. The storage formats include dense
, banded
, packed
, banded_view
, compressed
, envelope
, and array
. tparam: Orientation - The storage order for an MTL matrix can either be row_major
or column_major
. category: containers, generators component: type definition: matrix.h
const std::size_t mtl::matrix< T, Shape, Storage, Orientation >::compressed_linear_search_limit = 10 |
Maximal number of entries that is searched linearly; above this std::lower_bound is used.
Can be reset with macro or corresponding compiler flag, e.g. {-D|/D}MTL_MATRIX_COMPRESSED_LINEAR_SEARCH_LIMIT=16
const std::size_t mtl::matrix< T, Shape, Storage, Orientation >::dense_non_recursive_product_limit = 10000 |
const std::size_t mtl::matrix< T, Shape, Storage, Orientation >::sorted_block_insertion_limit = 5 |
Maximal number of columns in block that is inserted separately; above this the block is presorted (only row-major sparse matrices).
Can be reset with macro or corresponding compiler flag, e.g. {-D|/D}MTL_SORTED_BLOCK_INSERTION_LIMIT=8 Default is 5.
mtl::matrix< T, Shape, Storage, Orientation > Struct Template Reference -- MTL 4 -- Peter Gottschling and Andrew Lumsdaine
-- Generated on 24 Aug 2009 by Doxygen 1.5.9 -- Copyright 2008-09 by TU Dresden and the Trustees of Indiana University.