walberla::lbm::collision_model::D3Q27Cumulant Class Reference

Detailed Description

Implementation of Cumulant LB collision operator [11].

Only applicable for 3D simulation with D3Q27 stencil.

Here, omega[0] is the most important omega and is treated as omega1 from literature

#include <CollisionModel.h>

Public Types

using tag = Cumulant_tag
 

Public Member Functions

 D3Q27Cumulant (const real_t _omega1, const uint_t _level=uint_t(0))
 Initializes all omegas to one except omega1. More...
 
 D3Q27Cumulant (const real_t _omega1, const real_t _omega2, const real_t _omega3, const real_t _omega4, const real_t _omega5, const real_t _omega6, const real_t _omega7, const real_t _omega8, const real_t _omega9, const real_t _omega10, const uint_t _level=uint_t(0))
 Initializes all omegas separately. More...
 
void pack (mpi::SendBuffer &buffer) const
 
void unpack (mpi::RecvBuffer &buffer)
 
void configure (IBlock &block, StructuredBlockStorage &sbs)
 Adapts only the main omega, i.e. omega0, to the "right", level-dependent parameters once "configure" is called. More...
 
real_t omega1 () const
 
real_t omega2 () const
 
real_t omega3 () const
 
real_t omega4 () const
 
real_t omega5 () const
 
real_t omega6 () const
 
real_t omega7 () const
 
real_t omega8 () const
 
real_t omega9 () const
 
real_t omega10 () const
 
real_t omega () const
 
real_t omega (const cell_idx_t, const cell_idx_t, const cell_idx_t, const Vector3< real_t > &=Vector3< real_t >(), const real_t=real_t(1)) const
 
real_t omega (uint_t idx) const
 
real_t viscosity () const
 
real_t viscosity (const uint_t _level) const
 
real_t viscosity (const cell_idx_t, const cell_idx_t, const cell_idx_t) const
 
uint_t level () const
 

Private Attributes

real_t omega_ [10]
 
real_t viscosity_
 
uint_t level_
 

Member Typedef Documentation

◆ tag

Constructor & Destructor Documentation

◆ D3Q27Cumulant() [1/2]

walberla::lbm::collision_model::D3Q27Cumulant::D3Q27Cumulant ( const real_t  _omega1,
const uint_t  _level = uint_t(0) 
)
inline

Initializes all omegas to one except omega1.

◆ D3Q27Cumulant() [2/2]

walberla::lbm::collision_model::D3Q27Cumulant::D3Q27Cumulant ( const real_t  _omega1,
const real_t  _omega2,
const real_t  _omega3,
const real_t  _omega4,
const real_t  _omega5,
const real_t  _omega6,
const real_t  _omega7,
const real_t  _omega8,
const real_t  _omega9,
const real_t  _omega10,
const uint_t  _level = uint_t(0) 
)
inline

Initializes all omegas separately.

Member Function Documentation

◆ configure()

void walberla::lbm::collision_model::D3Q27Cumulant::configure ( IBlock block,
StructuredBlockStorage sbs 
)
inline

Adapts only the main omega, i.e. omega0, to the "right", level-dependent parameters once "configure" is called.

◆ level()

uint_t walberla::lbm::collision_model::D3Q27Cumulant::level ( ) const
inline

◆ omega() [1/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega ( ) const
inline

◆ omega() [2/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega ( const  cell_idx_t,
const  cell_idx_t,
const  cell_idx_t,
const Vector3< real_t > &  = Vector3<real_t>(),
const  real_t = real_t(1) 
) const
inline

◆ omega() [3/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega ( uint_t  idx) const
inline

◆ omega1()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega1 ( ) const
inline

◆ omega10()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega10 ( ) const
inline

◆ omega2()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega2 ( ) const
inline

◆ omega3()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega3 ( ) const
inline

◆ omega4()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega4 ( ) const
inline

◆ omega5()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega5 ( ) const
inline

◆ omega6()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega6 ( ) const
inline

◆ omega7()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega7 ( ) const
inline

◆ omega8()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega8 ( ) const
inline

◆ omega9()

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega9 ( ) const
inline

◆ pack()

void walberla::lbm::collision_model::D3Q27Cumulant::pack ( mpi::SendBuffer buffer) const
inline

◆ unpack()

void walberla::lbm::collision_model::D3Q27Cumulant::unpack ( mpi::RecvBuffer buffer)
inline

◆ viscosity() [1/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::viscosity ( ) const
inline

◆ viscosity() [2/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::viscosity ( const  cell_idx_t,
const  cell_idx_t,
const  cell_idx_t 
) const
inline

◆ viscosity() [3/3]

real_t walberla::lbm::collision_model::D3Q27Cumulant::viscosity ( const uint_t  _level) const
inline

Member Data Documentation

◆ level_

uint_t walberla::lbm::collision_model::D3Q27Cumulant::level_
private

◆ omega_

real_t walberla::lbm::collision_model::D3Q27Cumulant::omega_[10]
private

◆ viscosity_

real_t walberla::lbm::collision_model::D3Q27Cumulant::viscosity_
private

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