![]() |
OpenLB 1.8.1
|
SuperSum3D sums all components of f over a indicated subset. More...
#include <superIntegralF3D.h>
Public Member Functions | |
SuperSum3D (FunctorPtr< SuperF3D< T, W > > &&f, FunctorPtr< SuperIndicatorF3D< T > > &&indicatorF) | |
Constructor for summing f on a indicated subset. | |
SuperSum3D (FunctorPtr< SuperF3D< T, W > > &&f, SuperGeometry< T, 3 > &superGeometry, const int material) | |
Constructor for summing f on a given material. | |
bool | operator() (W output[], const int input[]) override |
has to be implemented for 'every' derived class | |
![]() | |
SuperF3D< T, W > & | operator- (SuperF3D< T, W > &rhs) |
SuperF3D< T, W > & | operator+ (SuperF3D< T, W > &rhs) |
SuperF3D< T, W > & | operator* (SuperF3D< T, W > &rhs) |
SuperF3D< T, W > & | operator/ (SuperF3D< T, W > &rhs) |
SuperStructure< T, 3 > & | getSuperStructure () |
int | getBlockFSize () const |
BlockF3D< W > & | getBlockF (int iCloc) |
![]() | |
virtual | ~GenericF ()=default |
int | getSourceDim () const |
read only access to member variable _m | |
int | getTargetDim () const |
read only access to member variable _n | |
std::string & | getName () |
read and write access to name | |
std::string const & | getName () const |
read only access to name | |
bool | operator() (W output[]) |
wrapper that call the pure virtual operator() (T output[], const S input[]) from above | |
bool | operator() (W output[], int input0) |
bool | operator() (W output[], int input0, int input1) |
bool | operator() (W output[], int input0, int input1, int input2) |
bool | operator() (W output[], int input0, int input1, int input2, int input3) |
Additional Inherited Members | |
![]() | |
using | identity_functor_type |
![]() | |
using | targetType |
using | sourceType |
![]() | |
std::shared_ptr< GenericF< W, int > > | _ptrCalcC |
memory management, frees resouces (calcClass) | |
![]() | |
static constexpr bool | isSuper |
static constexpr unsigned | d |
![]() | |
SuperF3D (SuperStructure< T, 3 > &superStructure, int targetDim) | |
![]() | |
GenericF (int targetDim, int sourceDim) | |
![]() | |
SuperStructure< T, 3 > & | _superStructure |
std::vector< std::unique_ptr< BlockF3D< W > > > | _blockF |
Super functors may consist of several BlockF3D<W> derived functors. | |
SuperSum3D sums all components of f over a indicated subset.
Definition at line 39 of file superIntegralF3D.h.
olb::SuperSum3D< T, W >::SuperSum3D | ( | FunctorPtr< SuperF3D< T, W > > && | f, |
FunctorPtr< SuperIndicatorF3D< T > > && | indicatorF ) |
Constructor for summing f on a indicated subset.
f | functor to be summed |
indicatorF | indicator describing the subset on which to evaluate f |
Definition at line 39 of file superIntegralF3D.hh.
References olb::GenericF< W, int >::getName().
olb::SuperSum3D< T, W >::SuperSum3D | ( | FunctorPtr< SuperF3D< T, W > > && | f, |
SuperGeometry< T, 3 > & | superGeometry, | ||
const int | material ) |
Constructor for summing f on a given material.
f | functor to be summed |
superGeometry | super geometry for constructing material indicator |
material | number of the relevant material |
Definition at line 61 of file superIntegralF3D.hh.
|
overridevirtual |
has to be implemented for 'every' derived class
Reimplemented from olb::SuperF3D< T, T >.
Definition at line 70 of file superIntegralF3D.hh.
References olb::SuperStructure< T, D >::communicate(), olb::Cuboid< T, D >::getNx(), olb::Cuboid< T, D >::getNy(), olb::Cuboid< T, D >::getNz(), olb::SuperF3D< T, U >::getSuperStructure(), olb::LoadBalancer< T >::glob(), olb::singleton::mpi(), olb::singleton::MpiManager::reduceAndBcast(), and olb::LoadBalancer< T >::size().