This class builds a domain mask. It implements the MPI/OMP version of the virtual abstract method SMOMPI_DomainGridBuilder::buildMask() of the base class SM_DomainGridBuilder.
More...
#include <SMOMPI_DomainGridBuilder.h>
|
|
| SMOMPI_DomainGridBuilder (void) |
| | create a network class
|
| |
|
virtual | ~SMOMPI_DomainGridBuilder (void) |
| | destroy
|
| |
| virtual void | buildMask (const std::array< tInteger, SM_Constants::DIM > &Ns, const std::array< tReal, SM_Constants::DIM > &Hs, const std::array< tReal, SM_Constants::DIM > &X0, const EXPR_RootNode &geo, std::valarray< tMask > &mask) const final |
| | build the mask for the bounding box with the geo function More...
|
| |
Protected Member Functions inherited from SM_DomainGridBuilder |
|
| SM_DomainGridBuilder (void) |
| | create a network class
|
| |
|
virtual | ~SM_DomainGridBuilder (void) |
| | destroy
|
| |
| void | buildMaskSlice (const tIndex &startIndex, const tIndex &endIndex, const std::array< tInteger, SM_Constants::DIM > &Ns, const std::array< tReal, SM_Constants::DIM > &Hs, const std::array< tReal, SM_Constants::DIM > &X0, const EXPR_RootNode &geo, std::valarray< tMask > &mask) const |
| | build the mask for the bounding box with the geo function More...
|
| |
|
| CORE_Object () |
| | build an instance of the object
|
| |
|
virtual | ~CORE_Object () |
| | destroy the instance of object std
|
| |
This class builds a domain mask. It implements the MPI/OMP version of the virtual abstract method SMOMPI_DomainGridBuilder::buildMask() of the base class SM_DomainGridBuilder.
- Author
- Stephane Despreaux
- Version
- 3.0
◆ buildMask()
build the mask for the bounding box with the geo function
- Parameters
-
| [in] | Ns | network number of cells per direction |
| [in] | Hs | cell size per direction in angstrom |
| [in] | X0 | min point of the bounding box |
| [in] | geo | geometry function to indicates if a point belongs to the domain |
| [out] | mask | : indicator of the inside cell flag |
The implementation on the method depend on serial/openMP/mpi implementations
Implements SM_DomainGridBuilder.
◆ getContentsMemorySize()
| virtual tMemSize SMOMPI_DomainGridBuilder::getContentsMemorySize |
( |
| ) |
const |
|
inlinevirtual |
return the memory size of the included associations
- Returns
- the memory size of the storage in bytes 1 Kb = 1024 bytes 1 Mb = 1024 Kb 1 Gb = 1024 Mb 1 Tb = 1024 Gb 1 Hb = 1024 Tb
Reimplemented from SM_DomainGridBuilder.
◆ getMemorySize()
| virtual tMemSize SMOMPI_DomainGridBuilder::getMemorySize |
( |
| ) |
const |
|
inlinevirtual |
return the memory size of the class and the memory size of all its attributes/associations
- Returns
- the memory size of the class and the memory size of its attributes/associations in bytes The mamory size is :
- the added size of the base classes which contains:
- the primary attributes size depends on the order: (first delare the smallest attributes size
- all virtual functions costs <pointer-size> (4 32xor 8 64x) bytes by virtual function
- virtual inherihtance will increase of (4 or 8) bytes
- we add the size of the contains values of the attributes : for example the size of a string is the length of the string 1 octet = 1 byte 1 Ko = 1024 bytes 1 Mo = 1024 Ko 1 Go = 1024 Mo
Reimplemented from SM_DomainGridBuilder.
◆ New()
| static CORE_UniquePointer<SelfClass> SMOMPI_DomainGridBuilder::New |
( |
| ) |
|
|
inlinestatic |
create a new unique instance of This class
- Returns
- an unique pointer to an instance of this class
The documentation for this class was generated from the following files:
- /home/despreau/Developpement/CPP/devcpp20/include/stochmagnet/network/mpi/SMOMPI_DomainGridBuilder.h
- /home/despreau/Developpement/CPP/devcpp20/src/stochmagnet/network/mpi/SMOMPI_DomainGridBuilder.cpp