|
gtsam
3.2.0
gtsam
|
A matrix expression that references a single block of a SymmetricBlockMatrix.
Depending on the position of the block, this expression will behave either as a regular matrix block, a transposed matrix block, or a symmetric matrix block. The only reason this class is templated on SymmetricBlockMatrixType is to allow for both const and non-const references.
Inheritance diagram for gtsam::SymmetricBlockMatrixBlockExpr< SymmetricBlockMatrixType >:Public Member Functions | |
| SymmetricBlockMatrixBlockExpr (SymmetricBlockMatrixType &blockMatrix, Index iBlock, Index jBlock) | |
| Create a SymmetricBlockMatrixBlockExpr from the specified block of a SymmetricBlockMatrix. | |
| SymmetricBlockMatrixBlockExpr (SymmetricBlockMatrixType &blockMatrix, Index firstRowBlock, Index firstColBlock, Index rowBlocks, Index colBlocks) | |
| Create a SymmetricBlockMatrixBlockExpr from the specified range of blocks of a SymmetricBlockMatrix. More... | |
| SymmetricBlockMatrixBlockExpr (SymmetricBlockMatrixType &blockMatrix, Index firstBlock, Index blocks, char dummy) | |
| Create a SymmetricBlockMatrixBlockExpr from the specified range of blocks of a SymmetricBlockMatrix. More... | |
| Index | rows () const |
| Index | cols () const |
| BlockType | blockType () const |
| ScalarRef | operator() (Index row, Index col) const |
| OffDiagonal | knownOffDiagonal () const |
| SelfAdjointView | selfadjointView () const |
| TriangularView | triangularView () const |
| template<typename Dest > | |
| void | evalTo (Dest &dst) const |
| template<typename RhsDerived > | |
| This & | operator= (const Eigen::MatrixBase< RhsDerived > &rhs) |
| template<typename MatrixType > | |
| This & | operator= (const Eigen::SelfAdjointView< MatrixType, Eigen::Upper > &rhs) |
| template<typename OtherSymmetricBlockMatrixType > | |
| This & | operator= (const SymmetricBlockMatrixBlockExpr< OtherSymmetricBlockMatrixType > &other) |
| This & | operator= (const This &other) |
| template<typename OtherSymmetricBlockMatrixType > | |
| This & | operator+= (const SymmetricBlockMatrixBlockExpr< OtherSymmetricBlockMatrixType > &other) |
Static Public Attributes | |
| static const Index | ColsAtCompileTime = Eigen::Dynamic |
| static const Index | RowsAtCompileTime = Eigen::Dynamic |
Public Types | |
|
typedef const_selector < SymmetricBlockMatrixType, SymmetricBlockMatrix, typename Eigen::internal::traits< This > ::Scalar &, typename Eigen::internal::traits< This > ::Scalar >::type | ScalarRef |
|
typedef Eigen::internal::traits< This > ::Scalar | Scalar |
|
typedef Eigen::internal::traits< This > ::Index | Index |
|
typedef const_selector < SymmetricBlockMatrixType, SymmetricBlockMatrix, Matrix, const Matrix >::type | DenseMatrixType |
|
typedef Eigen::Map < DenseMatrixType, 0, Eigen::Stride < Eigen::Dynamic, Eigen::Dynamic > > | OffDiagonal |
|
typedef Eigen::SelfAdjointView < Eigen::Block < DenseMatrixType > , Eigen::Upper > | SelfAdjointView |
|
typedef Eigen::TriangularView < Eigen::Block < DenseMatrixType > , Eigen::Upper > | TriangularView |
Protected Types | |
| enum | BlockType { Plain, SelfAdjoint, Transposed } |
|
typedef SymmetricBlockMatrixBlockExpr < SymmetricBlockMatrixType > | This |
Protected Attributes | |
| SymmetricBlockMatrixType & | xpr_ |
| The referenced SymmetricBlockMatrix. | |
| DenseIndex | densei_ |
| The scalar indices of the referenced block. | |
| DenseIndex | densej_ |
| The scalar indices of the referenced block. | |
| DenseIndex | denseRows_ |
| The scalar size of the referenced block. | |
| DenseIndex | denseCols_ |
| The scalar size of the referenced block. | |
|
enum gtsam::SymmetricBlockMatrixBlockExpr::BlockType | blockType_ |
| The type of the referenced block, as determined by the block position. | |
| Eigen::Block< DenseMatrixType > | myBlock_ |
Friends | |
| template<typename OtherSymmetricBlockMatrixType > | |
| class | SymmetricBlockMatrixBlockExpr |
|
inline |
Create a SymmetricBlockMatrixBlockExpr from the specified range of blocks of a SymmetricBlockMatrix.
|
inline |
Create a SymmetricBlockMatrixBlockExpr from the specified range of blocks of a SymmetricBlockMatrix.