waLBerla 7.3
Loading...
Searching...
No Matches
walberla::lbm::D3Q19SRT Class Reference

#include <D3Q19SRT.h>

Public Types

enum  Type { ALL = 0 , INNER = 1 , OUTER = 2 }

Public Member Functions

 D3Q19SRT (const shared_ptr< StructuredBlockStorage > &blocks, BlockDataID pdfsID_, BlockDataID densityID_, BlockDataID velocityID_, double omega, const Cell &outerWidth=Cell(1, 1, 1))
 ~D3Q19SRT ()
std::function< void(IBlock *)> streamCollide ()
std::function< void(IBlock *)> streamCollide (Type type)
std::function< void(IBlock *)> streamCollide (Type type, const cell_idx_t ghost_layers)
void streamCollide (IBlock *block)
void streamCollide (IBlock *block, const cell_idx_t ghost_layers)
void streamCollideCellInterval (IBlock *block, const CellInterval &ci)
void streamCollideInner (IBlock *block)
void streamCollideOuter (IBlock *block)
std::function< void(IBlock *)> collide ()
std::function< void(IBlock *)> collide (Type type)
std::function< void(IBlock *)> collide (Type type, const cell_idx_t ghost_layers)
void collide (IBlock *block)
void collide (IBlock *block, const cell_idx_t ghost_layers)
void collideCellInterval (IBlock *block, const CellInterval &ci)
void collideInner (IBlock *block)
void collideOuter (IBlock *block)
std::function< void(IBlock *)> stream ()
std::function< void(IBlock *)> stream (Type type)
std::function< void(IBlock *)> stream (Type type, const cell_idx_t ghost_layers)
void stream (IBlock *block)
void stream (IBlock *block, const cell_idx_t ghost_layers)
void streamCellInterval (IBlock *block, const CellInterval &ci)
void streamInner (IBlock *block)
void streamOuter (IBlock *block)
std::function< void(IBlock *)> streamOnlyNoAdvancement ()
std::function< void(IBlock *)> streamOnlyNoAdvancement (Type type)
std::function< void(IBlock *)> streamOnlyNoAdvancement (Type type, const cell_idx_t ghost_layers)
void streamOnlyNoAdvancement (IBlock *block)
void streamOnlyNoAdvancement (IBlock *block, const cell_idx_t ghost_layers)
void streamOnlyNoAdvancementCellInterval (IBlock *block, const CellInterval &ci)
void streamOnlyNoAdvancementInner (IBlock *block)
void streamOnlyNoAdvancementOuter (IBlock *block)
std::function< void(IBlock *)> initialise ()
std::function< void(IBlock *)> initialise (Type type)
std::function< void(IBlock *)> initialise (Type type, const cell_idx_t ghost_layers)
void initialise (IBlock *block)
void initialise (IBlock *block, const cell_idx_t ghost_layers)
void initialiseCellInterval (IBlock *block, const CellInterval &ci)
void initialiseInner (IBlock *block)
void initialiseOuter (IBlock *block)
std::function< void(IBlock *)> calculateMacroscopicParameters ()
std::function< void(IBlock *)> calculateMacroscopicParameters (Type type)
std::function< void(IBlock *)> calculateMacroscopicParameters (Type type, const cell_idx_t ghost_layers)
void calculateMacroscopicParameters (IBlock *block)
void calculateMacroscopicParameters (IBlock *block, const cell_idx_t ghost_layers)
void calculateMacroscopicParametersCellInterval (IBlock *block, const CellInterval &ci)
void calculateMacroscopicParametersInner (IBlock *block)
void calculateMacroscopicParametersOuter (IBlock *block)

Static Public Member Functions

static void streamCollide (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, double omega, const cell_idx_t ghost_layers=0)
static void streamCollideCellInterval (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, double omega, const CellInterval &ci)
static void collide (field::GhostLayerField< double, 19 > *pdfs, double omega, const cell_idx_t ghost_layers=0)
static void collideCellInterval (field::GhostLayerField< double, 19 > *pdfs, double omega, const CellInterval &ci)
static void stream (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, const cell_idx_t ghost_layers=0)
static void streamCellInterval (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, const CellInterval &ci)
static void streamOnlyNoAdvancement (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, const cell_idx_t ghost_layers=0)
static void streamOnlyNoAdvancementCellInterval (field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 19 > *pdfs_tmp, const CellInterval &ci)
static void initialise (field::GhostLayerField< double, 1 > *density, field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 3 > *velocity, const cell_idx_t ghost_layers=0)
static void initialiseCellInterval (field::GhostLayerField< double, 1 > *density, field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 3 > *velocity, const CellInterval &ci)
static void calculateMacroscopicParameters (field::GhostLayerField< double, 1 > *density, field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 3 > *velocity, const cell_idx_t ghost_layers=0)
static void calculateMacroscopicParametersCellInterval (field::GhostLayerField< double, 1 > *density, field::GhostLayerField< double, 19 > *pdfs, field::GhostLayerField< double, 3 > *velocity, const CellInterval &ci)

Private Attributes

shared_ptr< StructuredBlockStorageblocks_
BlockDataID pdfsID
BlockDataID densityID
BlockDataID velocityID
double omega_
std::set< field::GhostLayerField< double, 19 > *, field::SwapableCompare< field::GhostLayerField< double, 19 > * > > cache_pdfs_
Cell outerWidth_
std::vector< CellIntervallayers_
bool validInnerOuterSplit_

Member Enumeration Documentation

◆ Type

Enumerator
ALL 
INNER 
OUTER 

Constructor & Destructor Documentation

◆ D3Q19SRT()

walberla::lbm::D3Q19SRT::D3Q19SRT ( const shared_ptr< StructuredBlockStorage > & blocks,
BlockDataID pdfsID_,
BlockDataID densityID_,
BlockDataID velocityID_,
double omega,
const Cell & outerWidth = Cell(1, 1, 1) )
inline

◆ ~D3Q19SRT()

walberla::lbm::D3Q19SRT::~D3Q19SRT ( )
inline

Member Function Documentation

◆ calculateMacroscopicParameters() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( )
inline

◆ calculateMacroscopicParameters() [2/6]

void walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( field::GhostLayerField< double, 1 > * density,
field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 3 > * velocity,
const cell_idx_t ghost_layers = 0 )
static

◆ calculateMacroscopicParameters() [3/6]

void walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( IBlock * block)
inline

◆ calculateMacroscopicParameters() [4/6]

void walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ calculateMacroscopicParameters() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( Type type)
inline

◆ calculateMacroscopicParameters() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::calculateMacroscopicParameters ( Type type,
const cell_idx_t ghost_layers )
inline

◆ calculateMacroscopicParametersCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::calculateMacroscopicParametersCellInterval ( field::GhostLayerField< double, 1 > * density,
field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 3 > * velocity,
const CellInterval & ci )
static

◆ calculateMacroscopicParametersCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::calculateMacroscopicParametersCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ calculateMacroscopicParametersInner()

void walberla::lbm::D3Q19SRT::calculateMacroscopicParametersInner ( IBlock * block)
inline

◆ calculateMacroscopicParametersOuter()

void walberla::lbm::D3Q19SRT::calculateMacroscopicParametersOuter ( IBlock * block)
inline

◆ collide() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::collide ( )
inline

◆ collide() [2/6]

void walberla::lbm::D3Q19SRT::collide ( field::GhostLayerField< double, 19 > * pdfs,
double omega,
const cell_idx_t ghost_layers = 0 )
static

◆ collide() [3/6]

void walberla::lbm::D3Q19SRT::collide ( IBlock * block)
inline

◆ collide() [4/6]

void walberla::lbm::D3Q19SRT::collide ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ collide() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::collide ( Type type)
inline

◆ collide() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::collide ( Type type,
const cell_idx_t ghost_layers )
inline

◆ collideCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::collideCellInterval ( field::GhostLayerField< double, 19 > * pdfs,
double omega,
const CellInterval & ci )
static

◆ collideCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::collideCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ collideInner()

void walberla::lbm::D3Q19SRT::collideInner ( IBlock * block)
inline

◆ collideOuter()

void walberla::lbm::D3Q19SRT::collideOuter ( IBlock * block)
inline

◆ initialise() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::initialise ( )
inline

◆ initialise() [2/6]

void walberla::lbm::D3Q19SRT::initialise ( field::GhostLayerField< double, 1 > * density,
field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 3 > * velocity,
const cell_idx_t ghost_layers = 0 )
static

◆ initialise() [3/6]

void walberla::lbm::D3Q19SRT::initialise ( IBlock * block)
inline

◆ initialise() [4/6]

void walberla::lbm::D3Q19SRT::initialise ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ initialise() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::initialise ( Type type)
inline

◆ initialise() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::initialise ( Type type,
const cell_idx_t ghost_layers )
inline

◆ initialiseCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::initialiseCellInterval ( field::GhostLayerField< double, 1 > * density,
field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 3 > * velocity,
const CellInterval & ci )
static

◆ initialiseCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::initialiseCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ initialiseInner()

void walberla::lbm::D3Q19SRT::initialiseInner ( IBlock * block)
inline

◆ initialiseOuter()

void walberla::lbm::D3Q19SRT::initialiseOuter ( IBlock * block)
inline

◆ stream() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::stream ( )
inline

◆ stream() [2/6]

void walberla::lbm::D3Q19SRT::stream ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
const cell_idx_t ghost_layers = 0 )
static

◆ stream() [3/6]

void walberla::lbm::D3Q19SRT::stream ( IBlock * block)
inline

◆ stream() [4/6]

void walberla::lbm::D3Q19SRT::stream ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ stream() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::stream ( Type type)
inline

◆ stream() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::stream ( Type type,
const cell_idx_t ghost_layers )
inline

◆ streamCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::streamCellInterval ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
const CellInterval & ci )
static

◆ streamCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::streamCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ streamCollide() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamCollide ( )
inline

◆ streamCollide() [2/6]

void walberla::lbm::D3Q19SRT::streamCollide ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
double omega,
const cell_idx_t ghost_layers = 0 )
static

◆ streamCollide() [3/6]

void walberla::lbm::D3Q19SRT::streamCollide ( IBlock * block)
inline

◆ streamCollide() [4/6]

void walberla::lbm::D3Q19SRT::streamCollide ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ streamCollide() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamCollide ( Type type)
inline

◆ streamCollide() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamCollide ( Type type,
const cell_idx_t ghost_layers )
inline

◆ streamCollideCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::streamCollideCellInterval ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
double omega,
const CellInterval & ci )
static

◆ streamCollideCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::streamCollideCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ streamCollideInner()

void walberla::lbm::D3Q19SRT::streamCollideInner ( IBlock * block)
inline

◆ streamCollideOuter()

void walberla::lbm::D3Q19SRT::streamCollideOuter ( IBlock * block)
inline

◆ streamInner()

void walberla::lbm::D3Q19SRT::streamInner ( IBlock * block)
inline

◆ streamOnlyNoAdvancement() [1/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( )
inline

◆ streamOnlyNoAdvancement() [2/6]

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
const cell_idx_t ghost_layers = 0 )
static

◆ streamOnlyNoAdvancement() [3/6]

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( IBlock * block)
inline

◆ streamOnlyNoAdvancement() [4/6]

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( IBlock * block,
const cell_idx_t ghost_layers )
inline

◆ streamOnlyNoAdvancement() [5/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( Type type)
inline

◆ streamOnlyNoAdvancement() [6/6]

std::function< void(IBlock *)> walberla::lbm::D3Q19SRT::streamOnlyNoAdvancement ( Type type,
const cell_idx_t ghost_layers )
inline

◆ streamOnlyNoAdvancementCellInterval() [1/2]

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancementCellInterval ( field::GhostLayerField< double, 19 > * pdfs,
field::GhostLayerField< double, 19 > * pdfs_tmp,
const CellInterval & ci )
static

◆ streamOnlyNoAdvancementCellInterval() [2/2]

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancementCellInterval ( IBlock * block,
const CellInterval & ci )
inline

◆ streamOnlyNoAdvancementInner()

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancementInner ( IBlock * block)
inline

◆ streamOnlyNoAdvancementOuter()

void walberla::lbm::D3Q19SRT::streamOnlyNoAdvancementOuter ( IBlock * block)
inline

◆ streamOuter()

void walberla::lbm::D3Q19SRT::streamOuter ( IBlock * block)
inline

Member Data Documentation

◆ blocks_

shared_ptr< StructuredBlockStorage > walberla::lbm::D3Q19SRT::blocks_
private

◆ cache_pdfs_

std::set< field::GhostLayerField<double, 19> *, field::SwapableCompare< field::GhostLayerField<double, 19> * > > walberla::lbm::D3Q19SRT::cache_pdfs_
private

◆ densityID

BlockDataID walberla::lbm::D3Q19SRT::densityID
private

◆ layers_

std::vector<CellInterval> walberla::lbm::D3Q19SRT::layers_
private

◆ omega_

double walberla::lbm::D3Q19SRT::omega_
private

◆ outerWidth_

Cell walberla::lbm::D3Q19SRT::outerWidth_
private

◆ pdfsID

BlockDataID walberla::lbm::D3Q19SRT::pdfsID
private

◆ validInnerOuterSplit_

bool walberla::lbm::D3Q19SRT::validInnerOuterSplit_
private

◆ velocityID

BlockDataID walberla::lbm::D3Q19SRT::velocityID
private

The documentation for this class was generated from the following files:
  • /builds/administration/walberla-website/walberla/src/lbm_generated/sweep_collection/D3Q19SRT.h
  • /builds/administration/walberla-website/walberla/src/lbm_generated/sweep_collection/D3Q19SRT.cpp