$treeview $search $mathjax
|
Palabos
Version 1.1
$projectbrief
|
$projectbrief
|
$searchbox |
Base non-typed object that represents a multigrid. More...
#include <multiGrid3D.h>


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 MultiBlock3D & | getComponent (plint level)=0 |
| MultiGridManagement3D const & | getMultiGridManagement () const |
| Retrieving the MultiGridManagement3D. | |
| MultiGridManagement3D & | getMultiGridManagement () |
| 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. | |
| BlockStatistics & | getInternalStatistics () |
| 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. | |
| MultiGridPeriodicitySwitch3D & | periodicity () |
| Periodicity control. | |
| void | signalPeriodicity () |
| MultiGridStatSubscriber3D & | internalStatSubscription () |
| Retrieve the stats subscriber. | |
| MultiScaleManager const & | getScaleManager () const |
| Retrieve the scale manager. | |
| virtual DataSerializer * | getBlockSerializer (Box3D const &domain, IndexOrdering::OrderingT ordering) const |
| I/O. | |
| virtual DataUnSerializer * | getBlockUnSerializer (Box3D const &domain, IndexOrdering::OrderingT ordering) |
| virtual int | getBlockId () const =0 |
Base non-typed object that represents a multigrid.
| 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] |
| 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().
| plint plb::MultiGrid3D::getBehaviorLevel | ( | ) | const |
| virtual int plb::MultiGrid3D::getBlockId | ( | ) | const [pure virtual] |
| DataSerializer * plb::MultiGrid3D::getBlockSerializer | ( | Box3D const & | domain, | |
| IndexOrdering::OrderingT | ordering | |||
| ) | const [virtual] |
| DataUnSerializer * plb::MultiGrid3D::getBlockUnSerializer | ( | Box3D const & | domain, | |
| IndexOrdering::OrderingT | ordering | |||
| ) | [virtual] |
Implements plb::Block3D.
References PLB_ASSERT.
| Box3D plb::MultiGrid3D::getBoundingBox | ( | ) | const [virtual] |
Retrieve the bounding box of the domain according to a definition made by user.
Implements plb::Block3D.
References plb::MultiGridManagement3D::getBoundingBox().
Referenced by plb::add(), plb::addInPlace(), plb::apply(), plb::computeAllPopulations(), plb::computeAverage(), plb::computeBoundedAverage(), plb::computeBulkStrainRate(), plb::computeBulkVorticity(), plb::computeDensity(), plb::computeDeviatoricStress(), plb::computeKineticEnergy(), plb::computeMax(), plb::computeMin(), plb::computeNorm(), plb::computeNormSqr(), plb::computePopulation(), plb::computeRhoBar(), plb::computeStrainRate(), plb::computeStrainRateFromStress(), plb::computeSymmetricTensorNorm(), plb::computeSymmetricTensorNormSqr(), plb::computeSymmetricTensorTrace(), plb::computeVelocity(), plb::computeVelocityComponent(), plb::computeVelocityNorm(), plb::computeVorticity(), plb::copyConvert(), plb::count(), plb::divide(), plb::divideInPlace(), plb::evaluate(), plb::extractComponent(), plb::multiply(), plb::multiplyInPlace(), plb::subtract(), and plb::subtractInPlace().
| virtual MultiBlock3D& plb::MultiGrid3D::getComponent | ( | plint | level | ) | [pure virtual] |
| virtual MultiBlock3D const& plb::MultiGrid3D::getComponent | ( | plint | level | ) | const [pure virtual] |
Retrieving the components of the multigrid.
Implemented in plb::MultiGridScalarField3D< T >, plb::MultiGridTensorField3D< T, nDim >, and plb::MultiGridLattice3D< T, Descriptor >.
Referenced by executeInternalProcessors(), reduceStatistics(), signalPeriodicity(), plb::MultiGridStatSubscriber3D::subscribeAverage(), plb::MultiGridStatSubscriber3D::subscribeIntSum(), plb::MultiGridStatSubscriber3D::subscribeMax(), and plb::MultiGridStatSubscriber3D::subscribeSum().
| BlockStatistics const & plb::MultiGrid3D::getInternalStatistics | ( | ) | const |
| BlockStatistics & plb::MultiGrid3D::getInternalStatistics | ( | ) |
Retrieve the multigrid statistics (this contains all the statistics rescaled).
Retrieve the multigrid statistics (this contains all the level statistics).
Referenced by plb::getStoredAverageDensity(), plb::getStoredAverageEnergy(), plb::getStoredMaxVelocity(), plb::MultiGridStatSubscriber3D::initialize(), reduceStatistics(), plb::MultiGridStatSubscriber3D::subscribeAverage(), plb::MultiGridStatSubscriber3D::subscribeIntSum(), plb::MultiGridStatSubscriber3D::subscribeMax(), and plb::MultiGridStatSubscriber3D::subscribeSum().
| MultiGridManagement3D & plb::MultiGrid3D::getMultiGridManagement | ( | ) |
| MultiGridManagement3D const & plb::MultiGrid3D::getMultiGridManagement | ( | ) | const |
| plint plb::MultiGrid3D::getNumLevels | ( | ) | const |
References plb::MultiGridManagement3D::getNumLevels().
Referenced by executeInternalProcessors(), plb::MultiGridLattice3D< T, Descriptor >::MultiGridLattice3D(), plb::MultiGridTensorField3D< T, nDim >::MultiGridTensorField3D(), reduceStatistics(), plb::MultiGridStatSubscriber3D::subscribeAverage(), plb::MultiGridStatSubscriber3D::subscribeIntSum(), plb::MultiGridStatSubscriber3D::subscribeMax(), plb::MultiGridStatSubscriber3D::subscribeSum(), and plb::MultiGridLattice3D< T, Descriptor >::~MultiGridLattice3D().
| 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 |
References plb::MultiGridManagement3D::getBoundingBox(), and plb::Box3D::getNy().
| plint plb::MultiGrid3D::getNz | ( | ) | const |
References plb::MultiGridManagement3D::getBoundingBox(), and plb::Box3D::getNz().
| plint plb::MultiGrid3D::getReferenceLevel | ( | ) | const |
Retrieve the multigrid informations (for the implementing classes).
Retrieve the reference level.
References plb::MultiGridManagement3D::getReferenceLevel().
Referenced by plb::add(), plb::addInPlace(), plb::computeAllPopulations(), plb::computeAverage(), plb::computeBoundedAverage(), plb::computeBulkStrainRate(), plb::computeBulkVorticity(), plb::computeDensity(), plb::computeDeviatoricStress(), plb::computeKineticEnergy(), plb::computeMax(), plb::computeMin(), plb::computeNorm(), plb::computeNormSqr(), plb::computePopulation(), plb::computeRhoBar(), plb::computeStrainRate(), plb::computeStrainRateFromStress(), plb::computeSymmetricTensorNorm(), plb::computeSymmetricTensorNormSqr(), plb::computeSymmetricTensorTrace(), plb::computeVelocity(), plb::computeVelocityComponent(), plb::computeVelocityNorm(), plb::computeVorticity(), plb::copyConvert(), plb::count(), plb::divide(), plb::divideInPlace(), plb::extractComponent(), plb::extractSubDomain(), plb::MultiGridLattice3D< T, Descriptor >::getBlockId(), plb::multiply(), plb::multiplyInPlace(), reduceStatistics(), signalPeriodicity(), plb::subtract(), and plb::subtractInPlace().
| 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 | ( | ) |
statistics related manipulations like evaluation
This method rescales each statistic and combines all the results.
References plb::combine(), getComponent(), plb::MultiGridStatSubscriber3D::getDimensionsT(), plb::MultiGridStatSubscriber3D::getDimensionsX(), getInternalStatistics(), getNumLevels(), getReferenceLevel(), plb::BlockStatistics::incrementStats(), and plb::scaleToReference().
Referenced by evaluateStatistics().
| void plb::MultiGrid3D::setBehaviorLevel | ( | plint | behaviorLevel_ | ) |
| void plb::MultiGrid3D::signalPeriodicity | ( | ) |
Simply use the periodicity of the reference level lattice which should at least include all the borders of the simulation
References getComponent(), plb::MultiGridPeriodicitySwitch3D::getPeriodicityArray(), getReferenceLevel(), plb::MultiBlock3D::periodicity(), periodicity(), plb::MultiBlock3D::signalPeriodicity(), and plb::PeriodicitySwitch3D::toggle().
Referenced by plb::MultiGridPeriodicitySwitch3D::toggle(), and plb::MultiGridPeriodicitySwitch3D::toggleAll().
| void plb::MultiGrid3D::subscribeProcessor | ( | plint | level | ) |
Subscription of a Data Processor.
| void plb::MultiGrid3D::swap | ( | MultiGrid3D & | rhs | ) |
References plb::MultiGridStatSubscriber3D::swap(), and plb::MultiGridManagement3D::swap().
| void plb::MultiGrid3D::toggleInternalStatistics | ( | bool | statisticsOn_ | ) |
1.6.3
1.6.3