$treeview $search $mathjax
Palabos  Version 1.1
$projectbrief
$projectbrief
$searchbox

plb::MultiGrid3D Class Reference

Base non-typed object that represents a multigrid. More...

#include <multiGrid3D.h>

Inheritance diagram for plb::MultiGrid3D:
Collaboration diagram for plb::MultiGrid3D:

List of all members.

Public Member Functions

 MultiGrid3D (MultiGridManagement3D management, plint behaviorLevel_)
 MultiGrid3D (const MultiGrid3D &rhs)
 Copy constructor.
 MultiGrid3D (MultiGrid3D const &rhs, Box3D subDomain, bool crop)
virtual ~MultiGrid3D ()
void swap (MultiGrid3D &rhs)
virtual MultiBlock3D const & getComponent (plint level) const =0
 Retrieving the components of the multigrid.
virtual MultiBlock3DgetComponent (plint level)=0
MultiGridManagement3D const & getMultiGridManagement () const
 Retrieving the MultiGridManagement3D.
MultiGridManagement3DgetMultiGridManagement ()
plint getNx () const
 "Sizes" of the multigrid, according to a definition made by the end-user class.
plint getNy () const
plint getNz () const
virtual Box3D getBoundingBox () const
 Retrieve the bounding box of the domain according to a definition made by user.
plint getReferenceLevel () const
 Retrieve the multigrid informations (for the implementing classes).
plint getNumLevels () const
plint getBehaviorLevel () const
void setBehaviorLevel (plint behaviorLevel_)
void initialize ()
 Execute all processors one.
void executeInternalProcessors ()
 Execute data processors.
void executeInternalProcessors (plint level)
 Execute data processors at a certain level.
void subscribeProcessor (plint level)
 Subscription of a Data Processor.
BlockStatisticsgetInternalStatistics ()
 Retrieve the multigrid statistics (this contains all the statistics rescaled).
BlockStatistics const & getInternalStatistics () const
void reduceStatistics ()
 statistics related manipulations like evaluation
void evaluateStatistics ()
 Compute statistics. For each level, first compute their statistics, then rescale and join everything.
void toggleInternalStatistics (bool statisticsOn_)
bool isInternalStatisticsOn () const
MultiGridPeriodicitySwitch3D
const & 
periodicity () const
 Periodicity control.
MultiGridPeriodicitySwitch3Dperiodicity ()
 Periodicity control.
void signalPeriodicity ()
MultiGridStatSubscriber3DinternalStatSubscription ()
 Retrieve the stats subscriber.
MultiScaleManager const & getScaleManager () const
 Retrieve the scale manager.
virtual DataSerializergetBlockSerializer (Box3D const &domain, IndexOrdering::OrderingT ordering) const
 I/O.
virtual DataUnSerializergetBlockUnSerializer (Box3D const &domain, IndexOrdering::OrderingT ordering)
virtual int getBlockId () const =0

Detailed Description

Base non-typed object that represents a multigrid.


Constructor & Destructor Documentation

plb::MultiGrid3D::MultiGrid3D ( MultiGridManagement3D  management,
plint  behaviorLevel_ 
)
plb::MultiGrid3D::MultiGrid3D ( const MultiGrid3D rhs  ) 

Copy constructor.

plb::MultiGrid3D::MultiGrid3D ( MultiGrid3D const &  rhs,
Box3D  subDomain,
bool  crop 
)
plb::MultiGrid3D::~MultiGrid3D (  )  [virtual]

Member Function Documentation

void plb::MultiGrid3D::evaluateStatistics (  ) 

Compute statistics. For each level, first compute their statistics, then rescale and join everything.

References reduceStatistics().

Referenced by plb::MultiGridLattice3D< T, Descriptor >::collideAndStream(), and plb::MultiGridLattice3D< T, Descriptor >::stream().

void plb::MultiGrid3D::executeInternalProcessors ( plint  level  ) 

Execute data processors at a certain level.

References plb::MultiBlock3D::executeInternalProcessors(), getComponent(), and getNumLevels().

void plb::MultiGrid3D::executeInternalProcessors (  ) 

Execute data processors.

References plb::MultiBlock3D::executeInternalProcessors(), getComponent(), and getNumLevels().

Referenced by initialize().

virtual int plb::MultiGrid3D::getBlockId (  )  const [pure virtual]
DataSerializer * plb::MultiGrid3D::getBlockSerializer ( Box3D const &  domain,
IndexOrdering::OrderingT  ordering 
) const [virtual]

I/O.

Implements plb::Block3D.

References PLB_ASSERT.

DataUnSerializer * plb::MultiGrid3D::getBlockUnSerializer ( Box3D const &  domain,
IndexOrdering::OrderingT  ordering 
) [virtual]

Implements plb::Block3D.

References PLB_ASSERT.

virtual MultiBlock3D& plb::MultiGrid3D::getComponent ( plint  level  )  [pure virtual]
BlockStatistics const & plb::MultiGrid3D::getInternalStatistics (  )  const
BlockStatistics & plb::MultiGrid3D::getInternalStatistics (  ) 
MultiGridManagement3D & plb::MultiGrid3D::getMultiGridManagement (  ) 
plint plb::MultiGrid3D::getNx (  )  const

"Sizes" of the multigrid, according to a definition made by the end-user class.

References plb::MultiGridManagement3D::getBoundingBox(), and plb::Box3D::getNx().

plint plb::MultiGrid3D::getNy (  )  const
plint plb::MultiGrid3D::getNz (  )  const
MultiScaleManager const & plb::MultiGrid3D::getScaleManager (  )  const

Retrieve the scale manager.

Referenced by plb::MultiGridLattice3D< T, Descriptor >::specifyStatisticsStatus().

void plb::MultiGrid3D::initialize (  ) 

Execute all processors one.

Reimplemented in plb::MultiGridLattice3D< T, Descriptor >.

References executeInternalProcessors().

MultiGridStatSubscriber3D & plb::MultiGrid3D::internalStatSubscription (  ) 

Retrieve the stats subscriber.

Referenced by plb::MultiGridLattice3D< T, Descriptor >::MultiGridLattice3D().

bool plb::MultiGrid3D::isInternalStatisticsOn (  )  const
MultiGridPeriodicitySwitch3D & plb::MultiGrid3D::periodicity (  ) 

Periodicity control.

Get the object charged for periodicity (modifiable). Note that periodicity is affected at the reference level only. If you want your simulation to be overall periodic, it is important that the reference block reaches all borders.

MultiGridPeriodicitySwitch3D const & plb::MultiGrid3D::periodicity (  )  const

Periodicity control.

Get the object charged for periodicity (non-modifiable). Note that periodicity is affected at the reference level only. If you want your simulation to be overall periodic, it is important that the reference block reaches all borders.

Referenced by signalPeriodicity().

void plb::MultiGrid3D::reduceStatistics (  ) 
void plb::MultiGrid3D::setBehaviorLevel ( plint  behaviorLevel_  ) 
void plb::MultiGrid3D::signalPeriodicity (  ) 
void plb::MultiGrid3D::subscribeProcessor ( plint  level  ) 

Subscription of a Data Processor.

void plb::MultiGrid3D::swap ( MultiGrid3D rhs  ) 
void plb::MultiGrid3D::toggleInternalStatistics ( bool  statisticsOn_  ) 

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