So-Bogus
A c++ sparse block matrix library aimed at Second Order cone problems
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
bogus::flags Namespace Reference

Flags for compile-time tuning of the behavior of objects such as SparseBlockMatrix. More...

Enumerations

enum  { NONE = 0, UNCOMPRESSED = 0x1, COL_MAJOR = 0x2, SYMMETRIC = 0x4 }
 

Detailed Description

Flags for compile-time tuning of the behavior of objects such as SparseBlockMatrix.

Any combination if those is possible, using the 'binary or' ('|') operator.

Enumeration Type Documentation

anonymous enum
Enumerator
NONE 

Default value: the matrix will use an uncompressed index, will be row-major, and not symmetric.

UNCOMPRESSED 

Use an uncompressed index.

This removes some restrictions on the order in which elements can be inserted, but can be less efficient and will dsallow interoperability with other formats such as MKL's BSR. If the matrix can be created in a compressed way, that is with all its elements inserted in order, you probably should not set the UNCOMPRESSED flag.

See Also
SparseBlockMatrixBase::insert() and SparseBlockMatrixBase::insertBack()
COL_MAJOR 

Store and index blocks in a column major way.

SYMMETRIC 

Store only half the matrix, or rather the triangular part for which inner <= outer,.

outer being the row and inner the column for row-major matrices. Linear algebra operations such as matrix-vector and matrix-matrix multiplication will work just like if the matrix was fully populated, but at a lower memory access cost