humoto
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num > Class Template Reference

Detailed Description

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
class etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >

Extra layer for handling of specific sizes of blocks using partial template specialization.

Template Parameters
t_MatrixTypetype of raw matrix
t_block_rows_numnumber of rows in one block
t_block_cols_numnumber of columns in one block

Definition at line 545 of file blockmatrix_base.h.

#include <blockmatrix_base.h>

Inheritance diagram for etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >:
Inheritance graph

Public Types

typedef const Eigen::Block< const EIGENTOOLS_DYNAMIC_MATRIX(Scalar) > ConstDynamicMatrixBlock
 Shorthand for Eigen block. More...
 
typedef const Eigen::Block< const EIGENTOOLS_DYNAMIC_MATRIX(Scalar), t_block_rows_num, t_block_cols_num > ConstStaticMatrixBlock
 Shorthand for Eigen block. More...
 
typedef BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::DecayedRawMatrix DecayedRawMatrix
 
typedef Eigen::Block< EIGENTOOLS_DYNAMIC_MATRIX(Scalar) > DynamicMatrixBlock
 Shorthand for Eigen block. More...
 
typedef BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::Scalar Scalar
 
typedef Eigen::Block< EIGENTOOLS_DYNAMIC_MATRIX(Scalar), t_block_rows_num, t_block_cols_num > StaticMatrixBlock
 Shorthand for Eigen block. More...
 

Public Member Functions

DynamicMatrixBlock column (const std::ptrdiff_t index_col, const std::ptrdiff_t index_row_first, const std::ptrdiff_t index_num_rows)
 Access column of a matrix. More...
 
DynamicMatrixBlock column (const std::ptrdiff_t index_col, const std::ptrdiff_t index_row_first=0)
 Access column of a matrix. More...
 
ConstDynamicMatrixBlock column (const std::ptrdiff_t index_col, const std::ptrdiff_t index_row_first, const std::ptrdiff_t index_num_rows) const
 Access column of a matrix. More...
 
ConstDynamicMatrixBlock column (const std::ptrdiff_t index_col, const std::ptrdiff_t index_row_first=0) const
 Access column of a matrix. More...
 
std::ptrdiff_t getBlockColsNum () const
 Returns dimension of the matrix block. More...
 
std::ptrdiff_t getBlockRowsNum () const
 Returns dimension of the matrix block. More...
 
std::ptrdiff_t getNumberOfBlocksHorizontal () const
 Get number of blocks (horizontal/vertical) More...
 
std::ptrdiff_t getNumberOfBlocksVertical () const
 Get number of blocks (horizontal/vertical) More...
 
std::ptrdiff_t getNumberOfColumns () const
 Get total number of rows / columns. More...
 
std::ptrdiff_t getNumberOfRows () const
 Get total number of rows / columns. More...
 
const DecayedRawMatrixgetRaw () const
 Get raw matrix. More...
 
StaticMatrixBlock operator() (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col)
 Block access operator. More...
 
ConstStaticMatrixBlock operator() (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col) const
 Block access operator. More...
 
StaticMatrixBlock operator() (const std::ptrdiff_t index)
 Block access operator for diagonal blocks. More...
 
ConstStaticMatrixBlock operator() (const std::ptrdiff_t index) const
 Block access operator for diagonal blocks. More...
 
void resize (const std::ptrdiff_t num_blocks_vert, const std::ptrdiff_t num_blocks_hor)
 Resize matrix. More...
 
void resize (const std::ptrdiff_t num_blocks)
 Resize square matrix. More...
 
DynamicMatrixBlock row (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col_first, const std::ptrdiff_t index_num_cols)
 Access row of a matrix. More...
 
DynamicMatrixBlock row (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col_first=0)
 Access row of a matrix. More...
 
ConstDynamicMatrixBlock row (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col_first, const std::ptrdiff_t index_num_cols) const
 Access row of a matrix. More...
 
ConstDynamicMatrixBlock row (const std::ptrdiff_t index_row, const std::ptrdiff_t index_col_first=0) const
 Access row of a matrix. More...
 
DecayedRawMatrix selectRowInBlocksAsMatrix (const std::ptrdiff_t row_in_a_block)
 Selects rows from the matrix. More...
 
template<class t_Derived >
void set (const Eigen::DenseBase< t_Derived > &matrix)
 Set raw matrix. More...
 
void setBlockSize (const std::ptrdiff_t block_rows_num, const std::ptrdiff_t block_cols_num)
 Returns dimension of the matrix block. More...
 
void setZero (const std::ptrdiff_t num_blocks_vert, const std::ptrdiff_t num_blocks_hor)
 Resize matrix and initialize it with zeros. More...
 
void setZero (const std::ptrdiff_t num_blocks)
 Resize square matrix and set it to zero. More...
 

Protected Member Functions

 BlockMatrixSizeSpecificBase (const std::ptrdiff_t block_rows_num=MatrixBlockSizeType::UNDEFINED, const std::ptrdiff_t block_cols_num=MatrixBlockSizeType::UNDEFINED)
 
 BlockMatrixSizeSpecificBase (DecayedRawMatrix &matrix, const std::ptrdiff_t block_rows_num=MatrixBlockSizeType::UNDEFINED, const std::ptrdiff_t block_cols_num=MatrixBlockSizeType::UNDEFINED)
 
 BlockMatrixSizeSpecificBase (const DecayedRawMatrix &matrix, const std::ptrdiff_t block_rows_num=MatrixBlockSizeType::UNDEFINED, const std::ptrdiff_t block_cols_num=MatrixBlockSizeType::UNDEFINED)
 
 ~BlockMatrixSizeSpecificBase ()
 Protected destructor: prevent destruction of the child classes through a base pointer. More...
 
void finalize ()
 Compute humber of blocks in matrix and check size consistency. More...
 
void initializeBlockSize (const std::ptrdiff_t block_rows_num, const std::ptrdiff_t block_cols_num)
 Compute humber of blocks in matrix and check size consistency. More...
 

Protected Attributes

std::ptrdiff_t block_cols_num_
 
std::ptrdiff_t block_rows_num_
 
t_MatrixType matrix_
 
std::ptrdiff_t num_blocks_hor_
 
std::ptrdiff_t num_blocks_vert_
 

Member Typedef Documentation

◆ ConstDynamicMatrixBlock

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef const Eigen::Block< const EIGENTOOLS_DYNAMIC_MATRIX( Scalar ) > etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::ConstDynamicMatrixBlock
inherited

Shorthand for Eigen block.

Definition at line 120 of file blockmatrix_base.h.

◆ ConstStaticMatrixBlock

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef const Eigen::Block< const EIGENTOOLS_DYNAMIC_MATRIX( Scalar ), t_block_rows_num, t_block_cols_num> etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::ConstStaticMatrixBlock

Shorthand for Eigen block.

Definition at line 560 of file blockmatrix_base.h.

◆ DecayedRawMatrix

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef BlockMatrixAccessBase<t_MatrixType, t_block_rows_num, t_block_cols_num>::DecayedRawMatrix etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::DecayedRawMatrix

Definition at line 548 of file blockmatrix_base.h.

◆ DynamicMatrixBlock

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef Eigen::Block< EIGENTOOLS_DYNAMIC_MATRIX( Scalar ) > etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::DynamicMatrixBlock
inherited

Shorthand for Eigen block.

Definition at line 117 of file blockmatrix_base.h.

◆ Scalar

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef BlockMatrixAccessBase<t_MatrixType, t_block_rows_num, t_block_cols_num>::Scalar etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::Scalar

Definition at line 549 of file blockmatrix_base.h.

◆ StaticMatrixBlock

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
typedef Eigen::Block< EIGENTOOLS_DYNAMIC_MATRIX( Scalar ), t_block_rows_num, t_block_cols_num> etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::StaticMatrixBlock

Shorthand for Eigen block.

Definition at line 555 of file blockmatrix_base.h.

Constructor & Destructor Documentation

◆ ~BlockMatrixSizeSpecificBase()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::~BlockMatrixSizeSpecificBase ( )
inlineprotected

Protected destructor: prevent destruction of the child classes through a base pointer.

Definition at line 617 of file blockmatrix_base.h.

◆ BlockMatrixSizeSpecificBase() [1/3]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::BlockMatrixSizeSpecificBase ( const std::ptrdiff_t  block_rows_num = MatrixBlockSizeType::UNDEFINED,
const std::ptrdiff_t  block_cols_num = MatrixBlockSizeType::UNDEFINED 
)
inlineprotected

Definition at line 619 of file blockmatrix_base.h.

◆ BlockMatrixSizeSpecificBase() [2/3]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::BlockMatrixSizeSpecificBase ( const DecayedRawMatrix matrix,
const std::ptrdiff_t  block_rows_num = MatrixBlockSizeType::UNDEFINED,
const std::ptrdiff_t  block_cols_num = MatrixBlockSizeType::UNDEFINED 
)
inlineprotected

Definition at line 619 of file blockmatrix_base.h.

◆ BlockMatrixSizeSpecificBase() [3/3]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::BlockMatrixSizeSpecificBase ( DecayedRawMatrix matrix,
const std::ptrdiff_t  block_rows_num = MatrixBlockSizeType::UNDEFINED,
const std::ptrdiff_t  block_cols_num = MatrixBlockSizeType::UNDEFINED 
)
inlineprotected

Definition at line 619 of file blockmatrix_base.h.

Member Function Documentation

◆ column() [1/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
DynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::column ( const std::ptrdiff_t  index_col,
const std::ptrdiff_t  index_row_first,
const std::ptrdiff_t  index_num_rows 
)
inlineinherited

Access column of a matrix.

Parameters
[in]index_colindex of the column
[in]index_row_firstsegment of the column starts at this row
[in]index_num_rowsnumber of blocks
Returns
column or a part of it

Definition at line 238 of file blockmatrix_base.h.

◆ column() [2/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
DynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::column ( const std::ptrdiff_t  index_col,
const std::ptrdiff_t  index_row_first = 0 
)
inlineinherited

Access column of a matrix.

Parameters
[in]index_colindex of the column
[in]index_row_firstsegment of the column starts at this row if index_row_first is not specified => return the whole column
Returns
column or a part of it

Definition at line 260 of file blockmatrix_base.h.

◆ column() [3/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstDynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::column ( const std::ptrdiff_t  index_col,
const std::ptrdiff_t  index_row_first,
const std::ptrdiff_t  index_num_rows 
) const
inlineinherited

Access column of a matrix.

Parameters
[in]index_colindex of the column
[in]index_row_firstsegment of the column starts at this row
[in]index_num_rowsnumber of blocks
Returns
column or a part of it

Definition at line 268 of file blockmatrix_base.h.

◆ column() [4/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstDynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::column ( const std::ptrdiff_t  index_col,
const std::ptrdiff_t  index_row_first = 0 
) const
inlineinherited

Access column of a matrix.

Parameters
[in]index_colindex of the column
[in]index_row_firstsegment of the column starts at this row if index_row_first is not specified => return the whole column
Returns
column or a part of it

Definition at line 281 of file blockmatrix_base.h.

◆ finalize()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::finalize ( )
inlineprotectedinherited

Compute humber of blocks in matrix and check size consistency.

Definition at line 504 of file blockmatrix_base.h.

◆ getBlockColsNum()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getBlockColsNum ( ) const
inlineinherited

Returns dimension of the matrix block.

Returns
number of rows / columns

Definition at line 384 of file blockmatrix_base.h.

◆ getBlockRowsNum()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getBlockRowsNum ( ) const
inlineinherited

Returns dimension of the matrix block.

Returns
number of rows / columns

Definition at line 377 of file blockmatrix_base.h.

◆ getNumberOfBlocksHorizontal()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getNumberOfBlocksHorizontal ( ) const
inlineinherited

Get number of blocks (horizontal/vertical)

Returns
number of blocks

Definition at line 136 of file blockmatrix_base.h.

◆ getNumberOfBlocksVertical()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getNumberOfBlocksVertical ( ) const
inlineinherited

Get number of blocks (horizontal/vertical)

Returns
number of blocks

Definition at line 129 of file blockmatrix_base.h.

◆ getNumberOfColumns()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getNumberOfColumns ( ) const
inlineinherited

Get total number of rows / columns.

Returns
number of rows / columns

Definition at line 155 of file blockmatrix_base.h.

◆ getNumberOfRows()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getNumberOfRows ( ) const
inlineinherited

Get total number of rows / columns.

Returns
number of rows / columns

Definition at line 148 of file blockmatrix_base.h.

◆ getRaw()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
const DecayedRawMatrix& etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::getRaw ( ) const
inlineinherited

Get raw matrix.

Returns
matrix

Definition at line 353 of file blockmatrix_base.h.

◆ initializeBlockSize()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::initializeBlockSize ( const std::ptrdiff_t  block_rows_num,
const std::ptrdiff_t  block_cols_num 
)
inlineprotectedinherited

Compute humber of blocks in matrix and check size consistency.

Definition at line 474 of file blockmatrix_base.h.

◆ operator()() [1/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
StaticMatrixBlock etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::operator() ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col 
)
inline

Block access operator.

Parameters
[in]index_row
[in]index_col
Returns
matrix block

Definition at line 570 of file blockmatrix_base.h.

◆ operator()() [2/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstStaticMatrixBlock etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::operator() ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col 
) const
inline

Block access operator.

Parameters
[in]index_row
[in]index_col
Returns
matrix block

Definition at line 580 of file blockmatrix_base.h.

◆ operator()() [3/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
StaticMatrixBlock etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::operator() ( const std::ptrdiff_t  index)
inline

Block access operator for diagonal blocks.

Parameters
[in]indexrow and column index
Returns
matrix block

Definition at line 596 of file blockmatrix_base.h.

◆ operator()() [4/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstStaticMatrixBlock etools::BlockMatrixSizeSpecificBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::operator() ( const std::ptrdiff_t  index) const
inline

Block access operator for diagonal blocks.

Parameters
[in]indexrow and column index
Returns
matrix block

Definition at line 603 of file blockmatrix_base.h.

◆ resize() [1/2]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::resize ( const std::ptrdiff_t  num_blocks_vert,
const std::ptrdiff_t  num_blocks_hor 
)
inlineinherited

Resize matrix.

Parameters
[in]num_blocks_vert
[in]num_blocks_hor

Definition at line 182 of file blockmatrix_base.h.

◆ resize() [2/2]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::resize ( const std::ptrdiff_t  num_blocks)
inlineinherited

Resize square matrix.

Parameters
[in]num_blocksnumber of diagonal blocks

Definition at line 211 of file blockmatrix_base.h.

◆ row() [1/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
DynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::row ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col_first,
const std::ptrdiff_t  index_num_cols 
)
inlineinherited

Access row of a matrix.

Parameters
[in]index_rowindex of the row
[in]index_col_firstsegment of the row starts at this column
[in]index_num_colsnumber of blocks
Returns
row or a part of it

Definition at line 297 of file blockmatrix_base.h.

◆ row() [2/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
DynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::row ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col_first = 0 
)
inlineinherited

Access row of a matrix.

Parameters
[in]index_rowindex of the row
[in]index_col_firstsegment of the row starts at this column if index_col_first is not specified => return the whole row
Returns
row or a part of it

Definition at line 319 of file blockmatrix_base.h.

◆ row() [3/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstDynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::row ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col_first,
const std::ptrdiff_t  index_num_cols 
) const
inlineinherited

Access row of a matrix.

Parameters
[in]index_rowindex of the row
[in]index_col_firstsegment of the row starts at this column
[in]index_num_colsnumber of blocks
Returns
row or a part of it

Definition at line 327 of file blockmatrix_base.h.

◆ row() [4/4]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
ConstDynamicMatrixBlock etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::row ( const std::ptrdiff_t  index_row,
const std::ptrdiff_t  index_col_first = 0 
) const
inlineinherited

Access row of a matrix.

Parameters
[in]index_rowindex of the row
[in]index_col_firstsegment of the row starts at this column if index_col_first is not specified => return the whole row
Returns
row or a part of it

Definition at line 340 of file blockmatrix_base.h.

◆ selectRowInBlocksAsMatrix()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
DecayedRawMatrix etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::selectRowInBlocksAsMatrix ( const std::ptrdiff_t  row_in_a_block)
inlineinherited

Selects rows from the matrix.

Parameters
[in]row_in_a_blockrow number in a block
Returns
selected rows

Definition at line 366 of file blockmatrix_base.h.

◆ set()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
template<class t_Derived >
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::set ( const Eigen::DenseBase< t_Derived > &  matrix)
inlineinherited

Set raw matrix.

Template Parameters
t_DerivedEigen parameter
Parameters
[in]matrix

Definition at line 169 of file blockmatrix_base.h.

◆ setBlockSize()

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::setBlockSize ( const std::ptrdiff_t  block_rows_num,
const std::ptrdiff_t  block_cols_num 
)
inlineinherited

Returns dimension of the matrix block.

Returns
number of rows / columns

Definition at line 395 of file blockmatrix_base.h.

◆ setZero() [1/2]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::setZero ( const std::ptrdiff_t  num_blocks_vert,
const std::ptrdiff_t  num_blocks_hor 
)
inlineinherited

Resize matrix and initialize it with zeros.

Parameters
[in]num_blocks_vert
[in]num_blocks_hor

Definition at line 197 of file blockmatrix_base.h.

◆ setZero() [2/2]

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
void etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::setZero ( const std::ptrdiff_t  num_blocks)
inlineinherited

Resize square matrix and set it to zero.

Parameters
[in]num_blocksnumber of diagonal blocks

Definition at line 222 of file blockmatrix_base.h.

Member Data Documentation

◆ block_cols_num_

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::block_cols_num_
protectedinherited

Definition at line 414 of file blockmatrix_base.h.

◆ block_rows_num_

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::block_rows_num_
protectedinherited

Definition at line 413 of file blockmatrix_base.h.

◆ matrix_

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
t_MatrixType etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::matrix_
protectedinherited

Definition at line 408 of file blockmatrix_base.h.

◆ num_blocks_hor_

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::num_blocks_hor_
protectedinherited

Definition at line 411 of file blockmatrix_base.h.

◆ num_blocks_vert_

template<typename t_MatrixType, int t_block_rows_num, int t_block_cols_num>
std::ptrdiff_t etools::BlockMatrixAccessBase< t_MatrixType, t_block_rows_num, t_block_cols_num >::num_blocks_vert_
protectedinherited

Definition at line 410 of file blockmatrix_base.h.


The documentation for this class was generated from the following file: