| So-Bogus
    A c++ sparse block matrix library aimed at Second Order cone problems | 
Base class for matrix-like objects that define a block structure, but not a block type. More...
#include <IterableBlockObject.hpp>
 
  
 | Public Types | |
| typedef BlockMatrixTraits < Derived > | Traits | 
| typedef Traits::Index | Index | 
| typedef Traits::Scalar | Scalar | 
| typedef BlockObjectBase< Derived > | Base | 
| enum | { is_transposed = Traits::is_transposed } | 
| enum | { RowsAtCompileTime = internal::DYNAMIC, ColsAtCompileTime = internal::DYNAMIC, is_self_transpose = Traits::is_symmetric } | 
| typedef Traits::ConstTransposeReturnType | ConstTransposeReturnType | 
| typedef Traits::TransposeObjectType | TransposeObjectType | 
| typedef Traits::PlainObjectType | PlainObjectType | 
| Public Member Functions | |
| Index | size () const | 
| Returns the total number of blocks of the matrix. | |
| template<bool DoTranspose, typename RhsT , typename ResT > | |
| void | rowMultiply (const Index row, const RhsT &rhs, ResT &res) const | 
| Multiplication with a single row. | |
| template<bool DoTranspose, typename RhsT , typename ResT , typename PreOp > | |
| void | rowMultiplyPrecompose (const Index row, const RhsT &rhs, ResT &res, const PreOp &op) const | 
| template<bool DoTranspose, typename RhsT , typename ResT > | |
| void | colMultiply (const Index col, const RhsT &rhs, ResT &res) const | 
| Multiplication with a single column. | |
| template<bool DoTranspose, typename RhsT , typename ResT , typename PostOp > | |
| void | colMultiplyPostcompose (const Index col, const RhsT &rhs, ResT &res, const PostOp &op) const | 
| template<typename Func > | |
| void | eachBlockOfRow (const Index row, Func func) const | 
| Iterates over each block of a given row. Calls func( col, block ) | |
| template<typename Func > | |
| void | eachBlockOfCol (const Index col, Func func) const | 
| Iterates over each block of a given col. Calls func( row, block ) | |
| const Derived & | derived () const | 
| Returns a const reference to the implementation. | |
| Derived & | derived () | 
| Returns a reference to the implementation. | |
| Index | rows () const | 
| Returns the total number of rows of the matrix ( expanding blocks ) | |
| Index | cols () const | 
| Returns the total number of columns of the matrix ( expanding blocks ) | |
| Index | blockRows (Index row) const | 
| Returns the number of rows of a given block row. | |
| Index | blockCols (Index col) const | 
| Returns the number of columns of a given block columns. | |
| Index | rowsOfBlocks () const | 
| Returns the number of block rows of the matrix. | |
| Index | colsOfBlocks () const | 
| Returns the number of block columns of the matrix. | |
| const Index * | rowOffsets () const | 
| Returns an array containing the first index of each row. | |
| const Index * | colOffsets () const | 
| Returns an array containing the first index of each column. | |
| Index | rowOffset (Index row) const | 
| Returns an array containing the first index of a given row. | |
| Index | colOffset (Index col) const | 
| Returns an array containing the first index of a given columns. | |
| ConstTransposeReturnType | transpose () const | 
| Return a const transposed view of this object. | |
| template<bool DoTranspose, typename RhsT , typename ResT > | |
| void | multiply (const RhsT &rhs, ResT &res, Scalar alpha=1, Scalar beta=0) const | 
| Performs a matrix vector multiplication.  More... | |
Base class for matrix-like objects that define a block structure, but not a block type.
| 
 | inherited | 
Performs a matrix vector multiplication.
| DoTranspose | If true, performs res=alpha*M'*rhs+ beta * res, otherwiseres=alpha* M *rhs+ beta * res |