$treeview $search $mathjax
|
Palabos
Version 1.1
$projectbrief
|
$projectbrief
|
$searchbox |
A LB lattice cell. More...
#include <cell.h>


Public Types | |
| typedef ExternalFieldArray< T, typename Descriptor< T > ::ExternalField > | External |
| Additional per-cell scalars for external fields, e.g. forces. | |
Public Member Functions | |
| Cell () | |
| Default constructor. | |
| Cell (Dynamics< T, Descriptor > *dynamics_) | |
| Constructor, to be used whenever possible. | |
| T & | operator[] (plint iPop) |
| Read-write access to distribution functions. | |
| T const & | operator[] (plint iPop) const |
| Read-only access to distribution functions. | |
| Array< T, Descriptor< T > ::numPop > & | getRawPopulations () |
| Another way to get direct access to the f's, as in operator[]. | |
| Array< T, Descriptor< T > ::numPop > const & | getRawPopulations () const |
| Another way to get direct, const access to the f's, as in operator[]. | |
| Cell< T, Descriptor > & | attributeF (Cell< T, Descriptor > const &rhs) |
| Attribute all f-values from another cell to the present one. | |
| Cell< T, Descriptor > & | attributeValues (Cell< T, Descriptor > const &rhs) |
| Attribute all f-values and external scalars from another cell to the present one. | |
| T * | getExternal (plint offset) |
| Get a pointer to an external field. | |
| T const * | getExternal (plint offset) const |
| Get a const pointer to an external field. | |
| Dynamics< T, Descriptor > const & | getDynamics () const |
| Get a reference to non-modifiable dynamics. | |
| Dynamics< T, Descriptor > & | getDynamics () |
| Get a a reference to dynamics. | |
| bool | takesStatistics () const |
| Request whether this cell does statistics measurements. | |
| void | specifyStatisticsStatus (bool status) |
| Specify whether this cell does statistics measurements. | |
| void | collide (BlockStatistics &statistics) |
| Apply LB collision to the cell according to local dynamics. | |
| T | computeEquilibrium (plint iPop, T rhoBar, Array< T, Descriptor< T >::d > const &j, T jSqr, T thetaBar=T()) const |
| Compute equilibrium distribution function. | |
| void | regularize (T rhoBar, Array< T, Descriptor< T >::d > const &j, T jSqr, Array< T, SymmetricTensor< T, Descriptor >::n > const &PiNeq, T thetaBar=T()) |
| Re-compute particle populations from the leading moments. | |
| T | computeDensity () const |
| Compute particle density on the cell. | |
| T | computePressure () const |
| Compute pressure on the cell. | |
| void | computeVelocity (Array< T, Descriptor< T >::d > &u) const |
| Compute fluid velocity on the cell. | |
| T | computeTemperature () const |
| Compute Temperature on the cell. | |
| void | computeDeviatoricStress (Array< T, SymmetricTensor< T, Descriptor >::n > &PiNeq) const |
| Compute the deviatoric stress tensor ("off-equilibrium part of Pi"). | |
| void | computeHeatFlux (Array< T, Descriptor< T >::d > &q) const |
| Compute heat flux on the cell. | |
| void | computeMoment (plint momentId, T *moment) |
| Compute user-defined moment on the cell. | |
| void | getPopulations (Array< T, Descriptor< T >::numPop > &f) const |
| Access particle populations through the dynamics object. | |
| void | getExternalField (plint pos, plint size, T *ext) const |
| Access external fields through the dynamics object. | |
| void | defineDensity (T rho) |
| Set particle density on the cell. | |
| void | defineVelocity (Array< T, Descriptor< T >::d > const &u) |
| Set fluid velocity on the cell. | |
| void | defineTemperature (T temperature) |
| Set temperature on the cell. | |
| void | defineHeatFlux (Array< T, Descriptor< T >::d > const &q) |
| Set heat flux on the cell. | |
| void | defineDeviatoricStress (Array< T, SymmetricTensor< T, Descriptor >::n > const &PiNeq) |
| Set components of the deviatoric stress tensor on the cell. | |
| void | defineMoment (plint momentId, T const *value) |
| Set generic moment on the cell. | |
| void | setPopulations (Array< T, Descriptor< T >::numPop > const &f) |
| Define particle populations through the dynamics object. | |
| void | setExternalField (plint pos, plint size, const T *ext) |
| Define external fields through the dynamics object. | |
| void | revert () |
| Revert ("bounce-back") the distribution functions. | |
| void | serialize (char *data) const |
| void | unSerialize (char const *data) |
Friends | |
| class | BlockLattice2D |
| class | BlockLattice3D |
A LB lattice cell.
A cell contains the q values of the distribution functions f on one lattice point, as well as a pointer to the dynamics of the cell. Thanks to this pointer, one can have a space dependend de- finition of the dynamics. This mechanism is useful e.g. for the implementation of boundary conditions, or an inhomogeneous body force.
The dynamics object is not owned by the class, it is not destructed in the Cell destructor.
This class is not intended to be derived from.
| typedef ExternalFieldArray<T, typename Descriptor<T>::ExternalField> plb::Cell< T, Descriptor >::External |
Additional per-cell scalars for external fields, e.g. forces.
| plb::Cell< T, Descriptor >::Cell | ( | ) | [inline] |
Default constructor.
The possibility to default construct Cell objects facilitates their use in various types of containers. However, they can not be used directly after construction; the method attributeDynamics() must be used first.
| plb::Cell< T, Descriptor >::Cell | ( | Dynamics< T, Descriptor > * | dynamics_ | ) | [inline] |
Constructor, to be used whenever possible.
This constructor initializes the dynamics, but not the values of the distribution functions. Remember that the dynamics is not owned by the Cell object, the user must ensure its proper destruction and a sufficient life time.
| Cell<T,Descriptor>& plb::Cell< T, Descriptor >::attributeF | ( | Cell< T, Descriptor > const & | rhs | ) | [inline] |
Attribute all f-values from another cell to the present one.
Referenced by plb::Cell< T, Descriptor2 >::attributeValues().
| Cell<T,Descriptor>& plb::Cell< T, Descriptor >::attributeValues | ( | Cell< T, Descriptor > const & | rhs | ) | [inline] |
Attribute all f-values and external scalars from another cell to the present one.
Referenced by plb::LatticeCopyAllFunctional3D< T, Descriptor >::process(), and plb::LatticeCopyAllFunctional2D< T, Descriptor >::process().
| void plb::Cell< T, Descriptor >::collide | ( | BlockStatistics & | statistics | ) | [inline] |
Apply LB collision to the cell according to local dynamics.
| T plb::Cell< T, Descriptor >::computeDensity | ( | ) | const [inline] |
Compute particle density on the cell.
Referenced by plb::ShanChenSingleComponentProcessor3D< T, Descriptor >::process(), plb::ShanChenSingleComponentProcessor2D< T, Descriptor >::process(), plb::DensitySingleProbe3D< T, Descriptor >::process(), plb::PlaneFdBoundaryFunctional3D< T, Descriptor, direction, orientation >::processCell(), and plb::StraightFdBoundaryFunctional2D< T, Descriptor, direction, orientation >::processCell().
| void plb::Cell< T, Descriptor >::computeDeviatoricStress | ( | Array< T, SymmetricTensor< T, Descriptor >::n > & | PiNeq | ) | const [inline] |
Compute the deviatoric stress tensor ("off-equilibrium part of Pi").
| PiNeq | stress tensor |
Referenced by plb::BoxStrainRateFromStressFunctional3D< T, Descriptor >::process(), and plb::BoxStrainRateFromStressFunctional2D< T, Descriptor >::process().
| T plb::Cell< T, Descriptor >::computeEquilibrium | ( | plint | iPop, | |
| T | rhoBar, | |||
| Array< T, Descriptor< T >::d > const & | j, | |||
| T | jSqr, | |||
| T | thetaBar = T() | |||
| ) | const [inline] |
Compute equilibrium distribution function.
Referenced by plb::IniCustomThermalEquilibriumFunctional3D< T, Descriptor, RhoVelTempFunction >::execute(), plb::IniCustomEquilibriumFunctional3D< T, Descriptor, RhoUFunction >::execute(), plb::IniCustomThermalEquilibriumFunctional2D< T, Descriptor, RhoVelThetaFunction >::execute(), plb::IniCustomEquilibriumFunctional2D< T, Descriptor, RhoUFunction >::execute(), plb::iniCellAtEquilibrium(), plb::BoxEquilibriumFunctional3D< T, Descriptor >::process(), and plb::BoxEquilibriumFunctional2D< T, Descriptor >::process().
| void plb::Cell< T, Descriptor >::computeHeatFlux | ( | Array< T, Descriptor< T >::d > & | q | ) | const [inline] |
Compute heat flux on the cell.
| q | heat flux |
| void plb::Cell< T, Descriptor >::computeMoment | ( | plint | momentId, | |
| T * | moment | |||
| ) | [inline] |
Compute user-defined moment on the cell.
| momentId | Identifier for the moment. | |
| moment | return value: computed moment. |
| T plb::Cell< T, Descriptor >::computePressure | ( | ) | const [inline] |
Compute pressure on the cell.
| T plb::Cell< T, Descriptor >::computeTemperature | ( | ) | const [inline] |
Compute Temperature on the cell.
| void plb::Cell< T, Descriptor >::computeVelocity | ( | Array< T, Descriptor< T >::d > & | u | ) | const [inline] |
Compute fluid velocity on the cell.
| u | fluid velocity |
Referenced by plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::cornerBoundaryCompletion(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::edgeBoundaryCompletion(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::edgeComputeMacroscopic(), plb::NLD_VelocityPlaneUtil3D< T, Descriptor >::extrapolateVelocity(), plb::BoxSumVelocityTemperatureFunctional3D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::BoxSumVelocityTemperatureFunctional2D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::LatticeInterpolateCoarseToFine3D< T, Descriptor >::process(), plb::LatticeInterpolateCoarseToFine2D< T, Descriptor >::process(), plb::VelocitySingleProbe3D< T, Descriptor >::process(), plb::LatticeToPassiveAdvDiff3D< T, FluidDescriptor, ScalarDescriptor >::process(), plb::BoussinesqThermalProcessor3D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::LatticeToPassiveAdvDiff2D< T, FluidDescriptor, ScalarDescriptor >::process(), plb::BoussinesqThermalProcessor2D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::OuterVelocityCornerFunctional3D< T, Descriptor, xNormal, yNormal, zNormal >::processCell(), plb::OuterVelocityEdgeFunctional3D< T, Descriptor, plane, normal1, normal2 >::processCell(), plb::PlaneFdBoundaryFunctional3D< T, Descriptor, direction, orientation >::processCell(), and plb::StraightFdBoundaryFunctional2D< T, Descriptor, direction, orientation >::processCell().
| void plb::Cell< T, Descriptor >::defineDensity | ( | T | rho | ) | [inline] |
Set particle density on the cell.
| rho | particle density |
Referenced by plb::SetCustomBoundaryDensityFunctional3D< T, Descriptor, DensityFunction >::execute(), and plb::SetCustomBoundaryDensityFunctional2D< T, Descriptor, DensityFunction >::execute().
| void plb::Cell< T, Descriptor >::defineDeviatoricStress | ( | Array< T, SymmetricTensor< T, Descriptor >::n > const & | PiNeq | ) | [inline] |
Set components of the deviatoric stress tensor on the cell.
| PiNeq | Deviatoric stress tensor |
| void plb::Cell< T, Descriptor >::defineHeatFlux | ( | Array< T, Descriptor< T >::d > const & | q | ) | [inline] |
Set heat flux on the cell.
| q | heat flux |
| void plb::Cell< T, Descriptor >::defineMoment | ( | plint | momentId, | |
| T const * | value | |||
| ) | [inline] |
Set generic moment on the cell.
| momentId | Identifier of user-defined moment. | |
| value | Value of the moment. |
| void plb::Cell< T, Descriptor >::defineTemperature | ( | T | temperature | ) | [inline] |
Set temperature on the cell.
| temperature | Temperature |
Referenced by plb::SetCustomBoundaryTemperatureFunctional2D< T, Descriptor, TemperatureFunction >::execute().
| void plb::Cell< T, Descriptor >::defineVelocity | ( | Array< T, Descriptor< T >::d > const & | u | ) | [inline] |
Set fluid velocity on the cell.
| u | fluid velocity |
Referenced by plb::SetCustomBoundaryVelocityFunctional3D< T, Descriptor, VelocityFunction >::execute(), and plb::SetCustomBoundaryVelocityFunctional2D< T, Descriptor, VelocityFunction >::execute().
| Dynamics< T, Descriptor > & plb::Cell< T, Descriptor >::getDynamics | ( | ) | [inline] |
Get a a reference to dynamics.
References PLB_PRECONDITION.
| Dynamics< T, Descriptor > const & plb::Cell< T, Descriptor >::getDynamics | ( | ) | const [inline] |
Get a reference to non-modifiable dynamics.
References PLB_PRECONDITION.
Referenced by plb::BlockLattice2D< T, Descriptor >::BlockLattice2D(), plb::BlockLattice3D< T, Descriptor >::BlockLattice3D(), plb::FineGridBoundaryDynamics< T, Descriptor >::completePopulations(), plb::multiPhaseHelpers2D< T, Descriptor >::computeRhoAndJ(), plb::flatWall::computeRhoBar(), plb::multiPhaseHelpers2D< T, Descriptor >::computeUstar(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::cornerBoundaryCompletion(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::cornerComputeMacroscopic(), plb::generalizedComprTempBoundaryTemplates< T, Descriptor >::createLinearSystem(), plb::DirichletMassConservingVelocityBoundarySolver< T, Descriptor >::createLinearSystem(), plb::generalizedComprTempBoundaryTemplates< T, Descriptor >::createLinearSystemTrLessPiNeq(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::edgeBoundaryCompletion(), plb::NLD_VelocityNeumannBoundaryDynamics3D< T, Descriptor >::edgeComputeMacroscopic(), plb::NLD_VelocityPlaneUtil3D< T, Descriptor >::extrapolateVelocity(), plb::CoarseToFineConverter2D< T, Descriptor1, Descriptor2 >::fineDynamics(), plb::RhoBarJAccess< T, Descriptor, ExternalField >::getJ(), plb::OmegaFromPiDynamics< T, Descriptor >::getOmegaFromCell(), plb::RhoBarJAccess< T, Descriptor, ExternalField >::getRhoBar(), plb::RhoBarJAccess< T, Descriptor, ExternalField >::getRhoBarJ(), plb::WrappedLocalBoundaryFunctional3D< T, Descriptor >::process(), plb::WrappedLocalBoundaryFunctional2D< T, Descriptor >::process(), plb::ShanChenSingleComponentProcessor3D< T, Descriptor >::process(), plb::ShanChenMultiComponentProcessor3D< T, Descriptor >::process(), plb::ShanChenSingleComponentProcessor2D< T, Descriptor >::process(), plb::ShanChenMultiComponentProcessor2D< T, Descriptor >::process(), plb::AssignEntireCellFunctional3D< T, Descriptor >::process(), plb::AssignEntireCellFunctional2D< T, Descriptor >::process(), plb::LatticeInterpolateCoarseToFine3D< T, Descriptor >::process(), plb::LatticeCopyFineToCoarseZerothOrder3D< T, Descriptor >::process(), plb::LatticeInterpolateCoarseToFine2D< T, Descriptor >::process(), plb::LatticeCopyFineToCoarseZerothOrder2D< T, Descriptor >::process(), plb::FreeSurfaceFadingArea3D< T, Descriptor >::process(), plb::StripeOffDensityOffsetFunctional3D< T, Descriptor >::process(), plb::StripeOffDensityOffsetFunctional2D< T, Descriptor >::process(), plb::BoxOmegaFunctional3D< T, Descriptor >::process(), plb::BoxEquilibriumFunctional3D< T, Descriptor >::process(), plb::BoxStrainRateFromStressFunctional3D< T, Descriptor >::process(), plb::BoxRhoBarFunctional3D< T, Descriptor >::process(), plb::LatticeCopyAllFunctional3D< T, Descriptor >::process(), plb::BoxSumRhoBarFunctional3D< T, Descriptor >::process(), plb::BoxOmegaFunctional2D< T, Descriptor >::process(), plb::BoxEquilibriumFunctional2D< T, Descriptor >::process(), plb::BoxStrainRateFromStressFunctional2D< T, Descriptor >::process(), plb::BoxRhoBarFunctional2D< T, Descriptor >::process(), plb::LatticeCopyAllFunctional2D< T, Descriptor >::process(), plb::BoxSumRhoBarFunctional2D< T, Descriptor >::process(), plb::AsinariPostCollide2D< T, Descriptor >::process(), plb::AsinariPostCollide3D< T, Descriptor >::process(), plb::OuterVelocityCornerFunctional3D< T, Descriptor, xNormal, yNormal, zNormal >::processCell(), plb::OuterVelocityEdgeFunctional3D< T, Descriptor, plane, normal1, normal2 >::processCell(), plb::PlaneFdBoundaryFunctional3D< T, Descriptor, direction, orientation >::processCell(), plb::OuterVelocityCornerFunctional2D< T, Descriptor, xNormal, yNormal >::processCell(), plb::StraightFdBoundaryFunctional2D< T, Descriptor, direction, orientation >::processCell(), plb::RecomposeFromFlowVariablesFunctional3D< T, Descriptor >::processGenericBlocks(), plb::RecomposeFromFlowVariablesFunctional2D< T, Descriptor >::processGenericBlocks(), plb::NoScalingEngine< T, Descriptor >::recompose(), plb::ConvectiveRescaleEngine< T, Descriptor >::recompose(), plb::NoScalingEngine< T, Descriptor >::scaleCoarseFine(), plb::ConvectiveRescaleEngine< T, Descriptor >::scaleCoarseFine(), plb::NoScalingEngine< T, Descriptor >::scaleFineCoarse(), and plb::ConvectiveRescaleEngine< T, Descriptor >::scaleFineCoarse().
| T const* plb::Cell< T, Descriptor >::getExternal | ( | plint | offset | ) | const [inline] |
Get a const pointer to an external field.
| T* plb::Cell< T, Descriptor >::getExternal | ( | plint | offset | ) | [inline] |
Get a pointer to an external field.
Referenced by plb::externalForceTemplates< T, Descriptor >::addGuoCompressibleForce(), plb::mrtTemplates< T, Descriptor >::addGuoForce(), plb::externalForceTemplates< T, Descriptor >::addGuoForce(), plb::externalForceTemplates< T, Descriptor >::addNaiveForce(), plb::IncGuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::collide(), plb::GuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::collide(), plb::ExternalVelocityIncMRTdynamics< T, Descriptor >::collide(), plb::ExternalVelocityMRTdynamics< T, Descriptor >::collide(), plb::ExternalMomentRegularizedBGKdynamics< T, Descriptor >::collide(), plb::ExternalVelocityBGKdynamics< T, Descriptor >::collide(), plb::ExternalMomentBGKdynamics< T, Descriptor >::collide(), plb::StoreRhoBarJBGKdynamics< T, Descriptor >::collide(), plb::ShanChenExternalForceBGKdynamics< T, Descriptor >::collide(), plb::ForcedEntropicDynamics< T, Descriptor >::collide(), plb::IncAsinariDynamics< T, Descriptor >::collide(), plb::AsinariDynamics< T, Descriptor >::collide(), plb::AdvectionDiffusionWithSourceRLBdynamics< T, Descriptor >::collide(), plb::AdvectionDiffusionEdgeDynamics3D< T, Descriptor, plane, normal1, normal2 >::completePopulations(), plb::AdvectionDiffusionCornerDynamics3D< T, Descriptor, xNormal, yNormal, zNormal >::completePopulations(), plb::AdvectionDiffusionCornerDynamics2D< T, Descriptor, xNormal, yNormal >::completePopulations(), plb::multiPhaseHelpers2D< T, Descriptor >::computeRhoAndJ(), plb::ExternalVelocityIncMRTdynamics< T, Descriptor >::computeRhoBarJ(), plb::ExternalVelocityMRTdynamics< T, Descriptor >::computeRhoBarJ(), plb::ExternalVelocityBGKdynamics< T, Descriptor >::computeRhoBarJ(), plb::multiPhaseHelpers2D< T, Descriptor >::computeUphys(), plb::multiPhaseHelpers2D< T, Descriptor >::computeUstar(), plb::IncGuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::computeVelocity(), plb::GuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::computeVelocity(), plb::ExternalVelocityMRTdynamics< T, Descriptor >::computeVelocity(), plb::ExternalMomentRegularizedBGKdynamics< T, Descriptor >::computeVelocity(), plb::ExternalVelocityBGKdynamics< T, Descriptor >::computeVelocity(), plb::ExternalMomentBGKdynamics< T, Descriptor >::computeVelocity(), plb::ExternalForceDynamics< T, Descriptor >::computeVelocity(), plb::advectionDiffusionMomentTemplates< T, Descriptor >::get_jEq(), plb::advectionDiffusionMomentTemplates< T, Descriptor >::get_rhoBar_jEq(), plb::advectionDiffusionMomentTemplates< T, Descriptor >::get_rhoBar_jEq_jNeq(), plb::ExternalForceAccess< T, Descriptor, numForceComponents >::getComponent(), plb::Dynamics< T, Descriptor >::getExternalField(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor2D >::getJ(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor3D >::getJ(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor2D >::getRhoBar(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor3D >::getRhoBar(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor2D >::getRhoBarJ(), plb::RhoBarJAccess< T, Descriptor, descriptors::RhoBarJdescriptor3D >::getRhoBarJ(), plb::externalForceTemplates< T, Descriptor >::heForcedBGKCollision(), plb::mrtTemplates< T, Descriptor >::mrtCollisionWithForce(), plb::ExternalOmegaDynamics< T, Descriptor >::prepareCollision(), plb::ShanChenSingleComponentProcessor3D< T, Descriptor >::process(), plb::ShanChenMultiComponentProcessor3D< T, Descriptor >::process(), plb::ShanChenSingleComponentProcessor2D< T, Descriptor >::process(), plb::ShanChenMultiComponentProcessor2D< T, Descriptor >::process(), plb::FreeSurfaceFadingArea3D< T, Descriptor >::process(), plb::ComputeSmagoViscosityFunctional3D< T, Descriptor >::process(), plb::SetExternalVectorFromTensorFieldFunctional3D< T, Descriptor, nDim >::process(), plb::SetExternalVectorFunctional3D< T, Descriptor >::process(), plb::SetExternalVectorFromTensorFieldFunctional2D< T, Descriptor, nDim >::process(), plb::SetExternalVectorFunctional2D< T, Descriptor >::process(), plb::BoussinesqThermalProcessor3D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::BoussinesqThermalProcessor2D< T, FluidDescriptor, TemperatureDescriptor >::process(), plb::AsinariPostCollide2D< T, Descriptor >::process(), plb::AsinariPostCollide3D< T, Descriptor >::process(), plb::RegularizedClosure(), plb::Dynamics< T, Descriptor >::setExternalField(), plb::externalForceTemplates< T, Descriptor >::shanChenForcedBGKCollision(), plb::multiPhaseTemplates3D< T, Descriptor >::shanChenInteraction(), and plb::multiPhaseTemplates2D< T, Descriptor >::shanChenInteraction().
| void plb::Cell< T, Descriptor >::getExternalField | ( | plint | pos, | |
| plint | size, | |||
| T * | ext | |||
| ) | const [inline] |
Access external fields through the dynamics object.
This method is similar to getExternal(): it delivers the value of the external fields. This time, those values are however computed through a virtual call to the dynamics object.
| void plb::Cell< T, Descriptor >::getPopulations | ( | Array< T, Descriptor< T >::numPop > & | f | ) | const [inline] |
Access particle populations through the dynamics object.
This method is similar to operator[]: it delivers the value of the particle populations. This time, those values are however computed through a virtual call to the dynamics object.
| Array<T,Descriptor<T>::numPop> const& plb::Cell< T, Descriptor >::getRawPopulations | ( | ) | const [inline] |
Another way to get direct, const access to the f's, as in operator[].
| Array<T,Descriptor<T>::numPop>& plb::Cell< T, Descriptor >::getRawPopulations | ( | ) | [inline] |
Another way to get direct access to the f's, as in operator[].
Referenced by plb::externalForceTemplates< T, Descriptor >::addGuoCompressibleForce(), plb::mrtTemplates< T, Descriptor >::addGuoForce(), plb::externalForceTemplates< T, Descriptor >::addGuoForce(), plb::externalForceTemplates< T, Descriptor >::addNaiveForce(), plb::Cell< T, Descriptor2 >::attributeF(), plb::asinariTemplates< T, Descriptor >::bgk_collision_stage1(), plb::asinariTemplates< T, Descriptor >::bgk_collision_stage3(), plb::dynamicsTemplates< T, Descriptor >::bgk_inc_collision(), plb::dynamicsTemplates< T, Descriptor >::bgk_ma2_collision(), plb::dynamicsTemplates< T, Descriptor >::bgk_ma2_constRho_collision(), plb::dynamicsTemplates< T, Descriptor >::bgk_ma4_collision(), plb::momentTemplates< T, Descriptor >::compute_e(), plb::momentTemplates< T, Descriptor >::compute_heat_flux(), plb::momentTemplates< T, Descriptor >::compute_P(), plb::momentTemplates< T, Descriptor >::compute_PiNeq(), plb::momentTemplates< T, Descriptor >::compute_Qneq(), plb::momentTemplates< T, Descriptor >::compute_rho(), plb::momentTemplates< T, Descriptor >::compute_rho_rhoThetaBar(), plb::momentTemplates< T, Descriptor >::compute_rho_uLb(), plb::momentTemplates< T, Descriptor >::compute_rhoBar_j_PiNeq(), plb::momentTemplates< T, Descriptor >::compute_rhoBar_thetaBar_j_PiNeq(), plb::momentTemplates< T, Descriptor >::compute_rhoBar_thetaBar_j_PiNeq_qNeq(), plb::momentTemplates< T, Descriptor >::compute_rhoEpsilon(), plb::momentTemplates< T, Descriptor >::compute_rhoThetaBar(), plb::momentTemplates< T, Descriptor >::compute_thermal_PiNeq(), plb::momentTemplates< T, Descriptor >::compute_theta(), plb::momentTemplates< T, Descriptor >::compute_uLb(), plb::mrtTemplates< T, Descriptor >::computeMoments(), plb::momentTemplates< T, Descriptor >::get_eBar(), plb::momentTemplates< T, Descriptor >::get_j(), plb::momentTemplates< T, Descriptor >::get_rhoBar(), plb::momentTemplates< T, Descriptor >::get_rhoBar_j(), plb::momentTemplates< T, Descriptor >::get_rhoBar_j_thetaBar(), plb::advectionDiffusionMomentTemplates< T, Descriptor >::get_rhoBar_jEq(), plb::advectionDiffusionMomentTemplates< T, Descriptor >::get_rhoBar_jEq_jNeq(), plb::Dynamics< T, Descriptor >::getPopulations(), plb::externalForceTemplates< T, Descriptor >::heForcedBGKCollision(), plb::mrtTemplates< T, Descriptor >::mrtCollision(), plb::mrtTemplates< T, Descriptor >::mrtCollisionWithForce(), plb::advectionDiffusionDynamicsTemplates< T, Descriptor >::no_corr_bgk_collision(), plb::advectionDiffusionDynamicsTemplates< T, Descriptor >::no_corr_rlb_collision(), plb::dynamicsTemplates< T, Descriptor >::precond_bgk_ma2_collision(), plb::mrtTemplates< T, Descriptor >::quasiIncMrtCollision(), plb::advectionDiffusionDynamicsTemplates< T, Descriptor >::regularize(), plb::dynamicsTemplates< T, Descriptor >::rlb_collision(), plb::Dynamics< T, Descriptor >::setPopulations(), and plb::externalForceTemplates< T, Descriptor >::shanChenForcedBGKCollision().
| T const& plb::Cell< T, Descriptor >::operator[] | ( | plint | iPop | ) | const [inline] |
Read-only access to distribution functions.
| iPop | index of the accessed distribution function |
| T& plb::Cell< T, Descriptor >::operator[] | ( | plint | iPop | ) | [inline] |
Read-write access to distribution functions.
| iPop | index of the accessed distribution function |
| void plb::Cell< T, Descriptor >::regularize | ( | T | rhoBar, | |
| Array< T, Descriptor< T >::d > const & | j, | |||
| T | jSqr, | |||
| Array< T, SymmetricTensor< T, Descriptor >::n > const & | PiNeq, | |||
| T | thetaBar = T() | |||
| ) | [inline] |
Re-compute particle populations from the leading moments.
| void plb::Cell< T, Descriptor >::revert | ( | ) | [inline] |
Revert ("bounce-back") the distribution functions.
| void plb::Cell< T, Descriptor >::serialize | ( | char * | data | ) | const [inline] |
| void plb::Cell< T, Descriptor >::setExternalField | ( | plint | pos, | |
| plint | size, | |||
| const T * | ext | |||
| ) | [inline] |
Define external fields through the dynamics object.
This method is similar to getExternal(): it accesses the value of the external fields. This time, those values are however accessed through a virtual call to the dynamics object.
| void plb::Cell< T, Descriptor >::setPopulations | ( | Array< T, Descriptor< T >::numPop > const & | f | ) | [inline] |
Define particle populations through the dynamics object.
This method is similar to operator[]: it modifies the value of the particle populations. This time, those values are however accessed through a virtual call to the dynamics object.
| void plb::Cell< T, Descriptor >::specifyStatisticsStatus | ( | bool | status | ) | [inline] |
Specify whether this cell does statistics measurements.
| bool plb::Cell< T, Descriptor >::takesStatistics | ( | ) | const [inline] |
Request whether this cell does statistics measurements.
Referenced by plb::ThermalBGKdynamics< T, Descriptor >::collide(), plb::SmagorinskyRegularizedDynamics< T, Descriptor >::collide(), plb::IncGuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::collide(), plb::GuoExternalForceSmagorinskyBGKdynamics< T, Descriptor >::collide(), plb::SmagorinskyBGKdynamics< T, Descriptor >::collide(), plb::ExternalVelocityIncMRTdynamics< T, Descriptor >::collide(), plb::IncMRTdynamics< T, Descriptor >::collide(), plb::ExternalVelocityMRTdynamics< T, Descriptor >::collide(), plb::MRTdynamics< T, Descriptor >::collide(), plb::PrecondBGKdynamics< T, Descriptor >::collide(), plb::ChopardDynamics< T, Descriptor >::collide(), plb::ExternalMomentRegularizedBGKdynamics< T, Descriptor >::collide(), plb::IncRegularizedBGKdynamics< T, Descriptor >::collide(), plb::RegularizedBGKdynamics< T, Descriptor >::collide(), plb::ConstRhoBGKdynamics< T, Descriptor >::collide(), plb::IncBGKdynamics< T, Descriptor >::collide(), plb::ExternalVelocityBGKdynamics< T, Descriptor >::collide(), plb::ExternalMomentBGKdynamics< T, Descriptor >::collide(), plb::StoreRhoBarJBGKdynamics< T, Descriptor >::collide(), plb::BGKdynamics< T, Descriptor >::collide(), plb::IncGuoExternalForceBGKdynamics< T, Descriptor >::collide(), plb::HeExternalForceBGKdynamics< T, Descriptor >::collide(), plb::ShanChenExternalForceBGKdynamics< T, Descriptor >::collide(), plb::GuoExternalForceBGKdynamics< T, Descriptor >::collide(), plb::NaiveExternalForceBGKdynamics< T, Descriptor >::collide(), plb::ForcedEntropicDynamics< T, Descriptor >::collide(), plb::EntropicDynamics< T, Descriptor >::collide(), plb::RegularizedBGKCarreauDynamics< T, Descriptor, N >::collide(), plb::BGKCarreauDynamics< T, Descriptor, N >::collide(), plb::MomentumExchangeBounceBack< T, Descriptor >::collide(), plb::IncAsinariDynamics< T, Descriptor >::collide(), plb::AsinariDynamics< T, Descriptor >::collide(), plb::AdvectionDiffusionBGKdynamics< T, Descriptor >::collide(), plb::AdvectionDiffusionWithSourceRLBdynamics< T, Descriptor >::collide(), plb::AdvectionDiffusionRLBdynamics< T, Descriptor >::collide(), and plb::SmagorinskyAdvectionDiffusionRLBdynamics< T, Descriptor >::collide().
| void plb::Cell< T, Descriptor >::unSerialize | ( | char const * | data | ) | [inline] |
friend class BlockLattice2D [friend] |
friend class BlockLattice3D [friend] |
1.6.3
1.6.3