Block elements for block matrices. More...
#include <core/alien/core/block/Block.h>
Classes | |
| struct | Internal |
| Internal structure for square or rectangular blocks. More... | |
Public Member Functions | |
| Block (Arccore::Integer block_size) | |
| Square block constructor. | |
| Block (Arccore::Integer block_sizeX, Arccore::Integer block_sizeY) | |
| Rectangular block constructor. | |
| Block (const Block &block) | |
| Copy constructor. | |
| ~Block ()=default | |
| Free resources. | |
| Block (Block &&block)=delete | |
| Block & | operator= (const Block &block)=delete |
| Arccore::Integer | size () const |
| Get square block size. | |
| Arccore::Integer | sizeX () const |
| Get rectangular block size in the "X" direction. | |
| Arccore::Integer | sizeY () const |
| Get rectangular block size in the "Y" direction. | |
| std::shared_ptr< Block > | clone () const |
| Clone this object. | |
Private Attributes | |
| std::shared_ptr< Internal > | m_internal |
| Actual implementation. | |
Block elements for block matrices.
Defines block parameters, for square or rectangulars block entries in a block matrix. All blocks in the matrix are identical in term of size.
|
explicit |
| Alien::Block::Block | ( | Arccore::Integer | block_sizeX, |
| Arccore::Integer | block_sizeY ) |
Rectangular block constructor.
| [in] | block_sizeX | Size of the block in "X" direction |
| [in] | block_sizeY | Size of the block in "Y" direction |
References Block().
| Alien::Block::Block | ( | const Block & | block | ) |
Copy constructor.
| [in] | Block related API | The block to copy |
Definition at line 68 of file Block.cc.
References Block(), and m_internal.
| std::shared_ptr< Block > Alien::Block::clone | ( | ) | const |
Clone this object.
Definition at line 117 of file Block.cc.
Referenced by Alien::MultiMatrixImpl::setBlockInfos(), Alien::MultiVectorImpl::setBlockInfos(), and ~Block().
| Integer Alien::Block::size | ( | ) | const |
Get square block size.
Definition at line 90 of file Block.cc.
References m_internal.
Referenced by Alien::NormalizeOpt::_normalize(), Alien::NormalizeOpt::_normalize(), Alien::computeBlockOffsets(), Alien::computeBlockOffsets(), Alien::SchurOp::computePrimarySystem(), Alien::NormalizeOpt::Op::Op(), Alien::NormalizeOpt::Op2::Op2(), Alien::IVectorImpl::scalarizedGlobalSize(), Alien::IVectorImpl::scalarizedLocalSize(), Alien::IVectorImpl::scalarizedOffset(), and ~Block().
| Integer Alien::Block::sizeX | ( | ) | const |
Get rectangular block size in the "X" direction.
Definition at line 99 of file Block.cc.
References m_internal.
Referenced by Alien::Block::Internal::newFixedSizeBlock(), and ~Block().
| Integer Alien::Block::sizeY | ( | ) | const |
Get rectangular block size in the "Y" direction.
Definition at line 108 of file Block.cc.
References m_internal.
Referenced by Alien::Block::Internal::newFixedSizeBlock(), and ~Block().
|
private |